Skip to main content

Simple data quality checks that just work.

Project description

Gaya

Simple data quality checks that just work.

pip install gaya
gaya init
gaya run

What it checks

Check Default
Null rate per column warn >10%, fail >25%
Required columns zero nulls
Primary key uniqueness zero duplicates
Row count change warn >20%, fail >40%
Schema drift warn on add, fail on remove

Quick config

datasources:
  main_db:
    type: postgres
    host: localhost
    database: app_db
    user: app_user
    password: env:DB_PASSWORD

tables:
  orders:
    source: main_db
    layer: staging
    primary_key: order_id
    not_null:
      - order_id
      - customer_id

Output

  ──────────────────────────────────────────────────────
  ✖  staging.orders  FAILED
     ✖  row count dropped 38% (1.2M → 740K)
          → A drop this large usually means a failed upstream load.

  ──────────────────────────────────────────────────────
  1 table(s) · 1 failed · 7 passed
  Finished in 2.3s
  ──────────────────────────────────────────────────────

Exit codes (CI-friendly)

Code Meaning
0 All passed
1 Warnings only
2 One or more failures
3 Gaya error (config / connection)

CI integration

# GitHub Actions
- name: Run data quality checks
  run: gaya run --quiet

Free for local databases (CSV, Postgres, MySQL).
Snowflake connector → #\x00 \x00g\x00a\x00y\x00a\x00_\x00d\x00q\x00 \x00 \x00

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

gaya-0.1.0.tar.gz (23.8 kB view details)

Uploaded Source

Built Distribution

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

gaya-0.1.0-py3-none-any.whl (24.4 kB view details)

Uploaded Python 3

File details

Details for the file gaya-0.1.0.tar.gz.

File metadata

  • Download URL: gaya-0.1.0.tar.gz
  • Upload date:
  • Size: 23.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for gaya-0.1.0.tar.gz
Algorithm Hash digest
SHA256 323ab89c6948013b7da76170625886f39fb30cc57940b651331ab5f2f8cb529c
MD5 b41818424e2dd5450438338b6ac2f2b2
BLAKE2b-256 410d040e18fde3406d648615d53d26010eddf98d0e11041f3e4aac21258f4d2e

See more details on using hashes here.

File details

Details for the file gaya-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: gaya-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 24.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for gaya-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2d4a35f38afd186763451911d0d96ceb8607801bcd6ca03047e238dbf98e4b19
MD5 3ce5f7e59bc7851d2c00d23d6e8d9120
BLAKE2b-256 e0858e903c64e01c24103a81000db78a05caef726f9afce6c5916a0a4f39b1b3

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