Complex Query Plan Execution
Focus
- How to schedule a query with several operations optimally
Ideas (Which is better?)
- Right-deep plans
- Left-deep plans
- Bushy plans
Notes:
Right & left are about the same if using bit vector filtering.
Bit vector filtering: use an array initialized by hashing on the 1st input & use it to find elements in the 2nd input that don’t match the 1st. -> you only end up with elements that affect the operation (see pg. 82).
Bushy has 6 or 7 problems that need to be addressed before it can be optimal.