The augmented medallion architecture - Data Quality layer
"Data Quality" layer
Published on : April 15, 2025
| Lastly edited on : April 15, 2025
| 7 minutes read

Lirav DUVSHANI
Series : The augmented medallion architecture
A standard architecture to analytics data platform
"Bronze" layer
"Silver" layer
"Gold" layer
"Platinum" layer
"Parametrization" layer
"Data Quality" layer
The Data Quality layer - Where all data anomalies can be tracked
The main purpose of this layer is to have a dedicated layer to provide data quality issues detection and correction features.
Characteristics of the layer
- Data Validation & Cleaning
- This layer provides the data for data validation and cleaning
- At the hands of data stewards and owners
- This separate layer has a dedicated governance strategy and is managed by data stewards and owners
- Allowed Data Structures
- Structured
- Granularity of data
- The data can be detailed and/or aggregated
- Useful metadata information
- The user/team responsible for the data quality check
- The detailed information of the check
Good practices
The data quality layer should provide extensive information about the checks done and the results to enable clear and easy access by data stewards and owners.
Keeping track of all the checks done in the past, enable tracking of the level of quality of data. KPIs like a Validity Score can be tracked to follow the progress done on the data quality.
Examples
Example of a data quality check result - From Silver
Here is an example of a data quality check result on Purchase Order cleaning rule. As you'll see the order in the Silver table have been cleaned. And most of the cleaning operations are technical and don't require to notify anyone.
But two rules need to be notified to the owner of the source :
- The defaulting to 0 quantity on an order without an order unit of measure (Default Check Status : "ERROR")
- No cost amount for a paid order (Default Check Status : "WARNING")
For this example, if this happens, we consider that the responsible team is the Purchasing team.
Silver Table - Orders after cleaning
Purchase Order ID | Customer Name | Product Name | Order Status | Order Unit Of Measure | Order Quantity | Cost Currency | Amount |
---|---|---|---|---|---|---|---|
PO-1 | Customer 1 | Product A | Paid | PC | 3 | EUR | 0 (Issue as the purchase order has been paid) |
PO-2 | Customer 2 | Product C | Received | PC | 1002 | USD | 35,99 |
PO-3 | Customer 2 | Product C | Planned | # (defaulted from ∅) | 0 (Cleaned from 30) | GBP | 20,00 |
PO-4 | Customer 1 | Product A | Planned | # (defaulted from ∅) | 0 (defaulted from ∅) | EUR | 0 (defaulted from ∅) |
Data Quality Table - Order Data Quality Checks
Purchase Order ID | Order Status | Check | Check Status | Check Owner | Value in source |
---|---|---|---|---|---|
PO-1 | Paid | No cost amount although purchase order has been paid | WARNING | Purchase Team | 0 |
PO-3 | Planned | Defaulting of order quantity when no order unit of measure | ERROR | Purchase Team | 30 |
Here, the data quality table contains the checks in error, with all relevant information about the purchase order and about the check status and responsible.
Example of a data quality check result - From Gold
Here is an example of a data quality check result on aggregated tables.
This example has 2 Gold tables both proving the revenue by customer from 2 different sources. The first one is the ERP system and the second one is the financial consolidation system.
The data quality check here is to ensure consistency of the revenue KPI between both systems.
For this example, if this happens, we consider that the responsible team is the Finance team and the check status is "ERROR".
Gold Table - Revenue from ERP
Month | Customer Name | Company Currency | Company Amount |
---|---|---|---|
2025-01 | Customer 1 | EUR | 10,02 |
2025-01 | Customer 2 | EUR | 88,10 |
2025-01 | Customer 3 | EUR | 152,00 |
2025-02 | Customer 2 | EUR | 124,05 |
2025-02 | Customer 1 | EUR | 96,36 |
Gold Table - Revenue from Finance Consolidation
Month | Customer Name | Company Currency | Company Amount |
---|---|---|---|
2025-01 | Customer 2 | EUR | 88,10 |
2025-01 | Customer 3 | EUR | 152,00 |
2025-02 | Customer 2 | EUR | 125,05 |
2025-02 | Customer 1 | EUR | 96,36 |
Data Quality Table - Revenue Consistency between ERP and Finance Consolidation
Month | Customer Name | Check | Detailled Error | Check Status | Check Owner | Value Difference |
---|---|---|---|---|---|---|
2025-01 | Customer 1 | Revenue Consistency Check | Customer is not available in the finance consolidation | ERROR | Finance Team | 10,02 |
2025-02 | Customer 2 | Revenue Consistency Check | Difference amount between ERP and finance consolidation | ERROR | Finance Team | 1 |
Here, the data quality table contains the checks in error, with all relevant information about the purchase order and about the check status and responsible.
This article is part of a series of article describing the augmented medallion architecture.