Skip to main content

Python ETL Framework

Project description

bi_etl Python ETL Framework for BI

pypi license Python package

Docs

Please see the documentation site for detailed documentation.

Python based ETL (Extract Transform Load) framework geared towards BI databases in particular. The goal of the project is to create reusable objects with typical technical transformations used in loading dimension tables.

Guiding Design Principles

  1. Don’t Repeat Yourself (DRY).

  2. The source or target of an ETL owns the metadata (list of columns and data types). The ETL generally has no reason to define those again unless the ETL requires a change. If a datatype must be changed, only that one column’s new type should be specified. If a column name must be changed, only the source & target column names that differ should be specified.

  3. Data Quality is King

  4. Data quality is more important than performance. For example, the process should fail before truncating data contents (i.e. loading 6 characters into a 5 character field) even if that means sacrificing some load performance.

  5. Give helpful error messages.

  6. Make it as easy as possible to create re-usable modules.

  7. SQL is a very powerful transformation language. The Transform Extract Load (TEL) model should be supported.

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

bi_etl-1.9.1a1.tar.gz (315.9 kB view details)

Uploaded Source

Built Distribution

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

bi_etl-1.9.1a1-py3-none-any.whl (259.5 kB view details)

Uploaded Python 3

File details

Details for the file bi_etl-1.9.1a1.tar.gz.

File metadata

  • Download URL: bi_etl-1.9.1a1.tar.gz
  • Upload date:
  • Size: 315.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for bi_etl-1.9.1a1.tar.gz
Algorithm Hash digest
SHA256 a0d1c8068e080398ea70b79c77c4073104666d95f9a96c25edee19dde212bf8a
MD5 cc590541ffa24954c114332aa26eacea
BLAKE2b-256 c8e8267a5732f2d3cd8580a370f0b4aaa05a53b6753d368682afd75a16db70a2

See more details on using hashes here.

File details

Details for the file bi_etl-1.9.1a1-py3-none-any.whl.

File metadata

  • Download URL: bi_etl-1.9.1a1-py3-none-any.whl
  • Upload date:
  • Size: 259.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for bi_etl-1.9.1a1-py3-none-any.whl
Algorithm Hash digest
SHA256 d5e33c0b234dfe818617ce7d644478f818814dabfa72c9a9f5df0c0f284eb052
MD5 23ee7b4798ecabfa14660e71885a8b4d
BLAKE2b-256 a2b20835916603c8ddec037f5d007114ffb90fe67607d1e74367bb356be9d6c6

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