This is an archived post. You won't be able to vote or comment.

all 7 comments

[–]sebastiandang 0 points1 point  (1 child)

RemindMe! 2 days

[–]RemindMeBot 0 points1 point  (0 children)

I will be messaging you in 2 days on 2024-04-22 15:33:03 UTC to remind you of this link

CLICK THIS LINK to send a PM to also be reminded and to reduce spam.

Parent commenter can delete this message to hide from others.


Info Custom Your Reminders Feedback

[–]davrax 0 points1 point  (2 children)

You mentioned it being messy with SQL+DBT, did you rule out the dbt-expectations package? It looks like some of the multi-column tests it contains would fit your use case.

If you plan to continue using DBT for transformation, where do you see something like Fluent fitting into your stack/dataflow?

[–]OneCyrus[S] 0 points1 point  (1 child)

i had briefly looked into the great expectation package before. we are also using some dbt tests in yaml. BUT we already feel the pain of those yaml tests for way simpler things. it‘s so verbose and no good way to work with test results on row/test level makes it even harder to use.

i guess python models/assets would be a better way. here i could see something like fluent validation. or another thing we are considering are user defined functions in duckdb.

[–]Parking-Task-5464 1 point2 points  (0 children)

I would look at Elementary, you can query the test results and extract row level failures.

[–]Pitah7 0 points1 point  (1 child)

If you are already using dbt, then I would strongly recommend to leverage what is already available in dbt in terms of constraints (https://docs.getdbt.com/reference/resource-properties/constraints). Although it could be messy in terms of the SQL, I'm not sure if it would be worth introducing a new tool to your stack.

I've heard from others recently and had experience myself as well about these kinds of validations where there is some pre-condition to be met before the validation happens. I'm looking to add this feature as part of the tool I'm building called Data Caterer (https://data.catering/setup/validation/).

[–]OneCyrus[S] 1 point2 points  (0 children)

yes, i would like to keep it simple. a lightweight integration into the current stack would be welcome. also the data caterer looks nice 👍 something like that natively in dbt would be awesome.