Data Platform Architecture: [Platform name]
Solution architecture for an analytical data platform (lakehouse,
warehouse or a combination): consumers and service levels, ingestion
patterns, medallion storage layers, open table formats and compute
engines, the semantic and serving layer, metadata, catalogue and
lineage, data quality, security and masking, residency and retention,
capacity and cost, operations and the delivery roadmap. The structure
is aligned with the knowledge areas of DAMA-DMBOK 2nd Edition Revised
(2024) and uses public specifications for table formats (Apache
Iceberg table spec, Delta Lake protocol, Apache Hudi) and lineage
(OpenLineage). Replace every [bracketed] value and every row marked
Example. Worked examples follow a multi-country retailer building one
lakehouse for finance, merchandising and customer analytics.
Document control
| Field | Value |
|---|
| Document ID | [DPA-001] |
| Platform name | [Name] |
| Platform style | [Lakehouse / Cloud warehouse / Lake plus warehouse / Data mesh platform] |
| Hosting | [Provider, regions] or [On-premises cluster] |
| Version | [0.1] |
| Status | [Draft / In review / Approved / Superseded] |
| Owner | [@data-platform-architect] |
| Approvers/reviewers | [@chief-data-officer], [@security-architect], [@enterprise-architect], [@finops-lead], [@dpo] |
| Business sponsor | [@sponsor] |
| Last updated | YYYY-MM-DD |
| Classification | [Internal / Confidential] |
| Related documents | [Solution architecture], [Landing zone design], [Data governance policy] |
Approvals
| Role | Name | Decision | Date |
|---|
| Chief data officer or sponsor | [@name] | [Approve / Approve with conditions / Reject] | YYYY-MM-DD |
| Enterprise architecture | [@name] | [Decision] | YYYY-MM-DD |
| Security | [@name] | [Decision] | YYYY-MM-DD |
| Data protection officer | [@name] | [Decision] | YYYY-MM-DD |
| FinOps | [@name] | [Decision] | YYYY-MM-DD |
Revision history
| Version | Date | Author | Change summary |
|---|
| 0.1 | YYYY-MM-DD | [@name] | First draft |
| 1.0 | YYYY-MM-DD | [@name] | Example: Approved for finance and merchandising domains |
| 1.1 | YYYY-MM-DD | [@name] | Example: Added streaming ingestion for store sales |
Contents
1. Context, scope and drivers
1.1 Business drivers
| ID | Driver | Measure of success |
|---|
| DRV-001 (Example) | Finance month-end close needs one reconciled sales figure | Close reporting available on working day 2 instead of day 5 |
| DRV-002 (Example) | Three regional warehouses duplicate the same pipelines | Two legacy warehouses decommissioned within 18 months |
| DRV-003 (Example) | Data scientists cannot access history older than 13 months | Seven years of curated history queryable |
| [DRV-NNN] | [Driver] | [Measure] |
1.2 Scope
| In scope | Out of scope |
|---|
| Example: Ingestion from ERP, POS, e-commerce and CRM; curated layers; semantic models for finance and merchandising | Operational reporting inside the ERP |
| Example: Catalogue, lineage, quality monitoring, access policies | Master data hub (covered by architecture/master-data-management-design) |
| Example: Decommissioning plan for regional warehouses | Machine learning feature serving at sub-second latency |
| [Item] | [Item] |
1.3 Current state summary
Summarise the systems this platform replaces, their volumes and pain
points, and link the Current State Assessment
(architecture/current-state-assessment). State which legacy assets keep
running during migration and for how long: coexistence drives cost.
2. Consumers, use cases and service levels
| ID | Consumer | Use case | Access mode | Freshness | Availability | Volume or concurrency |
|---|
| UC-001 (Example) | Finance controllers | Daily sales and margin by store and product | BI semantic model | Daily by 06:00 local | 99.5 % in business hours | 150 users, 20 concurrent |
| UC-002 (Example) | Merchandising analysts | Ad hoc analysis of promotions | SQL workspace | Hourly | 99.0 % | 40 users |
| UC-003 (Example) | Data scientists | Demand forecasting model training | Notebooks on curated tables | Daily | 98 % | 12 users, large scans |
| UC-004 (Example) | Store operations app | Stock alerts pushed back to stores | Reverse ETL to operational API | 15 minutes | 99.5 % | 1,800 stores |
| UC-005 (Example) | Tax authority extract | Statutory sales file | Scheduled export | Monthly | Per deadline | 1 file per country |
| [UC-NNN] | [Consumer] | [Use case] | [Mode] | [Freshness] | [Availability] | [Volume] |
Express freshness as an objective that can be measured: the time between
a business event at the source and its availability in the serving
layer. Record the objectives formally in the SLO document (dev/slo-doc)
and define the metrics that consumers see in Metric Definitions
(ai-data/metric-definition).
3. Principles and key decisions
3.1 Principles
| ID | Principle | Consequence |
|---|
| DPP-001 (Example) | Store data once in an open table format; engines are replaceable | Gold tables are readable by at least two engines; no proprietary-only storage for curated data |
| DPP-002 (Example) | Raw data is immutable and replayable | Bronze is append-only (erasure deletes are the only permitted mutation, section 12); silver and gold can be rebuilt from bronze within the bronze retention (400 days); older history is protected by silver and gold backups |
| DPP-003 (Example) | Every published dataset has an owner and a contract | No table enters gold without a data contract and a catalogue entry |
| DPP-004 (Example) | Access is granted by policy on tags, not by table grants to individuals | Classification tags drive masking and row filters (section 11) |
| DPP-005 (Example) | Cost is visible per domain | Compute and storage are tagged by domain and reported monthly |
| [DPP-NNN] | [Principle] | [Consequence] |
3.2 Key decisions
| ID | Decision | Options considered | Choice and reason | ADR |
|---|
| DPD-001 (Example) | Platform style | Cloud warehouse only; lake plus warehouse; lakehouse | Lakehouse: one copy of data for BI and data science, open format | ADR-012 |
| DPD-002 (Example) | Table format | Apache Iceberg; Delta Lake; Apache Hudi | [Choice] based on engine support in section 7.1 | ADR-013 |
| DPD-003 (Example) | Transformation framework | SQL models with a build tool; Spark jobs; vendor ETL | SQL models for silver and gold, Spark for heavy bronze parsing | ADR-014 |
| DPD-004 (Example) | Catalogue | Engine-native catalogue; open REST catalogue; enterprise catalogue | Open REST catalogue for tables, enterprise catalogue for business glossary | ADR-015 |
| [DPD-NNN] | [Decision] | [Options] | [Choice and reason] | [ADR-NNN] |
4. Logical architecture
Describe each zone: what it holds, who writes to it and who reads it.
Keep the governance plane on the diagram; delivery teams skip it first
and auditors ask about it first.
5. Sources and ingestion patterns
5.1 Source inventory
| ID | Source | Owner | Pattern | Change detection | Deletes captured | Daily volume (compressed) | Landing frequency |
|---|
| SRC-001 (Example) | ERP finance and sales | @erp-owner | Log-based CDC | Database transaction log | Yes | 60 GB | Continuous, micro-batch every 15 min |
| SRC-002 (Example) | POS transactions | @retail-ops | Event streaming | Events published per sale | Not applicable | 120 GB | Continuous |
| SRC-003 (Example) | E-commerce order DB | @ecom-lead | Log-based CDC | Transaction log | Yes | 40 GB | Continuous |
| SRC-004 (Example) | CRM (SaaS) | @crm-owner | API extract | Modified-since cursor | Via deleted-records endpoint | 10 GB | Hourly |
| SRC-005 (Example) | Supplier files | @procurement | File drop | File arrival | Full snapshot comparison | 20 GB | Daily |
| [SRC-NNN] | [Source] | [@owner] | [Pattern] | [Method] | [Yes / No] | [Volume] | [Frequency] |
The Example total is 60 + 120 + 40 + 10 + 20 = 250 GB of compressed
data landing in bronze per day. Section 13 uses this figure.
5.2 Pattern catalogue
| Pattern | Use when | Avoid when | Design notes |
|---|
| Log-based CDC | Relational sources with frequent updates and deletes | The source team forbids log access | Design in CDC Pipeline Design (system-design/design-cdc-pipeline); keep the operation type and source commit time in bronze |
| Event streaming | Sources already publish business events | Events are not stable or lack keys | Design in Streaming Solution Design (architecture/streaming-solution-design) |
| Batch extract | Small reference tables, sources with nightly windows | Volumes exceed the window | Use full extract plus comparison for tables under [1 million] rows |
| API extract | SaaS platforms | API limits cannot cover the volume | Respect rate limits; store the raw payload before parsing |
| File transfer | Partners and regulators | A real-time need exists | Validate file manifests and checksums before load |
5.3 Ingestion rules
- Land data unchanged in bronze with load metadata: source system,
extraction time, batch or offset identifier and schema version.
- Make every load idempotent so a rerun of the same batch produces the
same table state; see the idempotency section of the Data Pipeline
Specification (
ai-data/data-pipeline-spec).
- Quarantine records that fail parsing in a separate table with the
error reason; never drop them silently.
- Capture schema changes and alert the owning domain before silver
models break.
- Encrypt in transit from the source to the landing zone; use private
connectivity for sources inside the corporate network.
6. Storage layers and modelling
6.1 Layer contract
| Layer | Purpose | Guarantees | Modelling style | Writers | Readers | Retention |
|---|
| Bronze (Example) | Faithful copy of source data with load metadata | Complete, append-only, replayable | Source-aligned, one table per source object | Ingestion services only | Platform engineers | 400 days |
| Silver (Example) | Cleansed, deduplicated, conformed entities | Types enforced, keys unique, quality rules passed | Normalised or entity-centric, history kept as slowly changing versions | Domain data engineers | Engineers, data scientists | 7 years |
| Gold (Example) | Business-ready data products and marts | Contracted schema, documented metrics, SLO-backed freshness | Dimensional (star schemas) or wide aggregate tables | Domain teams through reviewed models | All authorised consumers | Per product, default 7 years |
| [Layer] | [Purpose] | [Guarantees] | [Style] | [Writers] | [Readers] | [Retention] |
Bronze, silver and gold is the common medallion naming; some teams use
raw, curated and consumption. Keep the names stable once teams rely on them.
6.2 Modelling standards
- Model gold marts dimensionally where the consumer is BI: facts at a
declared grain, conformed dimensions, surrogate keys. Detail the model
in Analytics and BI Solution Design
(
architecture/analytics-bi-solution-design).
- Keep entity definitions in the Data Dictionary
(
architecture/data-dictionary); keep golden records for customer,
product and supplier in the master data hub, and consume them in
silver rather than rebuilding matching logic in pipelines.
- Name tables
<layer>_<domain>_<entity> or use one schema per layer and
domain; choose one convention and enforce it in code review.
- Partition large tables on the column most queries filter on (usually a
business date) and keep file sizes in the range the engines handle best
(record the target size in section 7.3).
7. Table formats and compute
7.1 Table format comparison
| Criterion | Apache Iceberg | Delta Lake | Apache Hudi | Weight | Notes |
|---|
| Specification and versioning | Table spec format versions 1 to 3 complete; v4 under development | Protocol with reader and writer versions; table features from reader 3 and writer 7 | Table versions tied to releases (1.x line) | [1-5] | Confirm on the official pages listed in section 16 |
| Row-level deletes and updates | Delete files (v2), deletion vectors (v3) | Deletion vectors as a table feature | Copy-on-write and merge-on-read table types | [1-5] | Merge-on-read lowers write cost and raises read cost |
| Engines required by section 2 | [List and support level] | [List and support level] | [List and support level] | [1-5] | Test read and write from every required engine |
| Catalogue options | REST catalogue specification and others | Unity Catalog and others | Hive-compatible metastore and others | [1-5] | Prefer an open catalogue API |
| Streaming upserts | [Assessment] | [Assessment] | Designed for incremental upserts | [1-5] | Relevant if section 5 has heavy CDC |
| Interoperability | [Assessment] | [Assessment] | [Assessment] | [1-5] | Some vendors write one format and expose metadata for another |
| Weighted score | [Score] | [Score] | [Score] | | Decision in DPD-002 |
7.2 Compute engines
| ID | Workload | Engine | Sizing approach | Isolation | Scaling |
|---|
| CMP-001 (Example) | Bronze parsing and large backfills | Distributed Spark-compatible engine | Job clusters sized per run | Per job | Autoscale 2 to 20 workers |
| CMP-002 (Example) | Silver and gold SQL models | SQL warehouse | Medium warehouse, 2 clusters at peak | Per domain | Scale out on queue length |
| CMP-003 (Example) | BI queries | SQL warehouse with result cache | Small, always on in business hours | Shared BI pool | Scale out on concurrency |
| CMP-004 (Example) | Data science | Notebook clusters | Personal compute with quotas | Per user | Auto-stop after 30 minutes idle |
| [CMP-NNN] | [Workload] | [Engine] | [Sizing] | [Isolation] | [Scaling] |
7.3 Table maintenance
| Task | Frequency | Target | Owner |
|---|
| Compaction of small files (Example) | Daily for streaming tables, weekly for batch | Files between [128 MB] and [1 GB] | Platform team |
| Snapshot or version expiry (Example) | Daily | Keep [7] days of time travel on silver, [30] on gold | Platform team |
| Orphan file removal (Example) | Weekly | No unreferenced files older than [3] days | Platform team |
| Statistics and clustering refresh (Example) | After large loads | Query plans use current statistics | Domain team |
| [Task] | [Frequency] | [Target] | [Owner] |
Time-travel retention must match the recovery objective in section 14
and the erasure obligations in section 12: a long retention of old
snapshots keeps deleted personal data readable.
8. Semantic and serving layer
| ID | Interface | Consumers | Built on | Controls |
|---|
| SRV-001 (Example) | Governed semantic models | Finance, merchandising | Gold marts | Certified metrics, row-level security |
| SRV-002 (Example) | SQL endpoint | Analysts | Gold and selected silver | Tag-based masking, query limits |
| SRV-003 (Example) | Notebook access | Data scientists | Silver and gold | Personal compute quotas, no export of restricted columns |
| SRV-004 (Example) | Reverse ETL | Store operations app | Gold stock alerts | Contract with the receiving system, delivery monitoring |
| SRV-005 (Example) | Data sharing to partners | Suppliers | Gold supplier sales | Share per partner, expiry date, audit log |
| [SRV-NNN] | [Interface] | [Consumers] | [Source layer] | [Controls] |
Keep metric definitions in one place: a semantic layer or metrics store
that every tool queries. Open specifications for exchanging semantic
models are emerging (for example Apache Ossie, incubating at the
Apache Software Foundation, formerly Open Semantic Interchange); check
their maturity before relying on them. Detail the semantic model in the
Analytics and BI Solution Design.
9. Metadata, catalogue and lineage
9.1 Metadata scope
| Metadata type | Examples | Captured by | Stored in | Owner |
|---|
| Technical (Example) | Schemas, partitions, table versions, file statistics | Table format and catalogue | Table catalogue | Platform team |
| Business (Example) | Glossary terms, definitions, owners, certification status | Data stewards | Enterprise catalogue | Domain stewards |
| Operational (Example) | Run times, row counts, failures | Orchestrator and lineage events | Observability store | Platform team |
| Lineage (Example) | Job inputs and outputs, column-level mappings | OpenLineage events from orchestrator and engines | Lineage backend | Platform team |
| Classification (Example) | Personal data, confidential, public | Scanners plus steward review | Catalogue tags | Data protection |
| [Type] | [Examples] | [Capture] | [Store] | [Owner] |
9.2 Lineage design
Emit lineage as OpenLineage run events from the orchestrator and from
each engine integration. Each event names a job, a run identifier and the
input and output datasets, with facets that carry schema, data quality
results and SQL. Name datasets consistently (namespace plus physical
name) so events from different tools join into one graph.
| Requirement | Target (Example) |
|---|
| Table-level lineage coverage of gold tables | 100 % |
| Column-level lineage coverage of certified metrics | 100 % |
| Lineage latency after a run completes | Under 5 minutes |
| Impact analysis available before a source schema change | Yes, through catalogue search |
10. Data quality and observability
10.1 Quality rules by layer
| ID | Layer | Rule | Dimension | Threshold | On failure |
|---|
| DQ-001 (Example) | Bronze | Row count within 30 % of the 7-day average | Completeness | Warn outside range | Alert ingestion owner |
| DQ-002 (Example) | Silver | Order identifier unique per source | Uniqueness | 0 duplicates | Block promotion to gold |
| DQ-003 (Example) | Silver | Store identifier exists in the store master | Consistency | 99.9 % | Quarantine failing rows |
| DQ-004 (Example) | Gold | Daily sales equal ERP ledger total within 0.1 % | Accuracy | 0.1 % | Block refresh, notify finance |
| DQ-005 (Example) | Gold | Table refreshed by 06:00 local | Timeliness | SLO | Page on-call engineer |
| [DQ-NNN] | [Layer] | [Rule] | [Dimension] | [Threshold] | [Action] |
10.2 Observability
Collect freshness, volume, schema-change and distribution signals for
every gold table, and route alerts to the owning domain. Write the
signals and dashboards into the Observability Specification
(ops/observability-spec). Publish a quality score per data product in
the catalogue so consumers can judge fitness for use.
11. Security and access control
11.1 Access model
| Control | Design | Example |
|---|
| Identity | Workforce identity provider, groups synchronised to the platform | Example: group finance-analysts-de |
| Authorisation | Role-based access per domain and layer, plus attribute-based policies on classification tags | Example: readers of gold finance get masked personal columns |
| Row-level security | Row filters based on user attributes | Example: country managers see only their country |
| Column masking | Masking policies attached to tags | Example: email shown as hash to non-privileged roles |
| Service identities | Workload identities per pipeline, no shared keys | Example: one identity per orchestrator project |
| Encryption | Provider-managed or customer-managed keys at rest, TLS in transit | Example: customer-managed keys for restricted zone |
| Network | Private endpoints, no public storage access | Example: storage reachable only from platform networks |
| Audit | Query and access logs retained and reviewed | Example: 400 days in the security log store |
11.2 Access matrix
| Role | Bronze | Silver | Gold | Restricted columns | Approval |
|---|
| Platform engineer (Example) | Read and write | Read | Read | Masked | Platform lead |
| Domain engineer (Example) | Read own domain | Read and write own domain | Write through pipeline | Masked unless justified | Domain owner |
| Analyst (Example) | None | None | Read | Masked | Line manager and domain owner |
| Data scientist (Example) | None | Read | Read | Pseudonymised | Domain owner, with DPO consulted |
| [Role] | [Access] | [Access] | [Access] | [Treatment] | [Approver] |
Review access quarterly with the Access Review template
(ops/access-review). Threats to the platform (exfiltration through
exports, over-privileged service identities, poisoned source data) belong
in the Threat Model (security/threat-model).
12. Privacy, residency and retention
| Topic | Design decision (Example) |
|---|
| Personal data inventory | Customer, loyalty and employee data identified by classification tags; listed in the record of processing (compliance/gdpr-ropa) |
| Lawful basis and purpose | Recorded per data product; analytics on pseudonymised data where possible |
| Residency | EU customer data stored and processed in EU regions only; assessed in Data Residency and Sovereignty Assessment (compliance/data-residency-sovereignty-assessment) |
| Pseudonymisation | Direct identifiers replaced with keyed hashes in silver; key held by the security team |
| Erasure | Erasure applied to silver and gold within [30] days; in bronze, erasure deletes are the only permitted mutation: rows are deleted (delete files or deletion vectors), files are rewritten in the next maintenance run, and snapshots expire within [30] days so old versions age out |
| Retention | Bronze 400 days, silver and gold per the records schedule (compliance/iso-15489-records-schedule) |
| Impact assessment | DPIA (compliance/dpia) for profiling and loyalty analytics |
13. Capacity, cost and FinOps
13.1 Storage estimate (Example)
| Layer | Daily growth | Retention or size rule | Steady-state size |
|---|
| Bronze | 250 GB (section 5.1) | 400 days | 250 GB x 400 = 100,000 GB = 100 TB |
| Silver | 150 GB of changes merged (60 % of bronze) | Current rows plus versioned history | 40 TB (measured in the proof of concept) |
| Gold | Rebuilt daily | Marts and aggregates | 5 TB |
| Total | | | 145 TB |
At an Example object storage price of USD 0.023 per GB-month, 145 TB
(145,000 GB) costs 145,000 x 0.023 = USD 3,335 per month before
snapshots, non-production copies and backup. Add [20 %] for time-travel
snapshots and [10 %] for non-production samples: 3,335 x 1.3 =
USD 4,335.50 per month.
Consequence: bronze is 69 % of storage (100 of 145 TB). Moving bronze
objects older than 90 days to an infrequent-access tier is the largest
storage lever and must be tested against replay needs.
13.2 Compute estimate (Example)
| Workload | Node-hours per day | Price per node-hour | Daily cost |
|---|
| Bronze parsing and CDC merge | 24 | USD 2.50 | USD 60 |
| Silver and gold models | 10 | USD 2.50 | USD 25 |
| BI warehouse (12 business hours, 1 node) | 12 | USD 2.50 | USD 30 |
| Data science (quota) | 6 | USD 2.50 | USD 15 |
| Total | 52 | | USD 130 |
USD 130 per day over 30 days is USD 3,900 per month. Compute and storage
together are about USD 8,235.50 per month in this Example.
Consequence: bronze parsing and CDC merge is the largest compute item (24 of 52 node-hours, 46 %).
Merge-on-read tables or fewer merge cycles per day reduce it; test the
read-side cost before switching.
13.3 FinOps controls
- Tag every compute resource and storage location with domain, layer and
environment; allocate cost monthly in the FinOps Cost Review
(
ops/finops-cost-review).
- Set budgets and auto-stop rules per workspace; alert at 80 % of budget.
- Report unit cost per data product (cost per refresh, cost per query).
- Compare the run cost with the legacy estate in the TCO Analysis
(
architecture/tco-analysis).
14. Operations and reliability
| Topic | Design (Example) |
|---|
| Resilience tier | Tier 2 per Resilience Tiering and HA/DR Design (architecture/resilience-tiering-ha-dr-design) |
| Recovery objectives | RPO 24 hours for gold, 1 hour for bronze landing; RTO 8 hours |
| Backup | Storage replicated to a second region; catalogue database backed up hourly; bronze can rebuild silver and gold within its 400-day retention; silver and gold history older than 400 days is backed up separately |
| Deployment | Pipelines and models deployed from version control through CI with tests on sample data |
| Environments | Development, test and production workspaces with separate storage; production data in lower environments only masked |
| On-call | Business hours for most products, 24x7 for reverse ETL feeds |
| Runbooks | Failed load, late source, schema change, restore of a table version (dev/runbook) |
| Capacity review | Quarterly against section 13 (ops/capacity-plan) |
15. Roadmap, risks and traceability
15.1 Roadmap
| Increment | Scope | Consumers served | Exit criteria | Target date |
|---|
| INC-1 (Example) | Landing zone, catalogue, ERP CDC to bronze and silver | Platform team | Replay of 30 days proven | YYYY-MM-DD |
| INC-2 (Example) | Finance gold mart and semantic model | UC-001 | Finance sign-off on reconciliation (DQ-004) | YYYY-MM-DD |
| INC-3 (Example) | POS streaming, merchandising marts | UC-002 | Hourly freshness SLO met for 4 weeks | YYYY-MM-DD |
| INC-4 (Example) | Data science access, reverse ETL | UC-003, UC-004 | Contracts signed, monitoring live | YYYY-MM-DD |
| INC-5 (Example) | Legacy warehouse decommission | All | Usage of legacy below 5 % for 2 months | YYYY-MM-DD |
15.2 Risks
| ID | Risk | Likelihood | Impact | Response | Owner |
|---|
| RSK-001 (Example) | Required BI tool cannot read the chosen table format version | Medium | High | Proof of concept in INC-1, pin format version | @data-platform-architect |
| RSK-002 (Example) | Source owners refuse log access for CDC | Medium | Medium | Agree in INC-1; fall back to batch with delete reconciliation | @integration-lead |
| RSK-003 (Example) | Costs exceed budget after self-service opens | High | Medium | Budgets, quotas, monthly review | @finops-lead |
| RSK-004 (Example) | Erasure not applied to snapshots | Medium | High | Snapshot expiry aligned with erasure SLA, tested quarterly | @dpo |
| [RSK-NNN] | [Risk] | [L / M / H] | [L / M / H] | [Response] | [@owner] |
15.3 Traceability to data management knowledge areas
| DMBOK2 knowledge area (name only) | Covered in |
|---|
| Data Governance | Sections 3, 9 and 15 |
| Data Architecture | Sections 4, 6 and 7 |
| Data Modeling and Design | Section 6.2 and the BI design |
| Data Storage and Operations | Sections 7.3 and 14 |
| Data Security | Section 11 |
| Data Integration and Interoperability | Section 5 |
| Reference and Master Data | Section 6.2 and the MDM design |
| Data Warehousing and Business Intelligence | Sections 6 and 8 |
| Metadata Management | Section 9 |
| Data Quality | Section 10 |
| Document and Content Management | [Out of scope or section] |
16. Glossary and references
16.1 Glossary
| Term | Meaning |
|---|
| Lakehouse | Platform that stores data in open files with a table format and serves both BI and data science from the same copy |
| Medallion layers | Bronze (raw), silver (conformed) and gold (business-ready) storage layers |
| Open table format | Specification that adds transactions, schema evolution and snapshots on top of data files in object storage |
| Data product | A dataset published with an owner, a contract, documentation and service levels |
| CDC | Change data capture, reading committed changes from a source database |
| Semantic layer | Shared definitions of metrics, dimensions and relationships queried by BI tools |
| Lineage | Record of which jobs read and wrote which datasets |
| Reverse ETL | Loading curated data back into operational systems |
16.2 References
| Reference | Version or date checked | Use |
|---|
| DAMA-DMBOK: Data Management Body of Knowledge, 2nd Edition Revised, DAMA International (Technics Publications) | 2024 revision, checked 2026-10-23 | Knowledge area names for section 15.3 |
| Apache Iceberg table specification, iceberg.apache.org/spec | Format versions 1 to 3 complete, v4 in development; library 1.12.0, checked 2026-10-23 | Section 7.1 |
| Delta Lake transaction protocol, github.com/delta-io/delta (PROTOCOL.md) | Reader 3 and writer 7 table features; release 4.4.1, checked 2026-10-23 | Section 7.1 |
| Apache Hudi, hudi.apache.org | Release 1.2.1, checked 2026-10-23 | Section 7.1 |
| OpenLineage specification, openlineage.io (LF AI and Data Foundation) | Object model: run, job, dataset, facets; checked 2026-10-23 | Section 9.2 |
| Medallion architecture glossary, databricks.com | Checked 2026-10-23 | Layer naming convention, inspiration only |
| [Internal data governance policy] | [Version] | [Use] |
Standard and licence note
Structure aligned with the knowledge areas of DAMA-DMBOK 2nd Edition
Revised (DAMA International, 2024); only knowledge area names are used
and no text, figures or definitions from the book are reproduced. Table
format statements are based on the public Apache Iceberg table
specification, the Delta Lake protocol and Apache Hudi documentation
(Apache License 2.0), and lineage statements on the OpenLineage
specification. This template is original text written for this
collection. Check the current official version of each specification
before use. Apache Iceberg and Apache Hudi are trademarks of the Apache
Software Foundation, Delta Lake of LF Projects and DAMA-DMBOK of DAMA
International; this template is not affiliated with or endorsed by them.
Template licence: MIT.