Re: Avatica and HepPlanner

2020-08-04 Thread Michael Mior
I believe you're correct that it's not possible to select which planner to use via JDBC. However, keep in mind that the HepPlanner and VolcanoPlanner have different goals. VolcanoPlanner takes longer because it is trying to minimize the expected cost of execution. HepPlanner simply applies the give

Re: Avatica and HepPlanner

2020-08-03 Thread Enrico Olivelli
Is there some documentation or best practice doc about how using both of the two planners ? I guess you have to pass a set of rules to the HepPlanner in order to perform some simpler steps and then pass other rules to VolcanoPlanner in order to create the physical plan. What is the RelNode to pass

Re: Avatica and HepPlanner

2020-08-03 Thread Meron Avigdor
Thanks Rui and Stamatis for the clarification. I was probably misled by the documentation, as it stated that there are 2 implementations for planner rules. Thus I figured that this is configurable in some way. Also, it was mentioned that the Heuristic approach carried by the HepPlanner has less ove

Re: Avatica and HepPlanner

2020-08-03 Thread Stamatis Zampetakis
Hi Meron, The two planners are not equivalent so the comparison is not totally fair. Even if you apply the same ruleset it does not mean that you are going to obtain the same plan. The two planners are complementary to each other and they are used in different stages of the optimization process t

Re: Avatica and HepPlanner

2020-08-02 Thread Rui Wang
I tried to dig into the Calcite codebase and found there is likely no way to enable JDBC codepath: 1. There is no planner config in CalciteConnectionProperty [1]. 2. In CalcitePrepareImpl, there is only one createPlannerFactory with one createPlanner, in which VolcanoPlanner is used [2]. If my u

Avatica and HepPlanner

2020-08-02 Thread Meron Avigdor
Hi. I have implemented an extension of org.apache.calcite.jdbc.Driver, and I have the model handler extend org.apache.calcite.avatica.HandlerImpl For performance optimizations, I would like to test VolcanoPlanner vs. HepPlanner as the documentation says that the latter is faster. How is this to b