[WIP] Optimization of GROUP BY with respect to table sorting key.#9113
[WIP] Optimization of GROUP BY with respect to table sorting key.#9113CurtizJ merged 40 commits intoClickHouse:masterfrom
Conversation
|
What is the status of this one? Does it postponed? (I have some stuff that will require this) |
|
The task is active, worst case estimate is May 2020, but @dimarub2000 should target for April. |
001f119 to
6cee50a
Compare
…n_order_optimization
…n_order_optimization
|
It's OK that performance tests have failed, master doesn't have my setting yet |
By the way, if you want to run a performance comparison with master in CI, you can add just a setting that does nothing as a separate PR, and then compare to that. Or maybe I should just make it a warning... |
Ок, good to know, btw results can be seen in |
|
Waiting for some additional tests, because now |
…00/ClickHouse into group_by_in_order_optimization
|
Performance tests Ok. |
|
00746_sql_fuzzy - fixed in master. |
row_begin was wrong, and before this patch aggregator processing
{row_end, row_end} range, in other words, zero range.
Fixes: ClickHouse#9113 (cc @dimarub2000)
v2: add static_cast to fix UBSan
Signed-off-by: Azat Khuzhin <[email protected]>
I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en
Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
Optimization of GROUP BY with respect to table sorting key.
Detailed description / Documentation draft:
If a table is sorted by some key, we can effectively read data in order. If GROUP BY expression contains at least prefix of sorting key or injective functions it can be performed more efficiently: in-between result of aggreagtion can be finalized and sent to client when a new key is read from table.