Hi Julian:
Thank you very much for your reply.
My question is this:
In the calcite code,there is a LogicalWindow. When to use it?
I have another question, for window syntax, RANGE numericOrIntervalExpression
{ PRECEDING | FOLLOWING }. How to understand flowing for stream? Can you give
me a example?
Thanks in advance!
-----邮件原件-----
发件人: Julian Hyde [mailto:[email protected]]
发送时间: 2016年5月28日 8:51
收件人: [email protected]
主题: Re: Some questions
HepPlanner is a rule-based planner that applies a small set of rules in a
particular order to every relational expression in a tree. It is generally used
for quick once-over rewrites.
VolcanoPlanner is a cost-based planner that applies all rules, generates new
relational expressions, and then keeps on firing the rules until nothing else
matches. It is easier to use (you don't have to specify which order the rules
will be applied) but it can be expensive, especially on complex queries,
because it is exhaustive.
I recommend using VolcanoPlanner at first, then use a hybrid strategy when you
need to deal with complex queries (e.g. queries with more than about 6 joins).
I don't understand your question 2. Can you give an example of a query and the
plan it produces?
Julian
On Thu, May 26, 2016 at 11:23 PM, Zhangrucong <[email protected]> wrote:
> Hello everyone:
>
> Now I am learning calcite streamSQL. I have two questions. Anyone can help
> me. Thanks in advance.
>
> The questions are following:
>
> 1、 what is the difference between HepPlanner and VolcanoPlanner? For
> streamSQL ,which one is better? Are there have some materials to introduce
> two models?
>
> 2、 In the logic plan tree, window is combined with aggregate node or
> expression node. In which case, there is a lonely window node in logic plan?