The augmented medallion architecture - Gold layer
"Gold" layer
Published on : April 15, 2025
| Lastly edited on : April 15, 2025
| 6 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 Gold layer - Where all the business rules are implemented
Purpose of the layer
The main purpose of this layer is to provide accurate business oriented datasets, enabling decision-making.
The secondary purposes of this layer are to :
- Centralized data governance : Enable the enforcement of a data governance on business rules and KPIs
- Centralized reference : Act as a centralized repository of standard company data
Characteristics of the layer
- Storage should be optimized for analytical use
- The data should be stored in a query-friendly structures, including primary key definition, partitionning and indexing
- Allowed Data Structures
- Structured
- Granularity of data
- The data can be detailed and/or aggregated
- Applies business logic
- The data is transformed according to the business logic, such as grouping, summarizing and KPI calculation
Good practices
The gold layer contains usually a good part of the intelligence of the data platform with all the business rules and KPIs. This means that there can be a high level of complexity in the data pipelines. To ensure easy root cause analysis and to facilitate maintenance, it is advised to split all complex pipelines into smaller processes.
Standard transformations applied
- Referential Data Management
- Creation of complete referential with attributes and hierarchies
- Business logic rules
- KPI Calculation
- Currency & Unit Conversion
- Segmentation & Categorization
- Aggregation & Summarization
- Aggregate on business relevant axis
Examples
Creation of complete referential
The creation of complete referential is the fact to merge all the data related to a particular axis of analysis. In most cases, this is not mandatory, but it is useful to have the entire data of a referential available in a single location, e.g. a table.
Silver Table - Customer
Customer ID | Customer Name | Customer Group | Sector | Earnings Range | Billing Currency |
---|---|---|---|---|---|
1 | Customer A | B2B - Direct | Industry | >100M | # |
2 | Customer B | B2B - Indirect | IT | 10-100M | # |
3 | Customer C | B2B - Indirect | Retail | <100M | EUR |
4 | Customer D | B2B - Direct | Retail | 10-100M | EUR |
5 | Customer E | B2C - Direct | Individual | # | EUR |
6 | Customer F | B2C - Direct | Individual | # | EUR |
7 | Customer G | B2C - Direct | Individual | # | EUR |
Silver Table - Customer Group Hierarchy
Customer Group | Customer Group Level 1 |
---|---|
B2B - Direct | B2B |
B2B - Indirect | B2B |
B2B - Indirect | B2B |
B2B - Direct | B2B |
B2C - Direct | B2C |
B2C - Direct | B2C |
B2C - Direct | B2C |
Gold Table - Customer Complete referential
All the information is stored inside a single table for easier access to the data.
Customer ID | Customer Name | Customer Group | Customer Group Level 1 | Sector | Earnings Range | Billing Currency |
---|---|---|---|---|---|---|
1 | Customer A | B2B - Direct | B2B | Industry | >100M | # |
2 | Customer B | B2B - Indirect | B2B | IT | 10-100M | # |
3 | Customer C | B2B - Indirect | B2B | Retail | <100M | EUR |
4 | Customer D | B2B - Direct | B2B | Retail | 10-100M | EUR |
5 | Customer E | B2C - Direct | B2C | Individual | # | EUR |
6 | Customer F | B2C - Direct | B2C | Individual | # | EUR |
7 | Customer G | B2C - Direct | B2C | Individual | # | EUR |
Conversion of amounts and quantities
The conversion of amounts and quantities can be useful to provide comparable data.
In this example, on a list of purchase orders, we'll convert the billed amount into a company currency (EUR), using a currency conversion table parametrized in the parametrization layer.
Silver Table - Orders
Purchase Order ID | Customer Name | Product Name | Billing Date | Billing Currency | Billed Amount |
---|---|---|---|---|---|
PO-1 | Customer 1 | Product A | 2025-01-03 | EUR | 10,02 |
PO-2 | Customer 2 | Product B | 2025-01-04 | USD | 35,99 |
PO-3 | Customer 2 | Product C | 2025-01-04 | GBP | 20,00 |
PO-4 | Customer 1 | Product A | 2025-02-04 | USD | 99,99 |
Parameter Table - Currency Conversion
From Currency | To Currency | From Date | To Date | Conversion Rate |
---|---|---|---|---|
USD | EUR | 2025-01-01 | 2025-01-31 | 0,9708 |
USD | EUR | 2025-02-01 | 2025-02-28 | 0,9637 |
GBP | EUR | 2025-01-01 | 2025-01-31 | 1,18421 |
GBP | EUR | 2025-02-01 | 2025-02-28 | 1,20772 |
Gold Table - Orders
3 purchase orders were billed in a different currency as the company currency, which is EUR. A conversion of the billed amount is applied using the currency conversion parametrization table considering the billing date as the date of reference for currency conversion.
Purchase Order ID | Customer Name | Product Name | Billing Date | Billing Currency | Billed Amount | Company Currency | Company Amount |
---|---|---|---|---|---|---|---|
PO-1 | Customer 1 | Product A | 2025-01-03 | EUR | 10,02 | EUR | 10,02 |
PO-2 | Customer 2 | Product B | 2025-01-04 | USD | 35,99 | EUR | 34,94 |
PO-3 | Customer 2 | Product C | 2025-01-04 | GBP | 20,00 | EUR | 23,68 |
PO-4 | Customer 1 | Product A | 2025-02-04 | USD | 99,99 | EUR | 96,36 |
Aggregation of data
The aggregation of data can be relevant to summarize data for analysis.
Usually, the aggregation is not the first step in the gold layer and thus the source tables for this logic are usually also in the gold layer.
In this example, the goal is to provide the quantity of cost linked to purchase orders by month (based on billing date), customer and product.
Gold Table - Orders
Purchase Order ID | Customer Name | Product Name | Billing Date | Company Currency | Company Amount |
---|---|---|---|---|---|
PO-1 | Customer 1 | Product A | 2025-01-03 | EUR | 10,02 |
PO-2 | Customer 2 | Product B | 2025-01-04 | EUR | 34,94 |
PO-3 | Customer 2 | Product C | 2025-01-04 | EUR | 23,68 |
PO-4 | Customer 3 | Product C | 2025-01-12 | EUR | 152,00 |
PO-5 | Customer 2 | Product C | 2025-01-13 | EUR | 28,50 |
PO-6 | Customer 2 | Product C | 2025-02-01 | EUR | 28,50 |
PO-7 | Customer 2 | Product A | 2025-02-02 | EUR | 23,68 |
PO-8 | Customer 1 | Product A | 2025-02-04 | EUR | 96,36 |
PO-9 | Customer 2 | Product C | 2025-02-06 | EUR | 50,00 |
PO-10 | Customer 2 | Product C | 2025-02-08 | EUR | 45,55 |
Gold Table - Orders summary
Month | Customer Name | Product Name | Company Currency | Company Amount | Additional Info. |
---|---|---|---|---|---|
2025-01 | Customer 1 | Product A | EUR | 10,02 | PO-1 |
2025-01 | Customer 2 | Product B | EUR | 34,94 | PO-2 |
2025-01 | Customer 2 | Product C | EUR | 52,18 | PO-3 + PO-5 |
2025-01 | Customer 3 | Product C | EUR | 152,00 | PO-4 |
2025-02 | Customer 2 | Product C | EUR | 124,05 | PO-6 + PO-9 + PO-10 |
2025-02 | Customer 2 | Product A | EUR | 23,68 | PO-7 |
2025-02 | Customer 1 | Product A | EUR | 96,36 | PO-8 |
This article is part of a series of article describing the augmented medallion architecture.