Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Reuse Parquet OffsetIndex objects and direct-plan decisions

Đã đóng
#328 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

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
25/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
cpp

Hướng nghiên cứu

Bắt đầu bằng cách kiểm tra issue #314, được nêu là phần triển khai cho công việc này. Xác thực các giá trị đã chọn và thời gian tồn tại của index trên các lựa chọn sparse và dense, bao gồm các giới hạn lưu giữ row-group, sau đó so sánh format benchmark với main về độ trễ và số byte lưu trữ mà không giả định có sự tăng tốc nói chung.

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

Mô tả

Problem

Selective Parquet reads repeat CPU work within one file reader: Arrow 17 reparses OffsetIndex on each lookup, page planning scans page locations for sparse row selections, and decoding rebuilds a direct-read plan just to determine whether compressed row coordinates apply.

The byte cache in #272 reduces repeated I/O but does not eliminate this parsing and planning work.

Proposed improvement
  • Reuse parsed OffsetIndex objects within each retained row-group reader.
  • Seek across page gaps for sparse selections and visit each selected page once.
  • Reuse the direct-plan decision during decoding.

Preserve index validation, dictionary handling, per-leaf row coordinates and missing-index fallbacks. Keep parsed objects reader-local without introducing a shared data cache or public option.

Validation

Check selected values and index lifetimes, including sparse/dense selections and the row-group retention limit. Compare against main with the format benchmark, reporting latency and storage bytes without assuming a general speedup.

Implementation: #314.

Ngôn ngữ chính
C++
Star
65
Fork
29
Merge trung bình
2 ngày 4 giờ
Pull request đã merge (30 ngày)
78

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

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/paimon-cpp

Tất cả issue của apache/paimon-cpp

Issue tương tự

Thêm issue về C++

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.