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
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
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
weiser_ai-0.1.2.tar.gz
(16.8 kB
view details)
Built Distribution
weiser_ai-0.1.2-py3-none-any.whl
(21.6 kB
view details)
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | c991a76145e6a3b4e835fe8bf0b1229d8f6ea7642f3c37c0a4c09a30fbb4b67c |
|
MD5 | b1f556569c8331f48d39079a255c68b4 |
|
BLAKE2b-256 | 1d33f74ce088fe9f53d955a080a1331be3b9b0e27fcf57a55ea833e3831e1338 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35d7899aa2f4248659f2e0a6e7d79096f7b3ae20244baecd4c4dd07346549c28 |
|
MD5 | dd158e1bdbdee5748b0b7164b9b3b8c8 |
|
BLAKE2b-256 | 401c79998d88ffbc60ad709aff1f26ef5cf8eb0dd9b51ef04bfb6f0ffe4ace31 |