Dcs core
Open Source Data Quality Monitoring.
APM (Application Performance Monitoring) tools are used to monitor the performance of applications. APM tools are mandatory part of dev stack. Without AMP tools, it is very difficult to monitor the performance of applications. The project is written primarily in Python, distributed under the Apache License 2.0 license, first published in 2023. Key topics include: data-engineering, data-governance, data-observability, data-ops, data-quality-monitor.
Why Data Monitoring?
APM (Application Performance Monitoring) tools are used to monitor the performance of applications. APM tools are mandatory part of dev stack. Without AMP tools, it is very difficult to monitor the performance of applications.
<p align="center"> <img alt="why_data_observability" src="https://raw.githubusercontent.com/datachecks/dcs-core/main/docs/assets/datachecks_why_data_observability.svg" width="800"> </p>But for Data products regular APM tools are not enough. We need a new kind of tools that can monitor the performance of Data applications.
Data monitoring tools are used to monitor the data quality of databases and data pipelines. It identifies potential issues, including in the databases and data pipelines. It helps to identify the root cause of the data quality issues and helps to improve the data quality.
What is datachecks?
Datachecks is an open-source data monitoring tool that helps to monitor the data quality of databases and data pipelines.
It identifies potential issues, including in the databases and data pipelines. It helps to identify the root cause of the data quality issues and helps to improve the data quality.
Datachecks can generate several reliability, uniqueness, completeness metrics from several data sources
Reports: Data Quality Visualisation
You can generate with just one command. It generates a beautiful data quality report with all the metrics.
This html report can be shared with the team.
CLI: Data Quality Visualisation in Bash
Data quality report can be generated in the terminal. It is very useful for debugging. All it takes is one command.
<p align="center"> <img alt="why_data_observability" src="https://raw.githubusercontent.com/datachecks/dcs-core/main/docs/assets/datachecks_cli_output.png" width="800"> </p>Getting Started
Install datachecks with the command that is specific to the database.
Install Datachecks
To install all datachecks dependencies, use the below command.
shellpip install dcs-core -U
Create the config file
With a simple config file, you can generate data quality reports for your data sources. Below is the sample config example.
For more details, please visit the config guide
Run from CLI
Generate Report in Terminal
shelldcs-core inspect -C config.yaml
Generate HTML Report
shelldcs-core inspect -C config.yaml --html-report
Please visit the Quick Start Guide
Supported Data Sources
Datachecks supports sql and search data sources. Below are the list of supported data sources.
| Data Source | Type | Supported |
|---|---|---|
| Postgres | Transactional Database | :thumbsup: |
| MySql | Transactional Database | :thumbsup: |
| MS SQL Server | Transactional Database | :thumbsup: |
| Oracle | Transactional Database | :thumbsup: |
| DB2 | Transactional Database | :thumbsup: |
| SAP Sybase | Transactional Database | :thumbsup: |
| OpenSearch | Search Engine | :thumbsup: |
| Elasticsearch | Search Engine | :thumbsup: |
| GCP BigQuery | Data Warehouse | :thumbsup: |
| DataBricks | Data Warehouse | :thumbsup: |
| Snowflake | Data Warehouse | :thumbsup: |
| AWS RedShift | Data Warehouse | :thumbsup: |
Metric Types
| Validation Funtions | Description |
|---|---|
| Reliability | Reliability functions detect whether tables/indices/collections are updating with timely data |
| Numeric Distribution | Numeric Distribution functions detect changes in the numeric distributions i.e. of values, variance, skew and more |
| Uniqueness | Uniqueness functions detect when data constraints are breached like duplicates, number of distinct values etc |
| Completeness | Completeness functions detect when there are missing values in datasets i.e. Null, empty value |
| Validity | Validity functions detect whether data is formatted correctly and represents a valid value |
Overview
<p align="center"> <img alt="datacheck_architecture" src="https://raw.githubusercontent.com/datachecks/dcs-core/main/docs/assets/data_check_architecture.svg" width="800"> </p>What Datacheck does not do?
<p align="middle"> <img alt="" src="https://raw.githubusercontent.com/datachecks/dcs-core/main/docs/assets/datachecks_does_not_do.svg" width="800"/> </p>Community & Support
For additional information and help, you can use one of these channels:
- Slack (Live chat with the team, support, discussions, etc.)
- GitHub issues (Bug reports, feature requests)
Contributions
:raised_hands: We greatly appreciate contributions - be it a bug fix, new feature, or documentation!
Check out the contributions guide and open issues.
Datachecks contributors: :blue_heart:
<a href="https://github.com/subhankarb"><img src="https://avatars.githubusercontent.com/u/2178361?v=4" width="50" height="50" alt=""/></a>
<a href="https://github.com/niyasrad"><img src="https://avatars.githubusercontent.com/u/84234554?v=4" width="50" height="50" alt=""/></a>
<a href="https://github.com/WeryZebra-Yue"><img src="https://avatars.githubusercontent.com/u/75676675?v=4" width="50" height="50" alt=""/></a>
<a href="https://github.com/gaurav-wdi"><img src="https://avatars.githubusercontent.com/u/82873511?v=4" width="50" height="50" alt=""/></a>
<a href="https://github.com/PULAK0717"><img src="https://avatars.githubusercontent.com/u/101057457?v=4" width="50" height="50" alt=""/></a>
<a href="https://github.com/fabriciodadosbr"><img src="https://avatars.githubusercontent.com/u/96063978?v=4" width="50" height="50" alt=""/></a>
Telemetry
Usage Analytics & Data Privacy
License
This project is licensed under the terms of the APACHE 2 License.
Contributors
Showing top 12 contributors by commit count.
