The Dynamic programming optimizer has the following structure: It has a PlanSpaceClass object
class | DynPlanTable : public RelSPJCostBasedOpt::PlanTable Holds subplans of a particular "size" (size == number of tables joined)
| ||||
class | PlanSpaceClass Holds subplans of all sizes |
The Dynamic programming optimizer has the following structure: It has a PlanSpaceClass object. This is an array of PlanTableClass objects. Each PlanTableClass holds LogicalPlans for joins of k relations (k is fixed for each PlanTableClass, and different across PlanTableClasses). Each LogicalPlan corresponds to a logical partial join result, and leads to a number of PhysicalPlans. DynOptimizer is a sub-class of RelSPJCostBasedOpt because it differs only in the Optimize() and GeneratePlanOp() methods. Importantly, it uses the same format to specify the final plan.
this page has been generated automatically by doc++
(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de