From e293406f5756a9d375a1e123f32dbbdd72934130 Mon Sep 17 00:00:00 2001 From: William Guo Date: Wed, 3 Jul 2024 17:15:13 +0800 Subject: [PATCH] Griffin 2.0.0 arch (#654) * new proposal for data quality tool * repolish * enterprise job scheduler might retry or stop the downstream scheduler based on standardized result * illustrate data quality etl phase, append after business phase * elaborate integrate with business workflow * init DQDiagrams * add metric storage service in DQDiagrams * triggered on demand * add more metrics * update arch diagram * init two table diff result set * data platform upgrades data quality checking pipeline * typo * update it as data quality constrains --- griffin-doc/DQDiagrams.md | 101 ++++++++++++++++ griffin-doc/DataQualityTool.md | 177 +++++++++++++++++++++++++++++ griffin-doc/TwoTablesDiffResult.md | 16 +++ griffin-doc/arch2.png | Bin 0 -> 71521 bytes 4 files changed, 294 insertions(+) create mode 100644 griffin-doc/DQDiagrams.md create mode 100644 griffin-doc/DataQualityTool.md create mode 100644 griffin-doc/TwoTablesDiffResult.md create mode 100644 griffin-doc/arch2.png diff --git a/griffin-doc/DQDiagrams.md b/griffin-doc/DQDiagrams.md new file mode 100644 index 000000000..c964f25dc --- /dev/null +++ b/griffin-doc/DQDiagrams.md @@ -0,0 +1,101 @@ +# DQ Diagrams +## Arch +![img.png](arch2.png) + +## Entities + +### DQMetric +> Represents a generic data quality metric used to assess various aspects of data quality (quantitative). + +- **DQCompletenessMetric** + > Measures the completeness of data, ensuring that all required data is present. + + - **DQCOUNTMetric** + > A specific completeness metric that counts the number of non-missing values in a dataset. + - **DQNULLPERCENTAGEMetric** + > A specific completeness metric that counts the percentage of null values in a dataset. + +- **DQAccuracyMetric** + > Measures the accuracy of data, ensuring that data values are correct and conform to a known standard. + + - **DQNULLMetric** + > An accuracy metric that counts the number of NULL values in a dataset. + +- **DQPROFILEMetric** + > Measures the profile of data, such as max, min, median, avg, stddev + + - **DQMAXMetric** + > A profile metric that max of values in a dataset. + + - **DQMINMetric** + > A profile metric that min of values in a dataset. + + - **DQMEDIANMetric** + > A profile metric that median of values in a dataset. + + - **DQAVGMetric** + > A profile metric that average of values in a dataset. + + - **DQSTDDEVMetric** + > A profile metric that standard deviation of values in a dataset. + + - **DQTOPKMetric** + > A profile metric that list top k frequent items of values in a dataset. + + +- **DQUniquenessMetric** + > Measures the uniqueness of data, ensuring that there are no duplicate records. + + - **DQDISTINCTCOUNTMetric** + > A specific uniqueness metric that identifies and counts unique records in a dataset. + +- **DQFreshnessMetric** + > Measures the freshness of data, ensuring that the data is up-to-date. + + - **DQTTUMetric (Time to Usable)** + > A freshness metric that measures the time taken for data to become usable after it is created or updated. + +- **DQDiffMetric** + > Compares data across different datasets or points in time to identify discrepancies. + + - **DQTableDiffMetric** + > A specific diff metric that compares entire tables to identify differences. + + - **DQFileDiffMetric** + > A specific diff metric that compares files to identify differences. + +- **MetricStorageService** + > A data quality metric storage and fetch service + + +- **DQJob** + > Abstract Data Quality related Jobs. + - **MetricCollectingJob** + > A job that collects data quality metrics from various sources and stores them for analysis. + + - **DQCheckJob** + > A job that performs data quality checks based on predefined rules and metrics. + + - **DQAlertJob** + > A job that generates alerts when data quality issues are detected. + + - **DQDag** + > A directed acyclic graph that defines the dependencies and execution order of various data quality jobs. + +- **Scheduler** + > A system that schedules and manages the execution of data quality jobs. + > This is the default scheduler, it will launch data quality jobs periodically. + + - **DolphinSchdulerAdapter** + > Connects our planed data quality jobs with Apache Dolphinscheduler, + > allowing data quality jobs to be triggered upon the completion of dependent previous jobs. + - **AirflowSchdulerAdapter** + > Connects our planed data quality jobs with apache airflow, + > so that data quality jobs can be triggered upon the completion of dependent previous jobs. + > + +- **Worker** + > should we need another worker layer, since most work are done on big data side + > +> + diff --git a/griffin-doc/DataQualityTool.md b/griffin-doc/DataQualityTool.md new file mode 100644 index 000000000..1347000cc --- /dev/null +++ b/griffin-doc/DataQualityTool.md @@ -0,0 +1,177 @@ +# Data Quality Tool + +## Introduction + +In the evolving landscape of data architecture, ensuring data quality remains a critical success factor for all companies. +Data architectures have progressed significantly over recent years, transitioning from relational databases and data +warehouses to data lakes, hybrid data lake and warehouse combinations, and modern lakehouses. + +Despite these advancements, data quality issues persist and have become increasingly vital, especially in the era of AI +and data integration. Improving data quality is essential for all organizations, and maintaining it across various +environments requires a combination of people, processes, and technology. + +To address these challenges, we will upgrade data quality tool designed to be easily adopted by any data organization. +This tool abstracts common data quality problems and integrates seamlessly with diverse data architectures. + +## Data Quality Dimensions + +1. **Accuracy** – Data should be error-free by business needs. +2. **Consistency** – Data should not conflict with other values across data sets. +3. **Completeness** – Data should not be missing. +4. **Timeliness** – Data should be up-to-date in a limited time frame +5. **Uniqueness** – Data should have no duplicates. +6. **Validity** – Data should conform to a specified format. + +## Our new Architecture + +Our new architecture consists of two primary layers: the Data Quality Layer and the Integration Layer. + +### Data Quality Constraints Layer + +This constraints layer abstracts the core concepts of the data quality lifecycle, focusing on: + +- **Defining Specific Data Quality Constraints**: + - **Metrics**: Establishing specific data quality metrics. + - **Anomaly Detection**: Implementing methods for detecting anomalies. + - **Actions**: Defining actions to be taken based on the data quality assessments. + +- **Measuring Data Quality**: + - Utilizing various connectors such as SQL, HTTP, and CMD to measure data quality across different systems. + +- **Unifying Data Quality Results**: + - Creating a standardized and structured view of data quality results across different dimensions to ensure a consistent understanding. + +- **Flexible Data Quality Jobs**: + - Designing data quality jobs within a generic, topological Directed Acyclic Graph (DAG) framework to facilitate easy plug-and-play functionality. + +### Integration Layer + +This layer provides a robust framework to enable users to integrate Griffin data quality pipelines seamlessly with their business processes. It includes: + +- **Scheduler Integration**: + - Ensuring seamless integration with typical schedulers for efficient pipeline execution. + +- **Apache DolphinScheduler Integration**: + - Facilitating effortless integration within the Java ecosystem to leverage Apache DolphinScheduler. + +- **Apache Airflow Integration**: + - Enabling smooth integration within the AI ecosystem using Apache Airflow. + +This architecture aims to provide a comprehensive and flexible approach to managing data quality +and integrating it into various existing business workflows in data team. + +So that enterprise job scheduling system will launch optional data quality check pipelines after usual data jobs are finished. +And maybe based on data quality result, schedule some actions such as retry or stop the downstream scheduling like circuit breaker. + +### Data Quality Layer + +#### Data Quality Constraints Definition + +This concept has been thoroughly discussed in the original Apache Griffin design documents. Essentially, we aim to quantify +the data quality of a dataset based on the aforementioned dimensions. For example, to measure the count of records in a user +table, our data quality constraint definition could be: + +**Simple Version:** + +- **Metric** + - Name: count_of_users + - Target: user_table + - Dimension: count +- **Anomaly Condition:** $metric <= 0 +- **Post Action:** send alert + +**Advanced Version:** + +- **Metric** + - Name: count_of_users + - Target: user_table + - Filters: city = 'shanghai' and event_date = '20240601' + - Dimension: count +- **Anomaly Condition:** $metric <= 0 +- **Post Action:** send alert + +#### Data Quality Pipelines(DAG) + +We support several typical data quality pipelines: + +**One Dataset Profiling Pipeline:** + +```plaintext +recording_target_table_metric_job -> anomaly_condition_job -> post_action_job +``` + +**Dataset Diff Pipeline:** + +```plaintext +recording_target_table1_metric_job -> + \ + -> anomaly_condition_job -> post_action_job + / +recording_target_table2_metric_job -> +``` + +**Compute Platform Migration Pipeline:** + +```plaintext +run_job_on_platform_v1 -> recording_target_table_metric_job_on_v1 -> + \ + -> anomaly_condition_job -> post_action_job + / +run_job_on_platform_v2 -> recording_target_table_metric_job_on_v2 -> +``` +#### Data Quality Report + +- **Meet Expectations** + + Data Quality Constrain 1: Passed + + Data Quality Constrain 2: Passed +- **Does Not Meet Expectations** + + Data Quality Constrain 3: Failed + - Violation details + - Possible root cause + + Data Quality Constrain 4: Failed + - Violation details + - Possible root cause + +#### Connectors + +The executor measures the data quality of the target dataset by recording the metrics. It supports many predefined protocols, +and customers can extend the executor protocol if they want to add their own business logic. + +**Predefined Protocols:** + +- MySQL: `jdbc:mysql://hostname:port/database_name?user=username&password=password` +- Presto: `jdbc:presto://hostname:port/catalog/schema` +- Trino: `jdbc:trino://hostname:port/catalog/schema` +- HTTP: `http://hostname:port/api/v1/query?query=` +- Docker + +### Integration layer + +Every data team has its own existing scheduler. +While we provide a default scheduler, for greater adoption, we will refactor +our Apache Griffin scheduler capabilities to leverage our customers' schedulers. +This involves redesigning our scheduler to either ingest job instances into our customers' schedulers +or bridge our DQ pipelines to their DAGs. + +```plaintext + biz_etl_phase || data_quality_phase + || +business_etl_job -> recording_target_table1_metric_job - -> + || \ + || -> anomaly_condition_job -> post_action_job + || / +business_etl_job -> recording_target_table2_metric_job - -> + || +``` + + - integration with a generic scheduler + + - integration with apache dolphinscheduler + + - integration with apache airflow + + + + + + diff --git a/griffin-doc/TwoTablesDiffResult.md b/griffin-doc/TwoTablesDiffResult.md new file mode 100644 index 000000000..6357a56d6 --- /dev/null +++ b/griffin-doc/TwoTablesDiffResult.md @@ -0,0 +1,16 @@ +# Two tables diff result set +We want to unify result set for two table comparing, when two tables' schema are the same, +we can construct result set as below to let our users quickly find the difference between two tables. + +| diff_type | col1_src | col1_target | col2_src | col2_target | col3_src | col3_target | col4_src | col4_target | +|------------|--------------|-------------|-----------|-------------|-----------|-------------|------------|-------------| +| missing | prefix1 | NULL | sug_vote1 | NULL | pv_total1 | NULL | 2024-01-01 | NULL | +| additional | NULL | prefix1 | NULL | sug_vote2 | NULL | pv_total2 | NULL | 2024-01-01 | +| missing | prefix3 | NULL | sug_vote3 | NULL | pv_total3 | NULL | 2024-01-03 | NULL | +| additional | NULL | prefix4 | NULL | sug_vote4 | NULL | pv_total3 | NULL | 2024-01-03 | +| missing | prefix5 | NULL | sug_vote5 | NULL | pv_total5 | NULL | 2024-01-05 | NULL | +| additional | NULL | prefix5 | NULL | sug_vote5 | NULL | pv_total6 | NULL | 2024-01-05 | +| missing | prefix7 | NULL | sug_vote7 | NULL | pv_total7 | NULL | 2024-01-07 | NULL | +| additional | NULL | prefix8 | NULL | sug_vote8 | NULL | pv_total8 | NULL | 2024-01-07 | +| missing | prefix9 | NULL | sug_vote9 | NULL | pv_total9 | NULL | 2024-01-09 | NULL | +| additional | NULL | prefix10 | NULL | sug_vote10 | NULL | pv_total10 | NULL | 2024-01-09 | diff --git a/griffin-doc/arch2.png b/griffin-doc/arch2.png new file mode 100644 index 0000000000000000000000000000000000000000..cc871bfcd023d55b2756232f7f69853c048fcc8b GIT binary patch literal 71521 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 z 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 literal 0 HcmV?d00001