Hi, I'm a newbie to Hive, recently I've been reading the source code of the
CBO component and tried to figure out how it works. There are two questions
I'm puzzling. Your kind replies would be greatly appreciated. :)
First question: why use the HepPlanner instead of the VolcanoPlanner to
optimize the join order?
If I'm not mistaken, Hep Planner only applies the rules to calcite logical
plan but it doesn't calculate the cost of transformed plan. However, the
VolcanoPlanner calculates the cost after applying the rules and find the
the plan of best cost.

Second question: why not use HiveVolcanoPlanner and HiveCost?
In fact, Hive has implemented its own planner, HiveVolcanoPlanner and its
own cost model, HiveCost. Unfortunately, I didn't find those classes called
in CBO.

Thank you in advance
Best regards

Wuyang LI

Reply via email to