Orchest:不写 YAML 的数据管道工具

一款名为 Orchest 的开源工具,在 GitHub 上获得了 4,139 颗 Star:

正文顶部截图

README区域截图

Orchest 是数据管道构建工具。核心思路是让用户用熟悉的编程语言写数据处理代码,通过可视化界面把代码串成管道,省去配置框架和学习 YAML 的时间。

Orchest 支持 Python、R 和 Julia。用户在 Notebook 或脚本中编写代码,通过拖拽在界面上连接各步骤,形成数据处理流程。每个步骤可独立运行,也可作为整体管道执行。这对数据科学家较友好,可以沿用已有编程习惯,不需要学习新的配置语法。

Orchest 适合的数据处理场景包括实验性分析、模型训练管道、数据转换流程等。用户不需要预先设计复杂架构,可以从单个脚本开始,逐步扩展为多步骤管道。

功能包括:

可视化构建管道。用户通过 UI 拖拽节点、连接边线,定义数据流向。界面展示每个步骤的输入输出关系,方便排查问题。

Notebook 与脚本混用。既可以在 Jupyter Notebook 中开发,也可以使用脚本文件,两种模式在同一项目中并存。用户可在 Notebook 中探索数据、验证逻辑,确认后再转为脚本纳入管道。

灵活运行。支持运行管道的任意子集,方便调试单个步骤。也支持设置定时任务,按周期自动执行管道。

环境隔离。每个项目可定义独立的依赖环境,基于容器技术确保在不同机器上运行结果一致。团队成员共享环境配置,减少因依赖差异导致的问题。

服务管理。可在管道运行期间启动辅助服务,如数据库、消息队列等,这些服务在管道执行周期内保持可用,步骤之间可通过这些服务交换数据。

项目版本控制。内置 git 集成,方便追踪代码变更。整个项目以 git 仓库形式组织,便于协作。

Orchest 提供了示例项目,涵盖回归模型训练、SQLAlchemy 数据库连接、dbt 集成、PySpark 使用等场景,新用户可从这些示例入手,理解项目的使用方式。

安装方面,用户可选择本地部署或直接使用托管服务 Orchest Cloud。本地安装需要容器运行环境,具体步骤参考官方文档。

需要说明,Orchest 团队已宣布不再积极维护该项目。公告中提到,团队未能找到让工作流编排器商业化的路径,因此建议有生产环境需求的用户转向 Apache Airflow 等方案。

Orchest 的设计思路仍有参考价值。它尝试降低数据工程门槛,让数据科学家用写代码的方式完成管道搭建,而非学习复杂的编排语法。对于想理解可视化数据管道设计,或需要轻量级原型验证的场景,Orchest 的代码和文档依然可用。

项目采用混合许可证:orchest-sdk 和 orchest-cli 使用 Apache 2.0,其余部分使用 AGPL 3.0。开发者可基于 SDK 进行二次开发,或参考其架构设计。

AGPL 3.0。开发者可基于 SDK 进行二次开发,或参考其架构设计。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐