[
https://issues.apache.org/jira/browse/SOLR-8593?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15709550#comment-15709550
]
Kevin Risden commented on SOLR-8593:
------------------------------------
[~joel.bernstein] - Not sure I understand the need for a having stream...
To quote [~julianhyde]:
{quote}
In fact, Calcite will convert query into a Scan -> Filter -> Aggregate ->
Filter -> Project logical plan (the first Filter is the WHERE clause, the
second Filter is the HAVING clause),
{quote}
Since a having clause is really just a filter on an aggregate, I'm not sure
what we could really gain from pushing it down much further. The
Avatica/Calcite JDBC implementation supports the having clause if we don't
optimize for it.
> Integrate Apache Calcite into the SQLHandler
> --------------------------------------------
>
> Key: SOLR-8593
> URL: https://issues.apache.org/jira/browse/SOLR-8593
> Project: Solr
> Issue Type: Improvement
> Reporter: Joel Bernstein
> Assignee: Joel Bernstein
> Attachments: SOLR-8593.patch
>
>
> The Presto SQL Parser was perfect for phase one of the SQLHandler. It was
> nicely split off from the larger Presto project and it did everything that
> was needed for the initial implementation.
> Phase two of the SQL work though will require an optimizer. Here is where
> Apache Calcite comes into play. It has a battle tested cost based optimizer
> and has been integrated into Apache Drill and Hive.
> This work can begin in trunk following the 6.0 release. The final query plans
> will continue to be translated to Streaming API objects (TupleStreams), so
> continued work on the JDBC driver should plug in nicely with the Calcite work.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]