Repository navigation
Conversation
…, off by default)
…threshold while its groups do not recur
…ting buckets of unique groups
…e its input holds them
|
run benchmark clickbench_partitioned baseline: |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing codex/in-progress-column-buckets (b964422) to f9df89e diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "f9df89e2b1077deaae9be106682c9f1e4d0d61d2"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing codex/in-progress-column-buckets (b964422) to f9df89e diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "f9df89e2b1077deaae9be106682c9f1e4d0d61d2"CPU Details (lscpu)Details
Resource Usageclickbench_partitioned — base (merge-base)
clickbench_partitioned — branch
File an issue against this benchmark runner |
|
run benchmark clickbench_partitioned baseline: |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing codex/in-progress-column-buckets (b964422) to f9df89e diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "f9df89e2b1077deaae9be106682c9f1e4d0d61d2"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing codex/in-progress-column-buckets (b964422) to f9df89e diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "f9df89e2b1077deaae9be106682c9f1e4d0d61d2"CPU Details (lscpu)Details
Resource Usageclickbench_partitioned — base (merge-base)
clickbench_partitioned — branch
File an issue against this benchmark runner |
|
run benchmark clickbench_partitioned baseline: |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing codex/in-progress-column-buckets (313a3a9) to f9df89e diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "f9df89e2b1077deaae9be106682c9f1e4d0d61d2"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing codex/in-progress-column-buckets (313a3a9) to f9df89e diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "f9df89e2b1077deaae9be106682c9f1e4d0d61d2"CPU Details (lscpu)Details
Resource Usageclickbench_partitioned — base (merge-base)
clickbench_partitioned — branch
File an issue against this benchmark runner |
|
run benchmark clickbench_partitioned baseline: |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing codex/in-progress-column-buckets (085c221) to 313a3a9 diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "313a3a9590c30cbca9afd37c70ca4c8bdd49f10d"Results will be posted here when complete File an issue against this benchmark runner |
|
run benchmark clickbench_partitioned baseline: |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing codex/in-progress-column-buckets (085c221) to 313a3a9 diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "313a3a9590c30cbca9afd37c70ca4c8bdd49f10d"CPU Details (lscpu)Details
Resource Usageclickbench_partitioned — base (merge-base)
clickbench_partitioned — branch
File an issue against this benchmark runner |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing codex/in-progress-column-buckets (cf6819d) to 313a3a9 diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "313a3a9590c30cbca9afd37c70ca4c8bdd49f10d"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing codex/in-progress-column-buckets (cf6819d) to 313a3a9 diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "313a3a9590c30cbca9afd37c70ca4c8bdd49f10d"CPU Details (lscpu)Details
Resource Usageclickbench_partitioned — base (merge-base)
clickbench_partitioned — branch
File an issue against this benchmark runner |
|
run benchmark clickbench_partitioned baseline: |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing codex/in-progress-column-buckets (33aad7a) to cf6819d diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "cf6819d7ef43de4da3eda8ff75118fa51ddc6c01"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing codex/in-progress-column-buckets (33aad7a) to cf6819d diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "cf6819d7ef43de4da3eda8ff75118fa51ddc6c01"CPU Details (lscpu)Details
Resource Usageclickbench_partitioned — base (merge-base)
clickbench_partitioned — branch
File an issue against this benchmark runner |
|
run benchmark clickbench_partitioned baseline: |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing codex/in-progress-column-buckets (df55545) to cf6819d diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "cf6819d7ef43de4da3eda8ff75118fa51ddc6c01"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing codex/in-progress-column-buckets (df55545) to cf6819d diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "cf6819d7ef43de4da3eda8ff75118fa51ddc6c01"CPU Details (lscpu)Details
Resource Usageclickbench_partitioned — base (merge-base)
clickbench_partitioned — branch
File an issue against this benchmark runner |
|
run benchmark clickbench_partitioned baseline: |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing codex/in-progress-column-buckets (efd384f) to cf6819d diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "cf6819d7ef43de4da3eda8ff75118fa51ddc6c01"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing codex/in-progress-column-buckets (efd384f) to cf6819d diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "cf6819d7ef43de4da3eda8ff75118fa51ddc6c01"CPU Details (lscpu)Details
Resource Usageclickbench_partitioned — base (merge-base)
clickbench_partitioned — branch
File an issue against this benchmark runner |
|
run benchmark clickbench_partitioned baseline: |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing codex/in-progress-column-buckets (efd384f) to cf6819d diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "cf6819d7ef43de4da3eda8ff75118fa51ddc6c01"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing codex/in-progress-column-buckets (efd384f) to cf6819d diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD: "262144"
baseline:
ref: "cf6819d7ef43de4da3eda8ff75118fa51ddc6c01"CPU Details (lscpu)Details
Resource Usageclickbench_partitioned — base (merge-base)
clickbench_partitioned — branch
File an issue against this benchmark runner |
|
Benchmark for this request failed before finishing (Kubernetes reason: Benchmarks requested: Runner log (last 40 lines)Kubernetes messageFile an issue against this benchmark runner |
|
Benchmark for this request failed before finishing (Kubernetes reason: Benchmarks requested: Runner log (last 40 lines)Kubernetes messageFile an issue against this benchmark runner |
Which issue does this PR close?
Part of #20773. This experimental follow-up is based on #25724; it does not close the issue.
Rationale for this change
This POC combines column-wise bucket coalescing with a smaller Partial aggregation working set. Earlier ECS measurements found that a 2 MiB allocated-byte threshold reduced Partial lookup costs, while repeated string-buffer growth consumed part of that benefit. Reserving the next payload buffer from the previous flush reduced that overhead.
What changes are included in this PR?
cd9284f884d05e329acb293e1e95353ce555315e.The intended tradeoff is more downstream rows for cheaper Partial aggregation. Earlier ECS measurements for Q33/Q34 showed approximately 41%/42% less cumulative Partial time, 30% more Partial output rows, and 7.8%/6.9% lower query latency. These are cross-round experimental measurements, not benchmark-bot results or a guarantee for other queries.
What is the testing strategy for this PR?
Validation for
efd384f9f:cargo fmt --allandcargo fmt --all --checkpassed.cargo clippy --all-targets --all-features -- -D warningspassed on ECS.cargo check -p datafusion-physical-planpassed.cargo test -p datafusion-physical-expr-common --lib binary_view_map: 14 passed.cargo test -p datafusion-physical-plan --lib aggregates::: 282 passed.The requested
clickbench_partitionedcomparison uses baselinecf6819d7ef43de4da3eda8ff75118fa51ddc6c01. Both sides use 32 Final buckets, the same gather/scatter kernel, no intermediate compaction, andDATAFUSION_EXECUTION_HASH_AGGREGATE_BUCKET_THRESHOLD=262144. This isolates the new Partial policy from the previous Final fanout experiments.Are there any user-facing changes?
Default behavior remains unchanged because experimental bucketed aggregation is disabled by default. When enabled, eligible Partial tables now flush by allocated bytes even if keys recur. This may increase downstream work; the full partitioned ClickBench run is intended to measure that tradeoff. This remains a POC with an Arrow fork dependency.