Apache Airflow 是一个用代码编写、调度和监控工作流的平台,工作流以 Python 定义为 Dag。
pathwaycom/pathway
基于 Rust 引擎的 Python ETL 框架,用于流处理、实时分析、LLM 管道和 RAG。
- Star
- 62,089
- Fork
- 1,683
- 未关闭 Issue
- 37
- 最近提交
- 前天
这是什么?
Pathway 是一个 Python ETL 框架,用于构建同时处理批量数据和流式数据的管道。同一份代码可以用于本地开发、CI 测试、批处理任务、流数据回放和实时处理,无需分别维护批处理和流处理两套逻辑。
Python API 底层由基于 Differential Dataflow 的 Rust 引擎执行,支持增量计算。管道数据保存在内存中,可以使用多线程、多进程或分布式方式运行,并能通过 Docker 和 Kubernetes 部署。连接器支持 Kafka、PostgreSQL、Google Drive、SharePoint 等数据源,另外通过 Airbyte 连接器可接入 300 多种数据源。
项目还提供 LLM 扩展模块,包含模型封装、解析器、向量化工具和文本切分器,并内置内存中的实时向量索引,同时集成 LangChain 和 LlamaIndex,便于基于实时更新的文档构建 RAG 应用。
核心功能
- 01同一套 Python 代码统一处理批量和流式数据。
- 02支持 Kafka、PostgreSQL、Google Drive、SharePoint 等连接器,并可通过 Airbyte 接入 300 多种数据源。
- 03提供 join、窗口和排序等有状态转换,也可直接调用任意 Python 函数。
- 04支持状态持久化,管道在更新或崩溃后可以恢复运行。
- 05Rust 引擎支持多线程、多进程和分布式计算。
- 06内置 LLM 工具,包括内存实时向量索引,并集成 LangChain 和 LlamaIndex。
适用场景
- 从 Kafka 或数据库中实时抽取、转换和加载数据。
- 构建带告警功能的事件驱动管道,例如日志监控。
- 构建实时 RAG 应用,文档变化时同步更新向量索引。
- 将已有的批处理任务迁移为流处理,而无需重写代码。
快速上手
- 1
使用 pip 从 PyPI 安装 Pathway
pip install -U pathway - 2
将示例代码保存为 main.py 并用 Pathway 运行器运行
pathway spawn python main.py
使用前须知
- 仅支持 macOS 和 Linux,其他系统需要使用虚拟机。
- 需要 Python 3.10 或更高版本。
- 元数据中许可证显示为 NOASSERTION,README 徽章指向 BSL,商业使用前请核实许可条款。
- 精确一次(exactly-once)一致性仅企业版提供,免费版提供至少一次(at-least-once)。
标签
常见问题
- pathway 是什么?
- 基于 Rust 引擎的 Python ETL 框架,用于流处理、实时分析、LLM 管道和 RAG。 Pathway 是一个 Python ETL 框架,用于构建同时处理批量数据和流式数据的管道。同一份代码可以用于本地开发、CI 测试、批处理任务、流数据回放和实时处理,无需分别维护批处理和流处理两套逻辑。
- pathway 可以免费使用吗?用的什么许可证?
- pathway 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
- pathway 还在维护吗?
- 活跃维护中。pathway 最近一次提交是在 2026年10月20日。
- pathway 适合用来做什么?
- 从 Kafka 或数据库中实时抽取、转换和加载数据。 构建带告警功能的事件驱动管道,例如日志监控。 构建实时 RAG 应用,文档变化时同步更新向量索引。 将已有的批处理任务迁移为流处理,而无需重写代码。
- pathway 怎么安装和运行?
- 使用 pip 从 PyPI 安装 Pathway: pip install -U pathway 将示例代码保存为 main.py 并用 Pathway 运行器运行: pathway spawn python main.py
- 在哪里获取 pathway?
- 源代码和安装说明在 GitHub 上:https://github.com/pathwaycom/pathway
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
基于 LLM 的 Python 数据处理与 ETL 系统,用自然语言描述操作,对大量结构化与非结构化数据做 map-reduce 处理。
无需编码的 RAG 服务,将文档目录索引到 8 种向量数据库中,文件变更后答案实时同步。
用 Rust 编写的极速 Python 代码检查与格式化工具,内置 900 多条规则。
用 Rust 编写的 Python 3 解释器,不依赖 CPython 绑定,支持 WebAssembly 与嵌入 Rust 应用。
一款面向 Python 的复古游戏引擎,用于制作像素风格的小型游戏。