kishoreg commented on issue #4219: Support SQL in Pinot.
URL: 
https://github.com/apache/incubator-pinot/issues/4219#issuecomment-493645566
 
 
   @Jackie-Jiang yes, I would love to do this and this was how I started. The 
problem was that brokerrequest was very widely used in the code and it was very 
hard to replace it with pinot query in one shot.
   
   That's why we put pinotquery inside brokerrequest which kind of makes sense 
if you think request consisting of query, debugoptions etc. 
   
   One key goal was to never have something like this in the query execution 
code.
   ```if(brokerrequest) {
   //use broker request
   } else {
     //pinot query
   }```
   
   If we keep old fields (selection, aggInfoList etc) and pinotQuery in the 
brokerRequest, we can migrate to pinotQuery in steps - operator by operator. 
For e.g. solve only the selection operator then transform operator and so on.
   
   I agree with you only doubling the size of brokerRequest until we migrate 
the execution layer to use brokerrequest.pinotquery at which point we can 
delete the references to Selection, etc. I don't think this will add 
significant overhead in terms of network or cpu usage. We have the validation 
flag to test this easily. 
   
   Final Structure of BrokerRequest will be as follows 
   ```BrokerRequest {
     PinotQuery pinotQuery;
     bool enableTrace;
     Map<String,String> requestOptions;
   }```
   
   
   
   

----------------------------------------------------------------
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:
us...@infra.apache.org


With regards,
Apache Git Services

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

Reply via email to