数据处理AI 资源
DataFusion Distributed:为 Apache DataFusion 提供分布式查询执行能力的库
datafusion-contrib/datafusion-distributed · Library for bringing distributed capabilities to Apache DataFusion
ELI5:它是什么,解决什么问题
DataFusion Distributed 是一个 Rust 库,为 Apache DataFusion 扩展分布式查询执行能力。它并非开箱即用的分布式引擎,而是用于构建分布式引擎的工具包,分布式计划仍是一个普通的 DataFusion 物理计划,只是增加了一些在机器之间传输 Arrow 数据的节点,因此可以以较小改动把已有的单机 DataFusion 系统升级为分布式执行。项目对网络栈不做限定,不区分 coordinator 与 worker,任意节点都可充当协调者或工作节点,并为常见的基于文件的数据源提供默认配置。
核心能力与快速开始
★ 141 · Rust
- 能做什么
- 为 Apache DataFusion 增加分布式查询执行能力;分布式计划即普通 DataFusion 物理计划加少量跨机传输 Arrow 数据的节点;支持在会话中启用分布式 planner、指定 worker 位置并运行 worker gRPC 服务;对网络栈保持中立,用户自行提供承载 DataFusion 节点的基础设施;无 coordinator-worker 之分,任意节点都可作为协调者或 worker;可为自定义 ExecutionPlan 提供分布式支持并收集运行时指标;对常见的基于文件的数据源提供默认配置。README 给出 TPC-H 与 TPC-DS 基准对比数据,称其在相同集群条件下优于对比引擎。
- 适用场景
- 将现有单机 Apache DataFusion 系统改造为可跨集群执行;基于该库构建自有分布式查询引擎;在 S3 等对象存储上的 Parquet 文件数据源场景下进行分布式查询;需要在保持 DataFusion 现有 API 与物理计划模型的前提下扩展分布式能力;对分布式查询执行性能做基准评估。
- 项目形态
- 开发框架
- 部署方式
- 未说明;README 提到需要启用分布式 planner、指定 worker 地址并运行 worker gRPC 服务器,基准测试使用 12 台 AWS EC2 c5n.2xlarge 实例组成的集群,但未给出正式部署要求。
- 主要依赖
- Rust 生态;使用 Apache DataFusion;需要自行提供承载节点的网络基础设施。其余未说明。
- 使用限制
- 不是开箱即用的分布式引擎,而是用于构建分布式引擎的库;对网络栈不设主张,需用户自行解决节点托管;基准测试结果基于特定 AWS 集群(12 台 c5n.2xlarge、S3 上的 Parquet)与特定查询集,未必适用于其他环境;项目声明不属于 Apache DataFusion 官方项目。许可证为 Apache-2.0,其余使用与商业条款未说明。
- 许可证
- Apache-2.0
- 最近推送
- 2026-10-02 23:41
资料检查:2026-10-03 07:00 · 卡片整理:2026-10-03 07:00
卡片由 AI 根据仓库资料整理,未进行安装或运行验证 · 本次更新未完成,保留上次成功内容
讨论 0
登录后参与讨论,阅读资讯无需注册。
还没有评论,来分享第一个看法。