Surface foreign ExecutionPlan metrics via FFI (FFI_MetricsSet)
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Ít trao đổi
- Lĩnh vực
- backend-api-design, data-engineering
Hướng nghiên cứu
Bắt đầu bằng cách kiểm tra crate upstream datafusion-ffi sau v54 để tìm FFI_MetricsSet và mối liên hệ của nó với FFI_ExecutionPlan::metrics. Sau đó, kiểm tra Python MetricsSet và các mẫu *Exportable from_pycapsule hiện có. Công việc hoàn tất khi các metrics của execution plan bên ngoài có thể đi qua ranh giới FFI và được expose thông qua Python bindings.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Background
PyMetricsSet currently wraps the native DataFusion MetricsSet only. When a foreign ExecutionPlan is imported through FFI_ExecutionPlan (for example a plan implemented in a separate Rust extension, Go, or another Python module), there is no FFI round-trip for metrics: plan.metrics() on such a foreign plan returns whatever the underlying implementation happens to populate, with no standard way for the foreign side to surface DataFusion-style metrics back across the boundary.
Why deferred
There is no FFI_MetricsSet struct in the upstream datafusion-ffi crate at v54 to wrap; this is a pipeline-symmetry concern rather than a feature gap with a clear upstream target. No open user requests at the time of audit. Filed for tracking so that when upstream lands FFI metrics support, the Python bindings can pick it up immediately. The accepted path is probably: upstream adds FFI_MetricsSet and threads it through FFI_ExecutionPlan::metrics; the Python bindings then expose a from_pycapsule helper on MetricsSet analogous to the other *Exportable patterns.
- Ngôn ngữ chính
- Python
- Star
- 605
- Fork
- 176
- Merge trung bình
- 1 ngày 23 giờ
- Pull request đã merge (30 ngày)
- 8
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của apache/datafusion-python
-
documentation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
apache/datafusion-python#1726 ·
-
Độ khó 2/5 Nửa ngày Mức phù hợp với người mới 88/100
apache/datafusion-python#1691 ·
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
apache/datafusion-python#1644 ·
-
enhancement
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 30/100
apache/datafusion-python#1737 ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 76/100
apache/datafusion-python#1735 · 1 bình luận ·
Tất cả issue của apache/datafusion-python
Issue tương tự
-
Add: hunch Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
AbdelStark/awesome-typesafe#104 ·
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
DiamondLightSource/dodal#2211 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
openml/openml-python#1749 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
sipyourdrink-ltd/bernstein#6191 ·