Data Vault 2.0 ist ein Modellierungsansatz für agile, skalierbare und auditierbare Enterprise Warehouses. Hubs, Links und Satellites ermöglichen parallele Entwicklung.
Drei grundlegende Entitäten¶
- Hub — Business Keys (unveränderlicher Kern)
- Link — Beziehungen zwischen Hubs
- Satellite — beschreibende Attribute mit Historie
CREATE TABLE hub_customer (
hub_customer_hk CHAR(32) PRIMARY KEY,
customer_id VARCHAR(50) NOT NULL,
load_date TIMESTAMP NOT NULL,
record_source VARCHAR(100) NOT NULL
);
CREATE TABLE sat_customer_details (
hub_customer_hk CHAR(32) REFERENCES hub_customer,
load_date TIMESTAMP NOT NULL,
hash_diff CHAR(32) NOT NULL,
customer_name VARCHAR(200),
email VARCHAR(200),
segment VARCHAR(50),
PRIMARY KEY (hub_customer_hk, load_date)
);
CREATE TABLE link_customer_product (
link_hk CHAR(32) PRIMARY KEY,
hub_customer_hk CHAR(32),
hub_product_hk CHAR(32),
load_date TIMESTAMP NOT NULL
);
Vorteile¶
- Parallele Entwicklung — unabhängige Teams
- Vollständige Historie — jede Änderung in Satellites
- Auditierbarkeit — record_source auf jedem Datensatz
Zusammenfassung¶
Data Vault ist ideal für Unternehmen mit vielen Quellen und Anforderungen an die Auditierbarkeit.
data vaultdata modelingenterprisewarehouse