-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[opt](iceberg)Add a new appearance to display the pushDown count
#37046
Conversation
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
run buildall |
TPC-H: Total hot run time: 39917 ms
|
TPC-DS: Total hot run time: 175038 ms
|
ClickBench: Total hot run time: 30.27 s
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be used for all external table
@@ -1800,6 +1802,10 @@ public void setEnableLeftZigZag(boolean enableLeftZigZag) { | |||
description = {"强制使用jni方式读取外表", "Force the use of jni mode to read external table"}) | |||
private boolean forceJniScanner = false; | |||
|
|||
@VariableMgr.VarAttr(name = OPTIMIZE_PUSH_DOWN_COUNT, | |||
description = {"对`COUNT`使用下推进行优化", "Optimize `COUNT` using pushdown"}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
description = {"对`COUNT`使用下推进行优化", "Optimize `COUNT` using pushdown"}) | |
description = {"对外表启用 count(*) 下推优化", "enable count(*) pushdown optimization for external table"}) |
@@ -1800,6 +1802,10 @@ public void setEnableLeftZigZag(boolean enableLeftZigZag) { | |||
description = {"强制使用jni方式读取外表", "Force the use of jni mode to read external table"}) | |||
private boolean forceJniScanner = false; | |||
|
|||
@VariableMgr.VarAttr(name = OPTIMIZE_PUSH_DOWN_COUNT, | |||
description = {"对`COUNT`使用下推进行优化", "Optimize `COUNT` using pushdown"}) | |||
private boolean optimizePushDownCount = true; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
private boolean optimizePushDownCount = true; | |
private boolean enableCountPushDownForExternalTable = true; |
@@ -584,6 +584,8 @@ public class SessionVariable implements Serializable, Writable { | |||
|
|||
public static final String FORCE_JNI_SCANNER = "force_jni_scanner"; | |||
|
|||
public static final String OPTIMIZE_PUSH_DOWN_COUNT = "optimize_push_down_count"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
public static final String OPTIMIZE_PUSH_DOWN_COUNT = "optimize_push_down_count"; | |
public static final String ENABLE_COUNT_PUSH_DOWN_FOR_EXTERNAL_TABLE = "enable_count_push_down_for_external_table"; |
run buildall |
TPC-H: Total hot run time: 39741 ms
|
TPC-DS: Total hot run time: 170556 ms
|
ClickBench: Total hot run time: 31.22 s
|
d5d4796
to
e3e0a31
Compare
run buildall |
TPC-H: Total hot run time: 39825 ms
|
TPC-DS: Total hot run time: 174416 ms
|
ClickBench: Total hot run time: 31.01 s
|
run feut |
e3e0a31
to
bbf8e3b
Compare
run buildall |
TPC-H: Total hot run time: 40072 ms
|
TPC-DS: Total hot run time: 172313 ms
|
ClickBench: Total hot run time: 30.77 s
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
PR approved by at least one committer and no changes requested. |
PR approved by anyone and no changes requested. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
bbf8e3b
to
db6737f
Compare
run buildall |
TPC-H: Total hot run time: 39766 ms
|
TPC-DS: Total hot run time: 174489 ms
|
ClickBench: Total hot run time: 30.33 s
|
…pache#37046) ## Proposed changes 1. When the count can be pushed down, the specific data will be displayed later. ``` | pushdown agg=COUNT (1) | ``` 2. Add a session variable `enable_count_push_down_for_external_table ` to control whether a pushdown count operation is required. Default is `true`; ``` mysql> show variables like 'enable_count_push_down_for_external_table'; +-------------------------------------------+-------+---------------+---------+ | Variable_name | Value | Default_Value | Changed | +-------------------------------------------+-------+---------------+---------+ | enable_count_push_down_for_external_table | false | true | 1 | +-------------------------------------------+-------+---------------+---------+ 1 row in set (0.02 sec) ```
…37046) ## Proposed changes 1. When the count can be pushed down, the specific data will be displayed later. ``` | pushdown agg=COUNT (1) | ``` 2. Add a session variable `enable_count_push_down_for_external_table ` to control whether a pushdown count operation is required. Default is `true`; ``` mysql> show variables like 'enable_count_push_down_for_external_table'; +-------------------------------------------+-------+---------------+---------+ | Variable_name | Value | Default_Value | Changed | +-------------------------------------------+-------+---------------+---------+ | enable_count_push_down_for_external_table | false | true | 1 | +-------------------------------------------+-------+---------------+---------+ 1 row in set (0.02 sec) ```
Proposed changes
enable_count_push_down_for_external_table
to control whether a pushdown count operation is required. Default istrue
;