Integrate `datafusion-distributed` with `datafusion-python`
維護者通常 1 天內回覆
還沒有人認領這個 Issue。
評估
- 難度
- 5/5
- 預估耗時
- 一週以上
- 新手友好度
- 35/100
- Issue 類型
- 功能
- 描述清晰度
- 基本清楚
- 活躍度
- 冷清
研究方向
首先檢視 pull request #1611 中嘗試進行的整合,以及現有的 datafusion-python 和 datafusion-distributed API。比較提出的三種相依性與 API 配置,接著檢查該嘗試中包含的範例與測試。當達成一致的整合方向,使 Python 能夠執行分散式查詢,同時避免不必要的 API 變更時,即視為完成。
由索引模型根據 Issue 內容生成。
描述
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
Allow running distributed queries in datafusion-python
Describe the solution you'd like
Ideally something well integrated with datafusion-python that does not require big changes or using different APIs for executing distributed queries.
datafusion-python is already a very ergonomic wrapper for using datafusion, so something maintaining that philosophy without introducing a lot of API surface would be ideal.
I'm interested specifically in using the datafusion-distributed library from within Python, and I see three mutually exclusive ways of integrating it:
- Make
datafusion-pythondepend ondatafusion-distributed, hiding some internal plumbing indatafusion-pythonand extending the current API with distributed capabilities. - Create an external crate that depends on both
datafusion-distributedanddatafusion-pythonthat ships an external API for using distributed functionality indatafusion-python - Make
datafusion-distributeddepend ondatafusion-python, providing a set of functions and classes that decoratedatafusion-pythonwith distributed capabilities
I'm not sure which approach aligns best with this project's philosophy, the naive intuition from someone unfamiliar with this project is that the first option has greater chances of providing a well integrated experience, and it's probably the easiest to implement due to the fact that internal plumbing in the Rust world can be hidden in this project.
I actually tried this here:
And the fact that with only ~1K LOC, examples and tests included, can yield a functional integration, makes me think that it might actually not be a bad idea. But again, I don't know what I don't know, so would very gladly accept feedback and suggestions on something different.
- 主要語言
- Python
- 星號
- 606
- 分支
- 176
- 平均合併
- 1 天 7 小時
- 30 天內合併 PR
- 14
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 有 Pull Request 範本
- 沒有貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
apache/datafusion-python 的其他 Issue
-
bug
難度 2/5 1-3 小時 新手友好度 75/100
apache/datafusion-python#1765 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 78/100
apache/datafusion-python#1760 ·
維護者通常 1 天內回覆
-
enhancement
難度 2/5 1-3 小時 新手友好度 70/100
apache/datafusion-python#1757 ·
維護者通常 1 天內回覆
-
documentation
難度 2/5 1-3 小時 新手友好度 72/100
apache/datafusion-python#1726 ·
維護者通常 1 天內回覆
-
難度 2/5 半天 新手友好度 88/100
apache/datafusion-python#1691 ·
維護者通常 1 天內回覆
查看 apache/datafusion-python 的全部 Issue
相似的 Issue
-
upstream update
難度 2/5 1-3 小時 新手友好度 75/100
conan-io/conan-center-index#31098 ·
維護者通常 2 天內回覆
-
難度 2/5 1-3 小時 新手友好度 78/100
john-kurkowski/tldextract#382 ·
-
comp/tools duplicate P2 sweeper:risk-compatibility tool/mcp type/bug
難度 1/5 1 小時以內 新手友好度 88/100
NousResearch/hermes-agent#132042 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 78/100
deepset-ai/haystack#13092 ·
維護者通常 1 天內回覆
-
難度 1/5 1-3 小時 新手友好度 85/100
feder-cr/invisible_playwright_mcp#1408 ·
維護者通常 1 天內回覆