-
Notifications
You must be signed in to change notification settings - Fork 3.6k
Row wise group by on fixed width types #10706
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
Changes from all commits
7ad7f38
430c303
260577f
86d4d51
809d04c
d447857
b5f08ec
35adede
46f7bff
77e9c6b
a248992
3322394
a7d8b6c
c1105e4
f185141
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -165,6 +165,8 @@ public final class SystemSessionProperties | |
| public static final String ADAPTIVE_PARTIAL_AGGREGATION_ENABLED = "adaptive_partial_aggregation_enabled"; | ||
| public static final String ADAPTIVE_PARTIAL_AGGREGATION_MIN_ROWS = "adaptive_partial_aggregation_min_rows"; | ||
| public static final String ADAPTIVE_PARTIAL_AGGREGATION_UNIQUE_ROWS_RATIO_THRESHOLD = "adaptive_partial_aggregation_unique_rows_ratio_threshold"; | ||
| public static final String TASK_MAX_PARTIAL_AGGREGATION_MEMORY = "task_max_partial_aggregation_memory"; | ||
| public static final String USE_ENHANCED_GROUP_BY = "use_enhanced_group_by"; | ||
|
|
||
| private final List<PropertyMetadata<?>> sessionProperties; | ||
|
|
||
|
|
@@ -791,6 +793,16 @@ public SystemSessionProperties( | |
| ADAPTIVE_PARTIAL_AGGREGATION_UNIQUE_ROWS_RATIO_THRESHOLD, | ||
| "Ratio between aggregation output and input rows above which partial aggregation might be adaptively turned off", | ||
| optimizerConfig.getAdaptivePartialAggregationUniqueRowsRatioThreshold(), | ||
| false), | ||
| dataSizeProperty( | ||
| TASK_MAX_PARTIAL_AGGREGATION_MEMORY, | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This can be done in a separate PR |
||
| "Maximum size of partial aggregation results for distributed aggregations.", | ||
| taskManagerConfig.getMaxPartialAggregationMemoryUsage(), | ||
| false), | ||
| booleanProperty( | ||
| USE_ENHANCED_GROUP_BY, | ||
| "Enable optimization for aggregations", | ||
| featuresConfig.isUseEnhancedGroupBy(), | ||
| false)); | ||
| } | ||
|
|
||
|
|
@@ -1428,4 +1440,14 @@ public static double getAdaptivePartialAggregationUniqueRowsRatioThreshold(Sessi | |
| { | ||
| return session.getSystemProperty(ADAPTIVE_PARTIAL_AGGREGATION_UNIQUE_ROWS_RATIO_THRESHOLD, Double.class); | ||
| } | ||
|
|
||
| public static DataSize getMaxPartialAggregationMemoryUsage(Session session) | ||
| { | ||
| return session.getSystemProperty(TASK_MAX_PARTIAL_AGGREGATION_MEMORY, DataSize.class); | ||
| } | ||
|
|
||
| public static boolean isUseEnhancedGroupByEnabled(Session session) | ||
| { | ||
| return session.getSystemProperty(USE_ENHANCED_GROUP_BY, Boolean.class); | ||
| } | ||
| } | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -191,7 +191,7 @@ public Work<GroupByIdBlock> getGroupIds(Page page) | |
| } | ||
|
|
||
| @Override | ||
| public boolean contains(int position, Page page, int[] hashChannels) | ||
| public boolean contains(int position, Page page) | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. You can extract the first commit to a separate PR and merge it.
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ok, I'm gonna prepare the PR |
||
| { | ||
| Block block = page.getBlock(hashChannel); | ||
| if (block.isNull(position)) { | ||
|
|
||
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.
"enhanced" is not descriptive enough.