Worum handelt es sich bei der Medallion Lakehouse-Architektur?

Die Medaillon-Architektur beschreibt eine Reihe von Datenebenen, die die Qualität der im Lakehouse gespeicherten Daten kennzeichnen. Databricks empfiehlt einen Ansatz mit mehreren Ebenen für das Erstellen einer einzelnen Wahrheitsinstanz für Unternehmensdatenprodukte. Diese Architektur garantiert Unteilbarkeit, Konsistenz, Isolierung und Dauerhaftigkeit, da die Daten mehrere Ebenen von Validierungen und Transformationen durchlaufen, bevor sie in einem für effiziente Analysen optimierten Layout gespeichert werden. Die Begriffe Bronze (roh), Silber (validiert) und Gold (angereichert) beschreiben die Qualität der Daten auf jeder dieser Ebenen.

Es ist wichtig zu beachten, dass diese Medaillon-Architektur andere dimensionale Modellierungstechniken nicht ersetzt. Schemata und Tabellen innerhalb jeder Ebene können je nach Häufigkeit und Art der Datenaktualisierungen und der nachgelagerten Anwendungsfälle für die Daten verschiedene Formen und Normalisierungsgrade annehmen.

Organisationen können das Databricks Lakehouse nutzen, um validierte, unternehmensweit zugängliche Datasets zu erstellen und zu pflegen. Die Annahme einer organisatorischen Denkweise, die sich auf die Kuratierung von Daten als Produkte konzentriert, ist ein wichtiger Schritt zum erfolgreichen Aufbau eines Data Lakehouse.

Erfassen von Rohdaten auf der Bronzeebene

Die Bronzeebene enthält unvalidierte Daten. Für die auf der Bronzeebene erfassten Daten gilt in der Regel Folgendes:

  • Rohzustand der Datenquelle wird beibehalten.
  • Daten werden inkrementell hinzugefügt und wachsen mit der Zeit.
  • Es kann sich um eine beliebige Kombination aus Streaming- und Batchtransaktionen handeln.

Die Speicherung des vollständigen, unverarbeiteten Verlaufs jedes Datasets in einem effizienten Speicherformat bietet die Möglichkeit, jeden Zustand eines bestimmten Datensystems wiederherzustellen.

Zusätzliche Metadaten (wie z. B. die Namen der Quelldateien oder die Aufzeichnung des Zeitpunkts der Datenverarbeitung) können den Daten beim Erfassen hinzugefügt werden, um die Auffindbarkeit zu verbessern, den Zustand des Datasets zu beschreiben und die Leistung in nachgelagerten Anwendungen zu optimieren.

Validieren und Deduplizieren von Daten auf der Silberebene

Während die Bronzeebene den gesamte Datenhistorie nahezu im Rohzustand enthält, stellt die Silberebene eine validierte, angereicherte Version unserer Daten dar, die für nachgelagerte Analysen verwendet werden kann.

Databricks glaubt zwar fest an die Lakehouse-Vision, die auf Bronze-, Silber- und Goldtabellen basiert, aber allein die effiziente Implementierung einer Silberebene wird viele der potenziellen Vorteile des Lakehouse sofort verfügbar machen.

Für jede Datenpipeline kann die Silberebene mehrere Tabellen enthalten.

Unterstützung von Analysen mit der Goldebene

Diese Golddaten sind oft stark verfeinert und aggregiert und enthalten Daten, die Analysen, maschinelles Lernen und Produktionsanwendungen unterstützen. Während alle Tabellen im Lakehouse einem wichtigen Zweck dienen sollten, stellen die Goldtabellen Daten dar, die in Wissen umgewandelt wurden, und nicht nur Informationen.

Analysten verlassen sich bei ihren Kernaufgaben weitgehend auf die Goldtabellen, und Daten, die mit einem Kunden geteilt werden, werden selten außerhalb dieser Ebene gespeichert.

Aktualisierungen dieser Tabellen werden im Rahmen regelmäßig geplanter Produktionsworkloads durchgeführt, was zur Kostenkontrolle beiträgt und die Festlegung von Vereinbarungen zum Servicelevel (SLAs) für die Datenaktualität ermöglicht.

Das Lakehouse hat zwar nicht die gleichen Deadlock-Probleme wie ein Enterprise Data Warehouse, aber Goldtabellen werden oft in einem separaten Speichercontainer gespeichert, um Grenzwerte für Datenanforderungen in der Cloud zu vermeiden.

Da Aggregationen, Verknüpfungen und Filterungen verarbeitet werden, bevor die Daten in die Goldebene geschrieben werden, sollten Benutzer im Allgemeinen eine geringe Latenz bei Abfragen für Daten in Goldtabellen feststellen.