I took a quick look. RelBuilder is great and I like it.  It makes much
easier to create RelNode in Calcite.

One question:  Can RelBuilder allow to specify RelFactories directly, in
stead of doing that in Context instance?



On Thu, Jun 4, 2015 at 1:54 PM, Julian Hyde <[email protected]> wrote:

> Creating an expression in Calcite's relational algebra has always been too
> complicated. The constructors for the various RelNode sub-classes have lots
> of parameters, and you have to worry about row-types, trait-sets, making
> field names unique, and so forth. And if you want to generate a different
> sub-class of RelNode, say a HiveProject rather than a LogicalProject, you
> have to do it all again.
>
> I set out to change this in
> https://issues.apache.org/jira/browse/CALCITE-748, with a new RelBuilder
> class.
>
> It's looking good -- a 5 line SQL statement becomes not much more than 5
> lines of Java in many cases.
>
> I've deployed a preview of the manual to
> http://calcite.hydromatic.net/docs/algebra.html, and javadoc to
>
> http://calcite.hydromatic.net/apidocs/org/apache/calcite/tools/RelBuilder.html
> .
> The code is in my 748-builder branch,
> https://github.com/julianhyde/incubator-calcite/tree/748-builder.
>
> I'd love to hear what you think of it, and what it's potentially good for.
>
> Julian
>

Reply via email to