Database Reference
In-Depth Information
Execution Engine
Scheduling
Query Analysis
FPGA Engines
Scheduler
Compiler
Object Cache
Optimizer
Execution Engine
FPGA Engines
System Catalog
Execution Engine
FPGA Engines
Disk
Enclosures
S-Blades
Network
Fabric
Host
Figure 4-4 Query orchestration in Netezza
Netezza's AMPP architecture. The optimizer makes use of all MPP nodes in
the system to gather detailed up-to-date statistics on every database table
that is referenced in a query. A majority of these metrics are captured during
query execution with very low overhead, yielding just-in-time statistics that
are specific to each query. The optimizer uses these statistics to transform
queries before processing begins, which helps to minimize disk I/O and data
movement. Typical transformation operations performed by the optimizer
include: determining the correct join order, rewriting expressions, and removing
redundancy from SQL operations.
The appliance nature of Netezza, with integrated components that are
able to communicate with each other, enables its cost-based optimizer to
more accurately measure disk, processing, and network costs associated with
an operation. By relying on accurate data, instead of heuristics alone, the opti-
mizer is able to generate query plans that utilize all components with extreme
efficiency. One example of optimizer intelligence is the ability to determine the
best join order in a complex join. For example, when joining multiple small
Search WWH ::




Custom Search