Skip to main content

ingestr is a command-line application that ingests data from various sources and stores them in any database.

Project description

Ingest & copy data from any source to any destination without any code


Ingestr is a command-line application that allows you to ingest data from any source into any destination using simple command-line flags, no code necessary.

  • ✨ copy data from your database into any destination
  • ➕ incremental loading: append, merge or delete+insert
  • 🐍 single-command installation

ingestr takes away the complexity of managing any backend or writing any code for ingesting data, simply run the command and watch the data land on its destination.

Installation

pip install ingestr

Quickstart

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'

That's it.

This command will:

  • get the table public.some_data from the Postgres instance.
  • upload this data to your BigQuery warehouse under the schema ingestr and table some_data.

Documentation

You can see the full documentation here.

Community

Join our Slack community here.

Supported Sources & Destinations

Database Source Destination
Postgres
BigQuery
Snowflake
Redshift
Databricks
DuckDB
Microsoft SQL Server
Local CSV file
MongoDB
Oracle
SQLite
MySQL

More to come soon!

Acknowledgements

This project would not have been possible without the amazing work done by the SQLAlchemy and dlt teams. We relied on their work to connect to various sources and destinations, and built ingestr as a simple, opinionated wrapper around their work.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ingestr-0.2.5.tar.gz (289.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ingestr-0.2.5-py3-none-any.whl (124.0 kB view details)

Uploaded Python 3

File details

Details for the file ingestr-0.2.5.tar.gz.

File metadata

  • Download URL: ingestr-0.2.5.tar.gz
  • Upload date:
  • Size: 289.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for ingestr-0.2.5.tar.gz
Algorithm Hash digest
SHA256 59bdfb12363344113af46feedac21599d0097cb2b9dac9723ad4fa554ba8b61f
MD5 76b1202b02f494316321deea7ee672a3
BLAKE2b-256 eb990d5cfe50a8faf3bab02ce2319245d52ccdbdeb454b13fba6ae816e1c918f

See more details on using hashes here.

File details

Details for the file ingestr-0.2.5-py3-none-any.whl.

File metadata

  • Download URL: ingestr-0.2.5-py3-none-any.whl
  • Upload date:
  • Size: 124.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for ingestr-0.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 5d7290748c7fefd4605d1638b3f6bec433b4db546a928eeb292eb99e621a8d38
MD5 05af06eda0c72f995f3d1f24a84312a2
BLAKE2b-256 738bede51ddede87b84c6bfa8acf7ffe6514be4b42cf201c507606ba2ceb0bd8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page