Consider row-count skew when skipping aggregate repartitioning

Đang mở
#27,268 0 bình luận 1 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
52/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
rust

Hướng nghiên cứu

Start by reading the aggregate repartitioning decision and its tests in DataFusion, then trace how preserve_file_partitions, target_partitions, and per-partition row counts affect the SinglePartitioned plan. Use the skewed four-file benchmark in the issue as a performance reference; done means skew can trigger a shuffle when its load-balancing benefit outweighs the shuffle cost, without regressing balanced inputs.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Skipping aggregate repartitioning can preserve a heavily skewed input layout, leaving most of the grouping work on one worker even when more execution partitions are available.

In Jay's benchmark on #27135, one of four files held 97% of 16M rows. With preserve_file_partitions enabled and mostly unique groups, the SinglePartitioned plan took 4.11 times as long as the shuffle plan at target_partitions=8. The two-argument date_bin showed the same behavior.

Consider per-partition row counts when deciding whether to skip aggregate repartitioning, so a shuffle can still be used when its load-balancing benefit outweighs its cost. Related to #19269, which describes the same trade-off for hash-subset partitioning.

Ngôn ngữ chính
Rust
Star
9.6k
Fork
2.6k
Merge trung bình
3 ngày 4 giờ
Pull request đã merge (30 ngày)
345

Chuẩn bị môi trường

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của apache/datafusion

Tất cả issue của apache/datafusion

Issue tương tự

Thêm issue về Rust

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.