Zum Hauptinhalt springen
Suche
0

In unserem erster Beitrag dieser Seriehaben wir uns mit der Erstellung unserer Staging-Schicht mithilfe von DataVault4dbt befasst, einem Open-Source-Paket, das für Data Vault 2.0 in dbt entwickelt wurde. In dieser Folge machen wir uns auf die Reise, um unsere ersten Standardentitäten im Raw Vault zu erstellen, darunter Hubs, Links und Satelliten.

Wie in unserem vorherigen Beitrag empfehlen wir, sich über die neuesten Änderungen und Anpassungen im DataVault4dbt-Paket auf dem Laufenden zu halten, indem Sie sich auf der Projektseite GitHub-Repository Wiki.

Bevor wir beginnen

Bevor wir beginnen, vergewissern Sie sich, dass Sie das DataVault4dbt-Paket in Ihrer packages.yml-Datei korrekt installiert haben und dass Sie den Befehl dbt deps.

Für diesen Lehrgang verwenden wir die TPCH Snowflake-Beispieldaten. Außerdem gehen wir davon aus, dass Sie Ihr Staging-Modell, das die Berechnung von Hashkeys und Hashdiffs umfasst, bereits eingerichtet haben. Hier ist ein Ausschnitt aus der Konfiguration unseres Staging-Modells, den wir später beim Erstellen der Raw Vault-Entitäten benötigen:

stg_bestellungen
Erkundung von datavault4dbt: Eine praktische Serie über das dbt-Paket für Data Vault 2.0 - Band 2: Standard-Entitäten im Raw Vault

A. Standard-Nabe

Hubs werden auf der Grundlage einer eindeutigen Liste von Geschäftsschlüsseln erstellt, wodurch ihre Konfiguration relativ einfach ist. In diesem Beispiel erstellen wir den Hub für Bestellungen:

auftrag_h
Erkundung von datavault4dbt: Eine praktische Serie über das dbt-Paket für Data Vault 2.0 - Band 2: Standard-Entitäten im Raw Vault
  • Hashkey: der Name des Hashkeys im Staging-Modell
  • business_keys: Name des Geschäftsschlüssels, der als Eingabe für den zuvor genannten Hashkey verwendet wird
  • source_models: Name des Staging-Modells

Verknüpfungsmodelle stellen Verbindungen zwischen Geschäftsschlüsseln her. In unserem Fall werden wir eine Verbindung zwischen dem zuvor gebildeten Order Hub und dem Customer Hub herstellen:

Bestellung_Kunde_1
Erkundung von datavault4dbt: Eine praktische Serie über das dbt-Paket für Data Vault 2.0 - Band 2: Standard-Entitäten im Raw Vault
  • link_hashkey: Hashkey des Links, generiert aus den Fremdschlüsseln der Hubs in der Staging-Schicht
  • foreign_haskeys: eine Liste von fremden Hashkeys, die in unseren Link aufgenommen werden sollen
  • source_models: Name des Staging-Modells

C. Standard-Satellit Version 0

Gemäß den Data Vault 2.0-Standards werden die Satelliten der Version 0 als inkrementelle Tabellen erstellt. In unserem Beispiel wird der Satellit mit dem zuvor erstellten Order Hub verbunden:

auftrag_0s
Erkundung von datavault4dbt: Eine praktische Serie über das dbt-Paket für Data Vault 2.0 - Band 2: Standard-Entitäten im Raw Vault
  • parent_hashkey: Name des Hashkeys der übergeordneten Einheit, in unserem Fall der Order Hub
  • src_hashdiff: hashdiff wurde bereits für das Staging-Modell berechnet
  • src_payload: in der Hashdiff-Berechnung verwendete Originalspalten
  • source_model: Name des Staging-Modells

D. Standard-Satellit Version 1

Außerdem ist der Satellit der Version 1 eine virtuell erzeugte Entität, die auf unserem Satelliten der Version 0 aufbaut. Abgesehen von der Materialisierungsart besteht der Hauptunterschied zum V0-Satelliten in der Einführung einer neuen Spalte zur Berechnung des Ladungsenddatums. Das Enddatum der Ladung wird für uns im weiteren Verlauf nützlich sein, wenn wir mit PIT-Tabellen im Business Vault arbeiten.

Auftrag_s
Erkundung von datavault4dbt: Eine praktische Serie über das dbt-Paket für Data Vault 2.0 - Band 2: Standard-Entitäten im Raw Vault
  • sat_v0: Name des zugehörigen Satelliten der Version 0
  • Hashkey: Hashkey-Name der übergeordneten Einheit, in unserem Fall der Auftrag Hub
  • hashdiff: hashdiff wurde bereits für das Staging-Modell berechnet
  • ledts_alias: Name der zu erzeugenden Spalte für das Lastende
  • add_is_current_flag: wenn true, wird eine neue Spalte erzeugt, die die zuletzt geladenen Zeilen auf der Grundlage des Enddatums des Ladevorgangs kennzeichnet

Schlussbemerkungen

Auf dieser Reise durch die Erstellung von Raw Vault-Standardentitäten haben wir eine solide Grundlage für unsere Data Vault 2.0-Architektur geschaffen. Durch die Verwendung von DataVault4dbt innerhalb von dbt haben wir die Entwicklung von Hubs, Links und Satelliten vereinfacht. Diese grundlegenden Bausteine sind der Grundstein für eine robuste und skalierbare data warehousing-Lösung.

Im weiteren Verlauf dieser Serie werden wir fortgeschrittene Konzepte erforschen und uns in die Feinheiten der Data Vault-Modellierung vertiefen, um das volle Potenzial unserer Daten zu erschließen.

- Hernan Revale (Scalefree)

Updates und Support erhalten

Bitte senden Sie Anfragen und Funktionswünsche an [email protected]

Für Anfragen zu Data Vault-Schulungen und Schulungen vor Ort wenden Sie sich bitte an [email protected] oder registrieren Sie sich unter www.scalefree.com.

Um die Erstellung von Visual Data Vault-Zeichnungen in Microsoft Visio zu unterstützen, wurde eine Schablone implementiert, die zum Zeichnen von Data Vault-Modellen verwendet werden kann. Die Schablone ist erhältlich bei www.visualdatavault.com.

Scalefree

Eine Antwort hinterlassen

Menü schließen