Skip to main content

QuickETL - Fast & Flexible Python ETL Framework with 20+ backend support via Ibis

Project description

QuickETL

Fast & Flexible Python ETL Framework with 20+ backend support via Ibis

PyPI version License: MIT

QuickETL is a configuration-driven ETL framework that provides a simple, unified API for data processing across multiple compute backends including DuckDB, Polars, Spark, and pandas.

Documentation | GitHub

Features

  • 20+ Backends: DuckDB, Polars, Spark, pandas, Snowflake, BigQuery, and more via Ibis
  • Configuration-driven: Define pipelines in YAML with variable substitution
  • Quality Checks: Built-in validation (not_null, unique, row_count, accepted_values)
  • 12 Transforms: filter, aggregate, join, derive_column, and more
  • CLI & Python API: Use quicketl run or the Pipeline builder
  • Cloud Storage: S3, GCS, Azure via fsspec

Installation

pip install quicketl

See installation docs for backend-specific extras.

Quick Start

# Create a new project
quicketl init my_project
cd my_project

# Run the sample pipeline
quicketl run pipelines/sample.yml

Or use Python:

from quicketl import Pipeline

pipeline = Pipeline.from_yaml("pipeline.yml")
result = pipeline.run()

Example Pipeline

name: sales_etl
engine: duckdb

source:
  type: file
  path: data/sales.parquet

transforms:
  - op: filter
    predicate: amount > 0
  - op: aggregate
    group_by: [region]
    aggs:
      total: sum(amount)

sink:
  type: file
  path: output.parquet

Documentation

Full documentation, tutorials, and API reference at quicketl.com

License

MIT License - see LICENSE for details.

Project details


Download files

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

Source Distribution

quicketl-1.2.0.tar.gz (341.2 kB view details)

Uploaded Source

Built Distribution

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

quicketl-1.2.0-py3-none-any.whl (67.3 kB view details)

Uploaded Python 3

File details

Details for the file quicketl-1.2.0.tar.gz.

File metadata

  • Download URL: quicketl-1.2.0.tar.gz
  • Upload date:
  • Size: 341.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for quicketl-1.2.0.tar.gz
Algorithm Hash digest
SHA256 08b7a957d0f1d48f5993b7ec7c402ad8359e134de6c624f12a431735d86080e7
MD5 725b696fc7a177c5bf0545083d9d24fd
BLAKE2b-256 2b35ceed288b1ba5624e6655014a95fe1c02b1cd72aa65160bb7a83aace9e631

See more details on using hashes here.

Provenance

The following attestation bundles were made for quicketl-1.2.0.tar.gz:

Publisher: release.yml on ameijin/quicketl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file quicketl-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: quicketl-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 67.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for quicketl-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eb2fb5b01487536632138f684ed437c63c2bd7acf3e039ec43269caf9daaee78
MD5 53b093493c3a7a8e5c8c8318ebc44d97
BLAKE2b-256 1457bf2e0cd37e339ed79d5bafa09b00739c0d790ba4ae74df1d067bc4f0e311

See more details on using hashes here.

Provenance

The following attestation bundles were made for quicketl-1.2.0-py3-none-any.whl:

Publisher: release.yml on ameijin/quicketl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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