Yes, Oracle does use indexes with RULE and/or COST. The only difference is how it selects them and what would be selected. In versions higher then 9i OPTIMIZER_DYNAMIC_SAMPLING
Main Topics
Browse All TopicsIn oracle 9i or 10g,Is it worth reindexing tables when the optimizer mode is set to rule based?
Along with your opinion, if you can lead me to some oracle documentation that will be a plus.
Thank You
-PRaveen
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
Yes, Oracle does use indexes with RULE and/or COST. The only difference is how it selects them and what would be selected. In versions higher then 9i OPTIMIZER_DYNAMIC_SAMPLING
Yes, if indexes are rebuilt online, that will slow down other operations in the database at the time.
Whether rebuilding indexes is worthwhile or doesn't depend much on whether you use the rule-based or cost-based optimizer. It depends on the kind of activity that has happened to the records in the table. If any of these activities have happened, especially if they involve a significant percentage of the records in the index, then rebuilding the index(es) may help:
1. Updates that change the value of the indexed columns(s)
2. Deletes
3. Inserts of records that are *NOT* in the same order as the indexed column(s)
Remember, rebuilding "online" is an Enterprise Edition feature.
I recommend you measure performance before and after rebuilding your index. Then let us know if it helped and decide whether to ever rebuild them again. :) 99% of the time I'll bet it is not the problem. Indexes are meant to be scaleable and not be rebuilt except in very specific cases (bitmap indexes after a large dml for example). I virtually never rebuild a B-Tree index.
To: praveen_katta
We haven't heard from you now in a few days. Have you tested your performance, then rebuilt an index or two and tested again?
You had also asked originally for some Oracle documentation on this subject, but Oracle documentation typically includes the "how to" do things. It rarely includes a discussion of why to do a particular task, or of when to do one or another.
Business Accounts
Answer for Membership
by: paquicubaPosted on 2009-10-16 at 10:55:04ID: 25591713
Rule-based? That thing is deprecated and no longer supported by Oracle. Who is trying to secure a job at your compnay dude?
The rule-based optimizer doesn't use statistics about the index, so it doesn't know how many rows will be scanned, but if you feel that the index needs to be re-built because you have had massive updates | inserts | deletes, then go ahead and do it to improve performance.