01-05-2025 07:44 AM
Dear Community Experts,
I need your expert advice and suggestions on development of data quality framework. What are powerfull data quality tools or libraries are good to go for development of data quality framework in Databricks ?
Please guide team.
Regards,
Shubham
01-06-2025 10:21 AM
A year ago we did a bake-off with Soda Core, Great Expectations, deequ and DLT Expectations. Hands-down you want to use DLT expectations. It's built in to DLT and works seamlessly in your pipelines, can quarantine bad data and output statistics.
Since some of our data can be updated, not all of our pipelines can use DLT and we can't use DLT Expectations. I have recently done a small POC with Cuallee, https://github.com/canimus/cuallee. It worked nicely in Databricks and might make a good alternative in these cases.
01-05-2025 09:07 AM
Hi @shubham_007 ,
Databricks DLT gives you ability to define data quality rules. You use expectations to define data quality constraints on the contents of a dataset. Expectations allow you to guarantee data arriving in tables meets data quality requirements and provide insights into data quality for each pipeline update. You apply expectations to queries using Python decorators or SQL constraint clauses.
Manage data quality with Delta Live Tables | Databricks on AWS
You can also use open source alternatives. Two best known libraries are:
- Great Expectations
- Soda
Great Expectations
Soda Core
01-06-2025 10:21 AM
A year ago we did a bake-off with Soda Core, Great Expectations, deequ and DLT Expectations. Hands-down you want to use DLT expectations. It's built in to DLT and works seamlessly in your pipelines, can quarantine bad data and output statistics.
Since some of our data can be updated, not all of our pipelines can use DLT and we can't use DLT Expectations. I have recently done a small POC with Cuallee, https://github.com/canimus/cuallee. It worked nicely in Databricks and might make a good alternative in these cases.
01-12-2025 05:53 AM
Thank you @Rjdudley and @szymon_dybczak for your valuable response.
What are free or open source libraries or tools for implementing data quality framework in databricks ? Any short guidance on how to implement data quality framework in databricks ?
01-12-2025 10:08 AM
Hi @shubham_007,
You can use Great Expectation python library in Databricks which works on spark engine or configuration. Find more on this link https://docs.greatexpectations.io/docs/core/introduction/ .
Regards,
Hari Prasad
01-12-2025 10:57 AM
Any short guidance on how to implement data quality framework in databricks ?
With dbdemos, you can learn a practical architecture for data quality testing using the expectations feature of DLT. I hope this helps! (Please note that some DLT syntax might be outdated in certain sections.)
10-29-2025 01:44 PM
Consider our open-source data quality tool, DataOps Data Quality TestGen. Our goal is to help data teams automatically generate 80% of the data tests they need with just a few clicks, while offering a nice UI for collaborating on the remaining 20% the tests unique to their organization. It learns your data and automatically applies over 60 different data quality tests.
It’s licensed under Apache 2.0 and performs data profiling, data cataloging, hygiene reviews of new datasets, and quality dashboarding. We are a private, profitable company that developed this tool as part of our work with large and small customers. Open source is a full-featured solution, and the enterprise version is reasonably priced. https://info.datakitchen.io/install-dataops-data-quality-testgen-today
Wednesday
A library called DQX is what I am using.
Wednesday
There are plenty of tools available but one that's closely integrated with Databricks is DQX. It is quite an awesome tool that really covers most of the rules you would need. It also has the ability to develop complex SQL queries wherein joins and aggregations are possible.
Apart from that, the SDP's own expectations work best in tandem. You can primarily even tag an action with the DQ result output.
Do check these two out. These two are straightforward to implement as well.
Wednesday
@ajaygshah Between using SDP expectations and DQX, what influenced your choice? We are evaluating the two tools, and I am curious to hear your experience.
Wednesday
From my understanding, the DLT or SDP expectations are restricted to the pipelines. So if you have these Spark Declarative Pipelines, using the in-built expectations is a no-brainer. Whereas, DQX can be applied almost anywhere in your notebooks, workflows etc. The flexibility and the variety of DQ checks available via DQX made us choose that as in our case SDP pipelines weren't being used.