开源数据搬运平台,用于 ELT 管道,把 API、数据库和文件中的数据同步到数据仓库、数据湖和 AI 应用。
- Star
- 4,025
- Fork
- 165
- 未关闭 Issue
- 28
- 最近提交
- 2小时前
这是什么?
ingestr 是一款命令行工具,通过命令行参数即可把数据从源端搬到目标端,不需要编写自定义脚本。你只需指定源和目标的连接地址及表名,工具会负责连接与传输,把数据写入目标库。
它支持 append、merge 和 delete+insert 三种增量加载方式,重复运行时可以让目标表保持同步,而不必每次全量重载。支持的来源和目的地很多,包括 PostgreSQL、MySQL、BigQuery、Snowflake、DuckDB、SQL Server、MongoDB、本地 CSV/JSON/Parquet 文件,以及 HubSpot、Stripe 等 SaaS 平台。
项目可通过安装脚本获取单个二进制文件,也可以通过 pip 安装。pip 包还提供 Python SDK,可将行数据、生成器或 DataFrame 交给 CLI 处理。项目采用 Functional Source License 授权,禁止用其提供与之竞争的商业数据摄取服务。
核心功能
- 01通过一条 CLI 命令在数据库与文件之间复制表数据。
- 02支持 append、merge 和 delete+insert 三种增量加载模式。
- 03可连接多种数据库、数据仓库和 SaaS API。
- 04支持通过 shell 脚本或 pip 安装,并提供 Python SDK。
- 05部分数据库(如 MySQL、PostgreSQL、MongoDB)支持变更数据捕获(CDC)。
适用场景
- 把业务数据库表同步到 BigQuery、Snowflake 等数据仓库。
- 将仓库中的表导出到本地 DuckDB 或 Parquet 文件中做分析。
- 定时把 HubSpot、Stripe 等 SaaS 数据拉取到 SQL 数据库中。
- 在两个数据库之间迁移数据,无需编写自定义 ETL 代码。
快速上手
- 1
运行 README 中的官方安装脚本
- 2
或使用 pip 安装
pip install ingestr - 3
使用你自己的源和目标 URI 运行快速入门中的 ingest 命令
ingestr ingest --source-uri 'postgresql://admin:admin@localhost:8837/web?sslmode=disable' --source-table 'public.some_data' --dest-uri 'bigquery://<your-project-name>?credentials_path=/path/to/service/account.json' --dest-table 'ingestr.some_data'
使用前须知
- 许可证显示为 NOASSERTION,使用前请先查看仓库的许可证条款。
标签
常见问题
- ingestr 是什么?
- 一款命令行工具,用一条命令即可在数据库、文件和 SaaS 平台之间复制数据,无需编写代码。 ingestr 是一款命令行工具,通过命令行参数即可把数据从源端搬到目标端,不需要编写自定义脚本。你只需指定源和目标的连接地址及表名,工具会负责连接与传输,把数据写入目标库。
- ingestr 可以免费使用吗?用的什么许可证?
- ingestr 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
- ingestr 还在维护吗?
- 活跃维护中。ingestr 最近一次提交是在 2026年10月21日。
- ingestr 适合用来做什么?
- 把业务数据库表同步到 BigQuery、Snowflake 等数据仓库。 将仓库中的表导出到本地 DuckDB 或 Parquet 文件中做分析。 定时把 HubSpot、Stripe 等 SaaS 数据拉取到 SQL 数据库中。 在两个数据库之间迁移数据,无需编写自定义 ETL 代码。
- ingestr 怎么安装和运行?
- 运行 README 中的官方安装脚本 或使用 pip 安装: pip install ingestr 使用你自己的源和目标 URI 运行快速入门中的 ingest 命令: ingestr ingest --source-uri 'postgresql://admin:admin@localhost:8837/web?sslmode=disable' --source-table 'public.some_data' --dest-uri 'bigquery://<your-project-name>?credentials_path=/path/to/service/account.json' --dest-table 'ingestr.some_data'
- 在哪里获取 ingestr?
- 源代码和安装说明在 GitHub 上:https://github.com/bruin-data/ingestr
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
分布式数据集成工具,通过 160 多种连接器实现批处理、流式与 CDC 方式的海量数据同步。
将云基础设施与 SaaS 元数据同步到数据仓库、支持 SQL 查询的数据管道与 CLI 工具。
Apache NiFi 是一个通过浏览器界面设计、控制和监控数据流的系统,用于在不同来源与目标之间自动处理和分发数据。
本地优先的数据工作台,把数据库、SaaS 工具和文件连接成统一本体,可在自己电脑上查询分析。
基于 Python 与 Rust 内核的增量数据管道框架,让向量索引和知识图谱随源数据变化持续同步,服务于 AI 智能体与 RAG 应用。