SQL/MX Comparison Guide for SQL/MP Users

HP NonStop SQL/MX Comparison Guide for SQL/MP Users523735-003
5-1
5 Optimizer and Executor
Both the compiler and the executor for NonStop SQL/MX are different from NonStop
SQL/MP. Some highlights of the new compiler include:
Rule and cost-based optimizer
Optimization of complex relational expressions
Use of histogram statistics
Extensible cost model
Some highlights of the rewritten executor include:
Data-flow, scheduler-driven task model
Increased parallelism
Optimizer
The optimizer is the stage in the SQL compiler that optimizes the query and
determines the optimal query execution plan. Many design differences in NonStop
SQL/MX occur before optimization. During the normalization phase, these tasks are
performed:
Subquery transformation into joins
Constant folding (for example, b < 0 * c becomes b < 0)
Predicates pushed down or pulled up
Other unconditional transformations (for example, left joins transformed to inner
joins)
This table highlights the differences between the SQL/MP and SQL/MX optimizers: