Repolode
bruin-data

bruin-data/ingestr

コードを書かずに、1つのコマンドでデータベース、ファイル、SaaSプラットフォーム間のデータをコピーできるCLIツール。

代替できる製品:FivetranAirbyte Cloud

スター
4,025
フォーク
165
未解決の Issue
28
最終コミット
3 時間前

これは何?

ingestrは、独自のスクリプトではなくフラグを使って、データソースから転送先へデータを移動するコマンドラインアプリケーションです。ソースURIとテーブル、転送先URIとテーブルを指定すると、接続と転送を処理してデータを読み込みます。

append、merge、delete+insertの各方式による増分ロードに対応しており、実行を繰り返すことで、すべてを再ロードせずに転送先のデータを同期できます。READMEには、PostgreSQL、MySQL、BigQuery、Snowflake、DuckDB、SQL Server、MongoDB、ローカルのCSV/JSON/Parquetファイルのほか、HubSpotやStripeなど、多数のデータソースと転送先が掲載されています。

ingestrは、インストールスクリプト経由の単一バイナリと、pipパッケージとして配布されています。pipパッケージにはPython SDKもあり、行、ジェネレーター、DataFrameをCLIに渡せます。ソースコードはFunctional Source Licenseのもとで公開されており、競合する商用データ取り込みサービスとして提供することは制限されています。

主な機能

  • 01単一のCLIコマンドで、データベースやファイル間のテーブルをコピーできます。
  • 02append、merge、delete+insert方式の増分ロードに対応しています。
  • 03多数のデータベース、データウェアハウス、SaaS APIに接続できます。
  • 04シェルスクリプトまたはpipでインストールでき、Python SDKも利用できます。
  • 05MySQL、PostgreSQL、MongoDBなど複数のデータベースで、変更データキャプチャに対応しています。

ユースケース

  • BigQueryやSnowflakeなどのデータウェアハウスに、業務データベースのテーブルをロードする。
  • 分析用に、データウェアハウスのテーブルをローカルのDuckDBやParquetファイルにエクスポートする。
  • HubSpotやStripeなどのSaaSツールから、スケジュールに沿ってSQLデータベースにデータを取り込む。
  • 独自のETLコードを書かずに、2つのデータベース間でデータを移行する。

クイックスタート

  1. 1

    README に記載されている公式インストールスクリプトを実行します

  2. 2

    または pip でインストールします

    pip install ingestr
  3. 3

    Quickstart に記載されている ingest コマンドを、自分の source URI と destination URI を指定して実行します

    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 とは?
コードを書かずに、1つのコマンドでデータベース、ファイル、SaaSプラットフォーム間のデータをコピーできるCLIツール。 ingestrは、独自のスクリプトではなくフラグを使って、データソースから転送先へデータを移動するコマンドラインアプリケーションです。ソースURIとテーブル、転送先URIとテーブルを指定すると、接続と転送を処理してデータを読み込みます。
ingestr は無料で使えますか?ライセンスは?
ingestr は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
ingestr は今もメンテナンスされていますか?
活発にメンテナンス中。ingestr の最終コミットは 2026年10月21日 です。
ingestr は何に使えますか?
BigQueryやSnowflakeなどのデータウェアハウスに、業務データベースのテーブルをロードする。 分析用に、データウェアハウスのテーブルをローカルのDuckDBやParquetファイルにエクスポートする。 HubSpotやStripeなどのSaaSツールから、スケジュールに沿ってSQLデータベースにデータを取り込む。 独自のETLコードを書かずに、2つのデータベース間でデータを移行する。
ingestr のインストール方法は?
README に記載されている公式インストールスクリプトを実行します または pip でインストールします: pip install ingestr Quickstart に記載されている ingest コマンドを、自分の source URI と destination URI を指定して実行します: 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

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト