Quote:
|
Originally Posted by Ravi_R
Tks Marcus,
It is a mixed system mainly OLTP but some reporting is done too .However 10 containers was the recommended value given by peoplesoft.Is there a way to monitor the effect of changing the prefetchsize on these tablespaces ? How can i measure the improvement in prefetch /IO by altering the prefetchsize or implementing db2_parallel_io.
|
Prefetch will kill you unless you are doing a table scan. Prefetch starts reading multiple pages ahead of what you actually ask for and puts them in the buffer pool. If you never need the prefetch data (becasue you are reteiving only a small number of rows via an index), then you just flushed a lot of other needed pages out of the buffer pool.
In a mixed system, you need to determine whether you are going to optimize for the OLTP transactions or optimize for the decision support queries (it is difficult to optimize for both unless they each have their own tables). If you only have a few tables that need a complete table scan, then put them in a different tablespace and different buffer pool than everything else.
In order to monitor how much prefetch is helping you for decision support queries that do table scans (this is pretty much the only scenario where it could help) then you would need to run queries that read the entire table when no one else is using the system, otherwise there are too many other variables and applications contending for the same system resources to know which prefectch configuration is the best.
If you really think that Peoplesoft is so smart about how to configure DB2, then ask them what to do. But based on their advice as you have described it (and assuming it really is primarily OLTP), I am not sure I believe anything they say.