[ https://issues.apache.org/jira/browse/SOLR-8593?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15378665#comment-15378665 ]
Joel Bernstein commented on SOLR-8593: -------------------------------------- The CoGroup operator is interesting. Solr's Streaming Expressions provide some similar operations (https://cwiki.apache.org/confluence/display/solr/Streaming+Expressions). CoGroup seems similar to a rollup() function wrapped around a join in Streaming Exrpressions. Psuedo-code: {code} rollup(sum(x), over="y", innerJoin(on="a=b", search(...), search(...))) {code) Our basic strategy is to build up a Streaming Expressions that implements Calcites relational algebra. We've done this already with the Presto parser, but without joins. Looking forward to diving deeper into Calcite. > 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 > > 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: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org