Medallion-Architektur
Was versteht man unter Medallion-Architektur?
Eine Medallion-Architektur ist ein Datendesignmuster, das zur logischen Organisation von Daten in einem Lakehouse verwendet wird, mit dem Ziel, die Struktur und Qualität der Daten inkrementell und progressiv zu verbessern, während sie durch jede Schicht der Architektur (durch die Schichttabellen Bronze ⇒ Silber ⇒ Gold) fließen. Medallion-Architekturen werden manchmal auch als „Multi-Hop“-Architekturen bezeichnet.
Vorteile einer Lakehouse-Architektur
- Einfaches Datenmodell
- Leicht zu verstehen und umzusetzen
- Ermöglicht inkrementelles ETL
- Kann Ihre Tabellen jederzeit aus Rohdaten neu erstellen
- ACID-Transaktionen, Zeitreisen
Eine Kurzvorstellung von Lakehouses
Ein Lakehouse ist ein neues Paradigma der Datenplattformarchitektur, das die besten Features von Data Lakes und Data Warehouses kombiniert. Ein modernes Lakehouse ist eine hoch skalierbare und leistungsstarke Datenplattform, die sowohl Rohdaten als auch vorbereitete Datensätze hostet, damit diese schnell geschäftlich genutzt und umfassende Erkenntnisse für fundierte Geschäftsentscheidungen gewonnen werden können. Ein Lakehouse eliminiert die getrennte Aufbewahrung von Datenbeständen und ermöglicht autorisierten Benutzern im gesamten Unternehmen einen nahtlosen und sicheren Datenzugriff auf einer Plattform.
Bronzeschicht (Rohdaten)
Auf der Bronzeschicht kommen alle Daten aus externen Quellsystemen an. Die Tabellenstrukturen in dieser Schicht entsprechen den Tabellenstrukturen des Quellsystems „wie sie sind“, zusammen mit allen zusätzlichen Metadatenspalten, die das Ladedatum und die Ladezeit, die Prozess-ID usw. erfassen. Der Schwerpunkt dieser Schicht liegt auf der schnellen Erfassung von Änderungsdaten und der Möglichkeit, ein historisches Archiv der Quelle (Cold Storage), die Datenherkunft, der Prüfbarkeit und die Neuverarbeitung bei Bedarf bereitzustellen, ohne die Daten erneut aus dem Quellsystem zu lesen.
Silberschicht (bereinigte und angepasste Daten)
In der Silberschicht des Lakehouse werden die Daten der Bronzeschicht abgeglichen, zusammengeführt, angepasst und bereinigt („gerade gut genug“), sodass die Silberschicht eine „Unternehmensansicht“ aller wichtigen Geschäftseinheiten, Konzepte und Transaktionen bereitstellen kann. (z. B. Stammkunden, Filialen, nicht duplizierte Transaktionen und Querverweistabellen).
Die Silberschicht bringt die Daten aus verschiedenen Quellen in eine Unternehmensansicht und ermöglicht Selfservice-Analysen für Ad-hoc-Berichte, erweiterte Analysen und ML. Sie dient Abteilungsanalysten, Data Engineers und Data Scientists als Quelle für die weitere Erstellung von Projekten und Analysen zur Beantwortung von Geschäftsproblemen über Unternehmens- und Abteilungsdatenprojekte in der Goldschicht.
Im Data-Engineering-Paradigma des Lakehouse wird typischerweise die ELT- anstelle der ETL-Methodik befolgt – was bedeutet, dass beim Laden der Silberschicht nur minimale oder „gerade gut genug“-Transformationen und Datenbereinigungsregeln angewendet werden. Geschwindigkeit und Agilität bei der Aufnahme und Bereitstellung der Daten im Data Lake haben Priorität, und beim Laden der Daten von der Silber- in die Goldschicht werden viele projektspezifische komplexe Transformationen und Geschäftsregeln angewendet. Aus Sicht der Datenmodellierung weist die Silberschicht eher Datenmodelle auf, die der 3. Normalform ähneln. In dieser Schicht können datentresorähnliche, schreibfähige Datenmodelle zum Einsatz kommen.
Goldschicht (kuratierte Tabellen auf Unternehmensebene)
Daten in der Goldschicht des Lakehouse werden typischerweise in verbrauchsbereiten „projektspezifischen“ Datenbanken organisiert. Die Goldschicht dient der Berichterstellung und verwendet stärker denormalisierte und leseoptimierte Datenmodelle mit weniger Verknüpfungen. Hier wird die letzte Schicht der Datentransformationen und Datenqualitätsregeln angewendet. Die letzte Präsentationsschicht von Projekten wie Kundenanalysen, Produktqualitätsanalysen, Bestandsanalysen, Kundensegmentierung, Produktempfehlungen, Markierungs-/Verkaufsanalysen usw. passt in diese Ebene. Viele sternschemabasierte Datenmodelle im Kimball-Stil oder Data Marts im Inmon-Stil passen in diese Goldschicht des Lakehouse.
So können Sie sehen, dass die Daten kuratiert werden, während sie sich durch die verschiedenen Schichten eines Lakehouse bewegen. In einigen Fällen sehen wir auch, dass viele Data Marts und EDWs aus dem herkömmlichen RDBMS-Technologie-Stack in das Lakehouse aufgenommen werden, sodass Unternehmen zum ersten Mal erweiterte Analysen und ML „pan-EDW“ durchführen können – was einfach nicht möglich oder zu teuer war, um es auf einem herkömmlichen Stack durchzuführen. (z. B. IoT-/Fertigungsdaten werden mit Vertriebs- und Marketingdaten für Defektanalysen oder Genomik im Gesundheitswesen verknüpft, klinische EMR/HL7-Data-Marts werden mit Daten zu Finanzansprüchen verknüpft, um einen Healthcare Data Lake für zeitnahe und verbesserte Analysen der Patientenversorgung zu erstellen.)
Medallion-Architektur und Daten-Mesh
Die Medallion-Architektur ist mit dem Konzept eines Data Mesh kompatibel. Bronze- und Silbertabellen können „eins-zu-viele“ miteinander verbunden werden, was bedeutet, dass die Daten in einer einzelnen Upstream-Tabelle zum Generieren mehrerer Downstream-Tabellen verwendet werden können.