rwozniak71
Programmer
Hi Folks,
I'm working with a client that uses a third party tool (Hyperion EIS) to generate "drill-through" queries against a very large Oracle table (approx. 150,000,000 rows). We have a partition and an index defined on the table to help query performance.
For the most part, performance is very good-our queries typically come back in a matter of seconds. Except we noticed that if there are more than 13 tables joined in the query the optimizer does not use the drill-through table's index and insead does a full table scan. Consequently, response time goes up to 15-20 min. per query.
We cannot alter the SQL generated by the third party tool. Our schema is defined in a snowflake and that cannot be altered. What we need to know is if there is a hard limit on the number of joins in Oracle so we can take this information to the client and present workarounds.
Insight appreciated,
Rob
I'm working with a client that uses a third party tool (Hyperion EIS) to generate "drill-through" queries against a very large Oracle table (approx. 150,000,000 rows). We have a partition and an index defined on the table to help query performance.
For the most part, performance is very good-our queries typically come back in a matter of seconds. Except we noticed that if there are more than 13 tables joined in the query the optimizer does not use the drill-through table's index and insead does a full table scan. Consequently, response time goes up to 15-20 min. per query.
We cannot alter the SQL generated by the third party tool. Our schema is defined in a snowflake and that cannot be altered. What we need to know is if there is a hard limit on the number of joins in Oracle so we can take this information to the client and present workarounds.
Insight appreciated,
Rob