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 > Predicting Database Slowness

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 09-14-09, 23:13
Tony Tsang Tony Tsang is offline
Registered User
 
Join Date: Sep 2009
Posts: 3
Predicting Database Slowness

OLTP system running DB2 9.5 on AIX system works fine currently however there is no archiving setup hence I'm curious about the following
1. Will it take longer response time in future to fetch data from the table because of index tree growth ?

2. Any method available to 'forecast' database slowness before it happens ?
Like if index read efficiency is coming down from 5 to 20 or index level has grown from 5 levels to 6 levels ?

3. Is there is any ideal or desired database size expected to support an OLTP db supporting around 3000 users

Thank You
Tony
Reply With Quote
  #2 (permalink)  
Old 09-15-09, 02:50
stolze stolze is offline
Registered User
 
Join Date: Jan 2007
Location: Jena, Germany
Posts: 2,662
Why don't you put your archive data into a separate table? That way, you don't have any performance impact on the operational data.

Regarding the ideal database size, it really depends on the hardware you have. Running 3000 users on a thinkpad is a stupid idea, of course, if those users are more active. If each of the users runs one transaction per day, such a thinkpad may be mostly idle.
__________________
Knut Stolze
IBM DB2 Analytics Accelerator
IBM Germany Research & Development
Reply With Quote
  #3 (permalink)  
Old 09-15-09, 03:40
Marcus_A Marcus_A is offline
Registered User
 
Join Date: May 2003
Location: USA
Posts: 5,196
Quote:
Originally Posted by Tony Tsang
OLTP system running DB2 9.5 on AIX system works fine currently however there is no archiving setup hence I'm curious about the following
1. Will it take longer response time in future to fetch data from the table because of index tree growth ?

2. Any method available to 'forecast' database slowness before it happens ?
Like if index read efficiency is coming down from 5 to 20 or index level has grown from 5 levels to 6 levels ?

3. Is there is any ideal or desired database size expected to support an OLTP db supporting around 3000 users

Thank You
Tony
Probably the biggest factor is going to be buffer pool hit ratio for OLTP systems. Do some research on how to calculate this, and how to raise the bufferpool hit ratio for the data and indexes, but never use more memory than actually exists on the server (real memory, not virtual).

Through in a few reorgs when appropriate (in-place if you don't have a maintenance window) and you should be in decent shape.
__________________
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
  #4 (permalink)  
Old 09-15-09, 08:56
Tony Tsang Tony Tsang is offline
Registered User
 
Join Date: Sep 2009
Posts: 3
Stolze: Unfortunately we do not have a archiving mechanism yet.

Marcus: Do you mean periodic calculation of BP Hit ratio would provide more insight to forecast db slowness rather than index read ratio(rows read/rows selected) and synchronous read percentage as suggested by Scott Hayes in DBI Blogs ?
Reply With Quote
  #5 (permalink)  
Old 09-15-09, 12:06
Marcus_A Marcus_A is offline
Registered User
 
Join Date: May 2003
Location: USA
Posts: 5,196
Quote:
Originally Posted by Tony Tsang
Stolze: Unfortunately we do not have a archiving mechanism yet.

Marcus: Do you mean periodic calculation of BP Hit ratio would provide more insight to forecast db slowness rather than index read ratio(rows read/rows selected) and synchronous read percentage as suggested by Scott Hayes in DBI Blogs ?
I am not necessarily saying that. But I don't really track the index read ratio either at the database level, becasue I prefer to analyze every SQL statement for elapsed time using a snapshot for dynamic SQL, or an explain for static SQL. If I take care of each statement and make sure it is optimized, then the database totals will take care of themselves.
__________________
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
  #6 (permalink)  
Old 09-15-09, 12:19
Tony Tsang Tony Tsang is offline
Registered User
 
Join Date: Sep 2009
Posts: 3
Thanks.

From db cache I can get the list of Dynamic SQLs. Any method available to get static SQL cache in DB2 9.1 ?

Thanks
Tony
Reply With Quote
  #7 (permalink)  
Old 09-15-09, 13:22
n_i n_i is offline
:-)
 
Join Date: Jun 2003
Location: Toronto, Canada
Posts: 4,449
Quote:
Originally Posted by Tony Tsang
Any method available to get static SQL cache in DB2 9.1 ?
You can use db2pd -static to obtain the list of packages in the cache and db2expln to analyze these packages.
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