If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

 
Go Back  dBforums > Database Server Software > DB2 > DPF Design Help

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 06-29-10, 15:25
rajinbits rajinbits is offline
Registered User
 
Join Date: Nov 2007
Posts: 26
DPF Design Help

Hi,

One of my application is currently using EE DB2 database Version 9.1 . We are are now planning to enhance this database wherein the database size is expected to grow to 5 TB. Consequently we are planning to move to a DPF system.

Existing Schema in short

The scehma is mostly use for reporting purpose. We have 3-4 major tables(all with 80-90 columns) with volume around 400-500 million(as of now) for each table. All the reports are driven by account which is present in all the tables.But we need to join all these tables with PRODUCT table(on a bigint id) which is a master table having all our products with all the corresponding reference data.

Question:
We are planning to use the account as the distribution key for 3 main tables.
How can we distribute the product table, which does not have account so that the joins are collacted ?
Product table is around 4 million and is updated(inserted and updated) on a daily basis. We tried replicated MQT but it did not work due to heavy inserts and updates. We also thought of denormalizing the main table and including the product attributes over there, but it was not feasible due to size and the frequent update and inserts.

Any help is appreciated.

Thanks,
Rajesh
Reply With Quote
  #2 (permalink)  
Old 06-29-10, 16:27
Marcus_A Marcus_A is offline
Registered User
 
Join Date: May 2003
Location: USA
Posts: 5,198
Did you try creating the MQT as a subset of the real table, with only the columns you frequently need for reporting? Also, careful selection of the index may allow "index only" access to the table for most reports.

I would put the MQT table in a separate bufferpool from the other tables to help out on the frequent insert and update activity.
__________________
M. A. Feldman
IBM Certified DBA on DB2 for Linux, UNIX, and Windows
IBM Certified DBA on DB2 for z/OS and OS/390
Reply With Quote
  #3 (permalink)  
Old 06-30-10, 13:53
dav1mo dav1mo is offline
Registered User
 
Join Date: Dec 2007
Location: Richmond, VA
Posts: 782
Hi Rajesh,
What is the problem you are trying to fix? Slow response in application/report? We might be able to help you better if you gave some background info on what you are doing/what is wrong/etc... The partitioning sounds good based on the size of your 'account' tables, though you seem to be concentrating on this rather small table.
Reply With Quote
  #4 (permalink)  
Old 06-30-10, 13:56
Marcus_A Marcus_A is offline
Registered User
 
Join Date: May 2003
Location: USA
Posts: 5,198
Quote:
Originally Posted by dav1mo View Post
Hi Rajesh,
What is the problem you are trying to fix? Slow response in application/report? We might be able to help you better if you gave some background info on what you are doing/what is wrong/etc... The partitioning sounds good based on the size of your 'account' tables, though you seem to be concentrating on this rather small table.
It appears that he is trying to elimiate cross-partitions to the product table, which is 4 million rows. He has already tried to distribute the product table via MQT to all partitions, but is having performance problems with the level of inserts and updates to the product table.
__________________
M. A. Feldman
IBM Certified DBA on DB2 for Linux, UNIX, and Windows
IBM Certified DBA on DB2 for z/OS and OS/390
Reply With Quote
  #5 (permalink)  
Old 06-30-10, 13:59
Marcus_A Marcus_A is offline
Registered User
 
Join Date: May 2003
Location: USA
Posts: 5,198
One other suggestion: If the level of inserts and updates to the product table is causing lock contention on the user queries, then have the queries run using WITH UR at the end to eliminate any locking problems. Also, make sure that LOCKLIST is sufficiently large enough and MAXLOCKS 30 or less (I would not recommend STMM be used to control LOCKLIST).
__________________
M. A. Feldman
IBM Certified DBA on DB2 for Linux, UNIX, and Windows
IBM Certified DBA on DB2 for z/OS and OS/390
Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On