Lately we noticed that our Discoverer reports runs very slow. What is Query Prediction in Discoverer? “Discoverer includes functionality to predict the time required to retrieve the information in a Discoverer query. The query prediction is the elapsed time while the following message appeared on the bottom left of Discoverer Desktop window: "Determining query time estimate". For each report we tested, we found query prediction runs 30%-50% (!!!) from the report’s total run time. Next phase was to start a SQL trace on Discoverer session to see what actually happens when running a Discoverer report. This is the relevant section from the SQL Trace: SELECT QS_ID, QS_COST, QS_ACT_CPU_TIME, This table records query prediction statistics while running Discoverer reports. There is no logic by estimating query run time longer than the report’s query itself… Since the query prediction functionality is important to our users we avoid from disable this functionality (by setting the QPPEnable to 0). I tried to find information about purging the EUL5_QPP_STATS and I found this: “How to delete old query prediction statistics” in Oracle® Business Intelligence Discoverer Administration Guide 10g Release 2 (10.1.2.1) There is a SQL script at [ORACLE_ HOME]\discoverer\util\eulstdel.sql – that deletes all query prediction statistics that were created before a specified date. Great! I had no choice but rebuild the EUL5_QPP_ENABLE table (by export, drop table and import). After recreation of EUL5_QPP_STATS table I ran a Discoverer report again and query prediction takes insignificant time, almost nothing… :-) This is from the trace I took after: SELECT QS_ID, QS_COST, QS_ACT_CPU_TIME, I checked this issue on Discoverer Desktop 10g (10.1.2.2) but it is relevant to the web tools (Discoverer viewer and Discoverer Plus) as well, since the query prediction functionality exist in these tools like in the client version. You are welcome to leave a comment. Aviad |
Monday, January 21, 2008
Oracle Discoverer Query Prediction functionality and Performance
Posted by Aviad at 5:18 PM
Labels: Discoverer, Performance, Troubleshooting
Subscribe to:
Post Comments (Atom)


4 comments:
Hi, Aviad.
You got a performance problem with EUL5_QPP_STATS table, however you had to "rebuild the EUL5_QPP_ENABLE table".
What is a connection?
Hi Anonymous...
After deleting the rows from EUL5_QPP_STATS table, I noticed the explain plan for the query prediction sql was not improved and had the same cost like before.
I'm not sure what exactly happened, maybe the segment size cause this behaviour or somthing specific for 9i.
In 10g I found it's not necessary to rebuild the table.
Anyway, if you can see improvement for the query prediction sql without rebuilding the table, perfect! Don't rebuild it.
Regards
Hi Aviad,
Is there any way to disable this feature on discoverer desktop so that the query prediction does not take place?
Hi,
Yes, There is a way to disable query prediction.
Follow this:
1. Start -> run -> regedit
2. HKEY_CURRENT_USER -> Software -> ORACLE -> Discoverer 10 -> Database
3. Update key "QPPEnable" to -> 0
Aviad
Post a Comment