zenoyang opened a new issue, #10083: URL: https://github.com/apache/incubator-doris/issues/10083
### Search before asking - [X] I had searched in the [issues](https://github.com/apache/incubator-doris/issues?q=is%3Aissue) and found no similar issues. ### Description In our production environment, for 100 million data volumes and cardinality of Bitmaps is ten million, for precise deduplication queries, the bottleneck is always in the Streaming Aggregate stage, which is single-threaded, so we hope to improve the parallelism of aggregation. For aggregated tables, when the number of key columns by group by is small, it is an easy way to push down aggregates to the Scanner thread because Scanners are executed in parallel. **Performance Testing** 1. production data: Test env: 5 BE tbl has 80 million rows of data, 100 Bucket ```sql select k1, count(distinct device_id) from tbl1 group by k1; ``` before: 312.2 s after aggregation pushdown: 71.48 s 2. data comes from the SSB dataset: Test environment: 3 BE lineorder_bitmap_v1 has 10 Bucket Test sql: ```sql select LO_ORDERPRIORITY, LO_SHIPMODE, count(distinct LO_ORDERKEY) from lineorder_bitmap_v1 group by LO_ORDERPRIORITY, LO_SHIPMODE; ``` before: 76.69 s after: 23.88s ### Solution _No response_ ### Are you willing to submit PR? - [X] Yes I am willing to submit a PR! ### Code of Conduct - [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
