You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pinot.apache.org by GitBox <gi...@apache.org> on 2019/05/17 21:46:48 UTC

[GitHub] [incubator-pinot] kishoreg opened a new issue #4219: Support SQL in Pinot.

kishoreg opened a new issue #4219: Support SQL in Pinot.
URL: https://github.com/apache/incubator-pinot/issues/4219
 
 
   While existing PQL is almost similar to SQL, it has some nuances that make it difficult for users to query pinot.  Our eventual goal should be able to support most of the sql features on a single table (excluding joins). This will allow tools such as superset, grafana, etc to be work seamlessly on top of Pinot.
   
   Currently, adding a new feature requires us to change pql grammar, broker request, and the execution layer. This means there is a high turn around time for each feature.
   
   The right end state would be - "change only the execution layer to add new features  - grammar and broker request should be complete and flexible".  I am proposing we move to calcite and leverage the full sql support and parser that comes with Calcite.
   
   Proposal
   
   - Create PinotQuery IDL(thrift)- this should represent the pql/sql. Additional information such as debugoptions should not be part of this IDL
   - Embed PinotQuery inside BrokerRequest.
   - AST Parser to convert PQL to PinotQuery
   
   For backward compatibility, populate old objects in BrokerRequest (selection aggregation groupby etc) from pinot query.
   
   
   - Change the execution layer to use BrokerRequest.pinotQuery
   - Introduce another endpoint that takes calcite sql and converts it into brokerrequest
   
   ![pql 2 calcite](https://user-images.githubusercontent.com/850791/56936302-8aac2480-6aab-11e9-9d83-d88e42289ffe.png)
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org