RelationalDBDesign
prev next prev next
  Course navigation
 
Lesson 6
Objective
The SQL optimizer modes
Difference between the rule-based and cost-based optimizers
    The rule-based optimizer
The first Oracle optimizer-- the part of Oracle that attempts to determine the most efficient way to execute your SQL code--was developed in the mid-1980s when Oracle was still a small and struggling database vendor.
At that time, the best way to develop an execution plan was to look at the structure of the tables and indexes and develop an execution plan based upon the structure of the database. This process was known as the rule-based optimizer.
The cost-based optimizer
To remedy these types of issues, Oracle began development of a cost-based optimizer. The cost-based optimizer relies on the data dictionary being populated with information about the nature and distribution of data (called statistics). Rather than relying on generic rules, the cost-based optimizer will make access decisions based upon the true nature of the data.
We will now take a closer look at the rule-based optimizer.
  Course navigation