Data Lineage

Data Lineage ist ein Dataplex-Feature, mit dem Sie verfolgen können, wie sich Daten durch Ihre Systeme bewegen: woher sie kommen, wohin sie übergeben werden und welche Transformationen auf sie angewendet werden.

Wozu benötigen Sie Data Lineage?

Der Umgang mit großen Datasets beinhaltet oft die Umwandlung von Daten in Entitäten, die auf die Anforderungen eines bestimmten Projekts zugeschnitten sind: Textdateien, Tabellen, Berichte, Dashboards, Modelle.

Stellen Sie sich beispielsweise vor, Sie haben einen Onlineshop, in dem Sie jeden Kauf in einer einzigen SQL-Tabelle aufzeichnen. Damit Analysten leichter mit den Daten arbeiten können, beginnen Sie mit der Ausführung von Jobs, die Informationen aus dieser einzelnen Tabelle extrahieren, und erstellen kleinere Tabellen nach Region, Marke oder Sonderangebotspreis. Ihre Analysten beginnen dann dasselbe: Sie führen weitere Transformationen durch und führen diese kleineren Tabellen mit anderen Datenquellen zusammen, um noch mehr Tabellen zu erstellen.

Dies kann für Ihre Stakeholder zu einer großen Herausforderung werden:

  • Datennutzer können mit einem Self-Service-Tool nicht feststellen, ob Daten aus einer maßgeblichen Quelle stammen.
  • Data Engineers können Probleme nicht selbst verursachen, da keine zuverlässige Möglichkeit zur Verfolgung aller Datentransformationen vorhanden ist.
  • Data Engineers und Analysten können mögliche Auswirkungen nicht vollständig bewerten, bevor sie Tabellen ändern oder löschen.
  • Datenverantwortliche sind nicht in der Lage, nachzuvollziehen, wie sensible Daten in der Organisation verwendet werden, und nicht, um die Einhaltung gesetzlicher Vorschriften sicherzustellen.

Data Lineage bietet folgende praktische Lösung:

  • Verstehen Sie mithilfe von Visualisierungen von Lineage-Diagrammen, wie Daten bezogen und transformiert werden.
  • Trace-Fehler im Zusammenhang mit Einträgen und Datenvorgängen zurück zu ihren Ursachen.
  • Ermöglichen Sie ein besseres Änderungsmanagement durch Wirkungsanalysen: Vermeiden Sie Ausfallzeiten oder unerwartete Fehler, verstehen Sie abhängige Einträge und arbeiten Sie mit relevanten Stakeholdern zusammen.

Visualisierungsdiagramm für Herkunft

Lineage-Diagramme stellen Informationen dar, die von der Data Lineage API für einen bestimmten Data Catalog-Eintrag erfasst werden:

Die Beispielgrafik zeigt Daten aus zwei Tabellen, die transformiert und dann in eine neue Tabelle zusammengeführt werden. Im Detailbereich ist unten der SQL-Code angedockt.
Abbildung 1. Beispiel für ein Lineage-Visualisierungsdiagramm in der Dataplex-UI.

Dataplex verwendet die Data Lineage API, um Einträge zu identifizieren, deren voll qualifizierter Name mit Entitäten übereinstimmt, die von Data Lineage erkannt wurden. Bei übereinstimmenden Dataplex-Einträgen können Sie auf der Detailseite auf den Tab Lineage (Lineage) zugreifen und das Diagramm ansehen.

In Lineage-Diagrammen werden zwei Arten von Elementen angezeigt:

  • Breite, rechteckige Schaltflächen, die Entitäten darstellen, die an der Erstellung von Herkunftsinformationen als Quellen oder Ziele eines Herkunftsereignisses beteiligt sind.
  • Kleinere, quadratische Schaltflächen für Prozesse, die für das Erstellen oder Aktualisieren der Quell- oder Zielentitäten verantwortlich sind. Die Prozessschaltflächen verwenden Symbole, die für das Quellsystem spezifisch sind, das sie an die Data Lineage API gemeldet hat. BigQuery-Jobs verwenden beispielsweise das Symbol Symbol für BigQuery-Herkunftsprozess.

Informationsmodell zur Datenherkunft

In seiner grundlegenden Form ist Lineage ein Datensatz von Daten, die von Quellen in Ziele transformiert werden. Die Data Lineage API erfasst diese Informationen und organisiert sie mithilfe der Konzepte von Prozessen, Ausführungen und Ereignissen in einem hierarchischen Datenmodell.

Prozesse

Ein Prozess ist die Definition eines Datentransformationsvorgangs, der für ein bestimmtes System unterstützt wird. Im Kontext der BigQuery-Herkunft ist process einer der unterstützten Jobtypen.

Ausführen

Eine Ausführung ist die Ausführung eines Prozesses. Prozesse können mehrere Ausführungen haben. Ausführungen enthalten Details wie Start- und Endzeiten, Status oder zusätzliche Attribute. Weitere Informationen finden Sie in der Referenz zur Ressource run.

Ereignis

Ein Ereignis stellt einen Zeitpunkt dar, an dem ein Datentransformationsvorgang stattgefunden hat und dazu geführt hat, dass Daten zwischen einer Quelle und einer Zielentität verschoben wurden.

Ereignisse enthalten eine Liste von Links, die definieren, welcher Eintrag die Quelle und welches das Ziel in einem bestimmten Ereignis war. Ereignisse werden zwar zum Berechnen von Lineage-Visualisierungsgrafiken verwendet, sind jedoch nicht direkt in der Google Cloud Console verfügbar. Sie können sie mit der Data Lineage API erstellen, lesen und löschen, aber nicht aktualisieren.

Beispiel

Im folgenden Beispiel werden Daten zwischen BigQuery-Tabellen kopiert:

Beispiel extrahiert Daten aus den Tabellen customer_year und customers, um eine Tabelle mit dem Namen top_customer abzuleiten.
Abbildung 2. Beispiel für ein Diagramm, das die Quellen von Tabellendaten zeigt

Wie Daten zwischen den Tabellen verschoben werden, wird durch den Herkunftsprozess beschrieben (dargestellt in der Grafik durch das Symbol Symbol für BigQuery-Herkunftsprozess): Es kann sich um eine SQL-CREATE TABLE AS SELECT-Abfrage oder eine INSERT-Anweisung handeln.

Jede Ausführung dieser SQL-Anweisung stellt einen einzelnen run dar. Ausführungen enthalten Ereignisse, die festhalten, welche Tabellen als Quellen und welche als Ziele verwendet wurden. In diesem Beispiel sind die Tabellen customer_year und customers beide die Quelle für die Zieltabelle top_customer.

Automatisiertes Tracking der Datenherkunft

Wenn Sie die Data Lineage API aktivieren, melden Google Cloud-Systeme, die Data Lineage unterstützen, Berichte über ihre Datenbewegung. Jedes integrierte System kann Herkunftsinformationen für einen anderen Bereich von Datenquellen senden. Weitere Informationen zu allen unterstützten Produkten finden Sie in den folgenden Abschnitten.

BigQuery

Wenn Sie die Data-Lineage in Ihrem BigQuery-Projekt aktivieren, zeichnet Dataplex automatisch Herkunftsinformationen für Folgendes auf:

Kopier-, Abfrage- und ladejobs in BigQuery werden als Prozesse dargestellt. Klicken Sie in der Visualisierungsgrafik zur Herkunft auf das Spiegelsymbol , um die Prozessdetails aufzurufen. Jeder Prozess enthält die BigQuery-job_id in der Attributliste für den letzten BigQuery-Job.

Weitere Dienste

Data Lineage unterstützt die Einbindung in die folgenden Google Cloud-Dienste:

Datenherkunft für benutzerdefinierte Datenquellen

Mit der Data Lineage API in Dataplex können Sie Herkunftsinformationen für jede Datenquelle, die von den integrierten Systemen nicht unterstützt wird, manuell aufzeichnen.

Dataplex kann Visualisierungsgrafiken für manuell aufgezeichnete Herkunft erstellen, wenn Sie einen fullyQualifiedNames verwenden, der den voll qualifizierten Namen vorhandener Data Catalog-Einträge entspricht. Wenn Sie die Herkunft einer benutzerdefinierten Datenquelle aufzeichnen möchten, erstellen Sie zuerst einen benutzerdefinierten Data Catalog-Eintrag.

Jeder Prozess für eine benutzerdefinierte Datenquelle kann in der Attributliste den Schlüssel sql enthalten. Der Wert eines solchen Schlüssels wird verwendet, um die Codehervorhebung im Detailbereich des Datenherkunftsdiagramms zu rendern. Die SQL-Anweisung wird so angezeigt, wie sie angegeben wurde. Der Nutzer ist dafür verantwortlich, vertrauliche Informationen herauszufiltern. Beim Schlüsselnamen sql wird zwischen Groß- und Kleinschreibung unterschieden.

OpenLineage

Wenn Sie OpenLineage bereits zum Erfassen von Herkunftsinformationen aus anderen Datenquellen verwenden, können Sie OpenLineage-Ereignisse in Dataplex importieren und diese Ereignisse in der Google Cloud Console anzeigen. Weitere Informationen finden Sie unter In OpenLineage einbinden.

Aktuelle Funktionseinschränkungen

  • Alle Herkunftsinformationen werden nur 30 Tage im System aufbewahrt.
  • Die Herkunftsinformationen bleiben erhalten, nachdem Sie die zugehörige Datenquelle entfernt haben. Wenn Sie also eine BigQuery-Tabelle und ihren Data Catalog-Eintrag entfernen, können Sie die Herkunft dieser Tabelle weiterhin bis zu 30 Tage lang mit der API lesen.

Auf Data Lineage zugreifen

Sie haben folgende Möglichkeiten, um auf Data-Lineage-Funktionen zuzugreifen:

Nächste Schritte