elementary
elementary copied to clipboard
[ELE-1796] Add option to configure warn sensitivity
Currently an anomaly test is either warn or error, dbt's warn_if
and error_if
dont work since the way we calculate failures is incompatible with the way regular tests work (return failing record)
possible solution
add a warn_anomaly_sensitivity
parameter to anomaly tests
example:
tests:
- elementary.column_anomalies:
warn_anomaly_sensitivity: 2
in that case:
- 1.5 - pass
- 2.5 - warn
- 3.5 - fail
From SyncLinear.com | ELE-1796
Thanks for raising this @ofek1weiss. This would be perfect for our use case with DBT, which is orchestrated via Airflow. We parse the manifest file and build a DAG that has, for every model, a dbt run
command, followed by dbt test
. If an Elementary anomaly detection test fails, generally we don't want to fail the dbt test
command, as that will block every downstream model, but we would want to if the anomaly is sufficiently big, in which case it would almost certainly be indicative of an upstream data quality issue.
This feature is super helpful for us also as we want to throw warnings via webhooks in case the anomaly is not a critical one[say within 2S.D.] but we certainly want to abort the pipeline and not run any downstream models in case the anomaly is a 3 S.D. or more. It would be super helpful to get this feature added to all the column and dimension anomalies in general.
+1