Skip to main content

Data Quality powered by AI

Project description

Weiser

Data Quality Framework

Install

pip install weiser-ai

Run test checks

It connects to a postgres db defined at the datasources section in the config file examples/example.yaml.

Run checks in verbose mode:

weiser run examples/example.yaml -v

Compile checks only in verbose mode:

weiser compile examples/example.yaml -v

Run dashboard

cd weiser-ui
pip install -r requirements.txt
streamlit run app.py

Watch the Dashboard Demo

Check definitions

Simple count check defintion

- name: test row_count
  dataset: orders
  type: row_count
  condition: gt
  threshold: 0

Custom sql definition

- name: test numeric
  dataset: orders
  type: numeric
  measure: sum(budgeted_amount::numeric::float)
  condition: gt
  threshold: 0

Target multiple datasets with the same check definition

- name: test row_count
  dataset: [orders, vendors]
  type: row_count
  condition: gt
  threshold: 0

Check individual group by values in a check

- name: test row_count groupby
  dataset: vendors
  type: row_count
  dimensions:
    - tenant_id
  condition: gt
  threshold: 0

Time aggregation check with granularity

- name: test numeric gt sum yearly
  dataset: orders
  type: sum
  measure: budgeted_amount::numeric::float
  condition: gt
  threshold: 0
  time_dimension:
    name: _updated_at
    granularity: year

Custom SQL expression for dataset and filter usage

- name: test numeric completed
  dataset: >
    SELECT * FROM orders o LEFT JOIN orders_status os ON o.order_id = os.order_id
  type: numeric
  measure: sum(budgeted_amount::numeric::float)
  condition: gt
  threshold: 0
  filter: status = 'FULFILLED'

Anomaly detection check

- name: test anomaly
  # anomaly test should always target metrics metadata dataset
  dataset: metrics
  type: anomaly
  # References Orders row count.
  check_id: c5cee10898e30edd1c0dde3f24966b4c47890fcf247e5b630c2c156f7ac7ba22
  condition: between
  # long tails of normal distribution for Z-score.
  threshold: [-3.5, 3.5]

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

weiser_ai-0.1.2.tar.gz (16.8 kB view details)

Uploaded Source

Built Distribution

weiser_ai-0.1.2-py3-none-any.whl (21.6 kB view details)

Uploaded Python 3

File details

Details for the file weiser_ai-0.1.2.tar.gz.

File metadata

  • Download URL: weiser_ai-0.1.2.tar.gz
  • Upload date:
  • Size: 16.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.12.4 CPython/3.10.6

File hashes

Hashes for weiser_ai-0.1.2.tar.gz
Algorithm Hash digest
SHA256 c991a76145e6a3b4e835fe8bf0b1229d8f6ea7642f3c37c0a4c09a30fbb4b67c
MD5 b1f556569c8331f48d39079a255c68b4
BLAKE2b-256 1d33f74ce088fe9f53d955a080a1331be3b9b0e27fcf57a55ea833e3831e1338

See more details on using hashes here.

File details

Details for the file weiser_ai-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: weiser_ai-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 21.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.12.4 CPython/3.10.6

File hashes

Hashes for weiser_ai-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 35d7899aa2f4248659f2e0a6e7d79096f7b3ae20244baecd4c4dd07346549c28
MD5 dd158e1bdbdee5748b0b7164b9b3b8c8
BLAKE2b-256 401c79998d88ffbc60ad709aff1f26ef5cf8eb0dd9b51ef04bfb6f0ffe4ace31

See more details on using hashes here.

Supported by

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