Jackie-Jiang opened a new pull request, #11607:
URL: https://github.com/apache/pinot/pull/11607

   Currently multi-stage aggregation/group-by requires both materialized rows 
and data block. This means we always need to do conversion whether getting the 
transferrable block locally (with materialized rows) or remotely (with data 
block).
   
   This PR:
   - Enhanced `RowBasedBlockValSet` to support `null`
   - Added `FilteredRowBasedBlockValSet` to support filtered aggregation from 
materialized rows
   - Enhanced `DataBlockExtractUtils`:
     - Correctly handle `null` with filter
     - Avoid per row extract to reduce the overhead
   - Enhanced `AggregateOperator`, `MultistageAggregationExecutor`, 
`MultistageGroupByExecutor`:
     - Use only materialized rows or data block and avoid unnecessary row 
conversion
     - Avoid per row column index lookup
     - Avoid extracting filtered rows multiple times when it can be shared


-- 
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.

To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


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

Reply via email to