meehange
asked on
Planning/Implementation Advice
Hey all,
I Am about to set up a DB2 server and wanted to get a critique of what I plan to do. Please feel free to rip this to shreds
Server:
Win2k Server
IBM Netfinity
Xeon 2.4GHz
2.5GB RAM
IBM ServRAID 5i
RAID-5 (6 disks, stripesize 16k)
HDD 4.7 avg seek, 10,000 rotation TR 320
Database:
The database will be combined OLTP/Queries (Its a financial services system for a small/mid sized company, 70 users using a Java/Browser based front end). Reporting will also be done off this server (mostly out of hours).
I will have 2 massive fact tables which make up about 1/3 of overall data.
I have turned on DB2_STRIPED_CONTAINERS and set DB2_PARALLEL_IO=*
The area I am mainly interested in planning at the moment is physical layout (altho I welcome tips on any relevent area).
Here are my plans:
Put most tables in the userspace1, assigning most of the bufferpool to that space.
Create a DMS tablespace for the 2 big tables, giving eact one 3 containers of about 3GB each.
I intend to make the extent=16 and the prefetch=64.
I am using, does multiple containers give any benefit? Taking RAID into account etc. am I making the right chioce for tablespace/extent/prefetch sizes?
Any feedback on what I have so far? Am I totally deluded?
Cheers in advance.
I Am about to set up a DB2 server and wanted to get a critique of what I plan to do. Please feel free to rip this to shreds
Server:
Win2k Server
IBM Netfinity
Xeon 2.4GHz
2.5GB RAM
IBM ServRAID 5i
RAID-5 (6 disks, stripesize 16k)
HDD 4.7 avg seek, 10,000 rotation TR 320
Database:
The database will be combined OLTP/Queries (Its a financial services system for a small/mid sized company, 70 users using a Java/Browser based front end). Reporting will also be done off this server (mostly out of hours).
I will have 2 massive fact tables which make up about 1/3 of overall data.
I have turned on DB2_STRIPED_CONTAINERS and set DB2_PARALLEL_IO=*
The area I am mainly interested in planning at the moment is physical layout (altho I welcome tips on any relevent area).
Here are my plans:
Put most tables in the userspace1, assigning most of the bufferpool to that space.
Create a DMS tablespace for the 2 big tables, giving eact one 3 containers of about 3GB each.
I intend to make the extent=16 and the prefetch=64.
I am using, does multiple containers give any benefit? Taking RAID into account etc. am I making the right chioce for tablespace/extent/prefetch
Any feedback on what I have so far? Am I totally deluded?
Cheers in advance.
what version of db2 are you going to use?
is this an ee setup or an eee setup?
what growth rate do you anticipate for the large tables?
how many indexes do you plan to have on the large tables?
are the users connecting via internet? intranet?
is this an ee setup or an eee setup?
what growth rate do you anticipate for the large tables?
how many indexes do you plan to have on the large tables?
are the users connecting via internet? intranet?
ASKER
>what version of db2 are you going to use?
Currently 7.2 moving to 8.1 this week
>is this an ee setup or an eee setup?
Workgroup Server Edition
>what growth rate do you anticipate for the large tables?
Hard to say, I'd guess the whole thing will grow by about 1GB per year
>how many indexes do you plan to have on the large tables?
Will depend on tuning efforts once the application is finished
>are the users connecting via internet? intranet?
intranet
Currently 7.2 moving to 8.1 this week
>is this an ee setup or an eee setup?
Workgroup Server Edition
>what growth rate do you anticipate for the large tables?
Hard to say, I'd guess the whole thing will grow by about 1GB per year
>how many indexes do you plan to have on the large tables?
Will depend on tuning efforts once the application is finished
>are the users connecting via internet? intranet?
intranet
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Thanks for the info, I found out this week that we'll be moving to Blades using SAN. So I guess I'll be doing some more research on that now :P
-Raid 5 (or 0+1 when possible because it's really faster) for all logical volumes (+hotswap, hotplug and a spare disk in the bay)
-The db Log files dedicated on a volume (many writes rare read)
-Application + System + db Temp on a volume (some big chunk read&write)
-Index on a small very fast volume (Lowest seek time)
-Data on a large volume (Highest bandwidth)
==> If I can not afford that many volumes :
-step 1 : share db Logs with application-system-temp
-step 2 : share Data and Index
With DB2, the fact that tablespaces are linked to memory cache (bufferpools) make it slightly different because you may imagine having as many tablespaces as pagesize you use...but in fact you don't really care.
Try having prefetch/extent adjusted on your physical page size (means use a medium multiple of your 16K stripesize).
==> Next step is : Monitor your db using the excellent freeware below instead of those terrible db2 "tools"
http://members.tripod.com/chuzhoi_files/
Hope this helps.