Grundlegende Governance mit Dataplex Universal Catalog: Erste Schritte

1. Einführung

Als Entwickler und Data Engineers erben wir oft große Datensammlungen, die eher wie Datensümpfe aussehen. Wir stoßen immer wieder auf dieselben Reibungspunkte: „Was ist die tatsächliche Definition der Spalte ‚amt‘?“ „Wer ist verantwortlich, wenn dieses Dataset nicht mehr funktioniert?“ oder „Dürfen wir diese Tabelle in der personalisierten Empfehlungs-Engine verwenden?“

Bisher waren Data Catalogs passive Inventare, die mit Freitext-Tags gefüllt wurden, die schnell inkonsistent und veraltet waren. Sie erzwingen keine Struktur, was die programmatische Governance nahezu unmöglich macht.

Um das Ganze zu veranschaulichen, werden wir in diesem Lab ein Szenario durchgehen: die Einrichtung einer robusten Governance für Rohdaten zu Einzelhandelsumsätzen, damit sie von der Finanzabteilung für offizielle Berichte verwendet werden können. Sie verschieben diese Daten aus einem mehrdeutigen „Sumpf“-Zustand in ein geregeltes Produkt.

Dataplex Universal Catalog ändert dies, indem es ein aktives, strukturiertes Framework zur Metadatenverwaltung bietet. Damit können Sie strukturierte, schemabasierte Metadaten (Aspekte) und akzeptierte Geschäftsdefinitionen (Glossare) direkt an Ihre Daten-Assets (Einträge) anhängen.

Bevor Sie Python-Skripts oder Terraform-Module schreiben können, um dies im großen Maßstab zu automatisieren, müssen Sie das zugrunde liegende Objektmodell verstehen.

In diesem Codelab führen wir die Governance-Schritte manuell in der Google Cloud Console aus. Wir werden die Zusammenhänge zwischen Einträgen, Aspekttypen, Aspekten und Glossaren explizit erläutern, damit Sie ein solides mentales Modell dafür erhalten, wie Sie Ihre Daten auffindbar, verständlich und vertrauenswürdig machen können.

Voraussetzungen

  • Ein Google Cloud-Projekt mit Inhaber- oder Bearbeiterzugriff.
  • Vertrautheit mit der Google Cloud Console
  • Grundlegende Kenntnisse der gcloud- und bq-Befehlszeile in Cloud Shell

Lerninhalte

  • Der entscheidende Unterschied zwischen einem Dataplex-Eintrag, einem Aspekttyp und einem Aspekt.
  • Geschäftsglossar erstellen, um Unklarheiten bei der Terminologie zu beseitigen
  • So entwerfen Sie einen Aspekttyp, um ein strenges Schema für technische Metadaten zu erzwingen (über „Tags“ hinaus).
  • So verknüpfen Sie einen Begriff aus dem Unternehmensglossar mit einer bestimmten BigQuery-Spalte.
  • So hängen Sie einem Datenasset ein strukturiertes Attribut an und validieren Eingaben.
  • Wie Sie präzise Suchanfragen für diese neuen strukturierten Metadaten ausführen.

Voraussetzungen

  • Ein Google Cloud-Konto und ein Google Cloud-Projekt
  • Ein Webbrowser wie Chrome

Wichtige Konzepte

  • Eintrag:Die kanonische, abstrakte Darstellung eines Daten-Assets im Katalog. Stellen Sie sich das als „Zeiger“ oder „Substantiv“ vor. Wenn Sie eine BigQuery-Tabelle erstellen, wird in Dataplex automatisch ein Eintrag dafür erstellt. Wir verwalten die Tabelle nicht direkt, sondern ihren Eintrag.
  • Geschäftsglossar:Ein zentrales, versioniertes Wörterbuch mit den Geschäftsbegriffen Ihrer Organisation. Sie ist die einzige verlässliche Quelle. So wird das Problem vermieden, dass der Umsatz von Vertrieb und Finanzabteilung unterschiedlich definiert wird.
  • Aspekttyp:Das Schema oder die Vorlage für eine bestimmte Kategorie von Metadaten. Ein Aspekttyp definiert Felder, Datentypen (String, Enum, DateTime usw.) und Einschränkungen (erforderlich/optional). Dieser Vertrag sorgt für die Konsistenz der Metadaten.
  • Aspekt:Ein bestimmtes Metadatenelement, das einem Eintrag angehängt wird und der durch den Aspekttyp definierten Struktur folgt. Sie enthält die tatsächlichen Daten, die dem Schema des Aspekttyps entsprechen.

2. Einrichtung und Anforderungen

Cloud Shell starten

Während Sie Google Cloud von Ihrem Laptop aus per Fernzugriff nutzen können, wird in diesem Codelab Google Cloud Shell verwendet, eine Befehlszeilenumgebung, die in der Cloud ausgeführt wird.

Klicken Sie in der Google Cloud Console in der Symbolleiste oben rechts auf das Cloud Shell-Symbol:

Cloud Shell aktivieren

Die Bereitstellung und Verbindung mit der Umgebung sollte nur wenige Augenblicke dauern. Anschließend sehen Sie in etwa Folgendes:

Screenshot des Google Cloud Shell-Terminals, auf dem zu sehen ist, dass die Umgebung verbunden ist

Diese virtuelle Maschine verfügt über sämtliche Entwicklertools, die Sie benötigen. Sie bietet ein Basisverzeichnis mit 5 GB nichtflüchtigem Speicher und läuft in Google Cloud, was die Netzwerkleistung und Authentifizierung erheblich verbessert. Alle Aufgaben in diesem Codelab können in einem Browser ausgeführt werden. Sie müssen nichts installieren.

Erforderliche APIs aktivieren und Umgebung konfigurieren

Führen Sie die folgenden Befehle aus, um Ihre Projekt-ID festzulegen, die Region zu definieren und die erforderlichen Dienst-APIs zu aktivieren.

export PROJECT_ID=$(gcloud config get-value project)
gcloud config set project $PROJECT_ID
export LOCATION="us-central1"

gcloud services enable dataplex.googleapis.com \
                       bigquery.googleapis.com \
                       datacatalog.googleapis.com

BigQuery-Dataset erstellen und Beispieldaten vorbereiten

Wir benötigen ein konkretes Daten-Asset, das wir verwalten können. Wir erstellen ein BigQuery-Dataset und laden eine kleine CSV-Beispieldatei mit Transaktionen. Dataplex erkennt diese Tabelle automatisch und erstellt einen Eintrag dafür.

# Create the BigQuery Dataset in the us-central1 region
bq --location=$LOCATION mk --dataset \
    --description "Retail data for governance codelab" \
    $PROJECT_ID:retail_data

# Create a temporary CSV file with the sample data
echo "transaction_id,user_email,gmv,transaction_date
1001,test@example.com,150.50,2025-08-28
1002,user@example.com,75.00,2025-08-28" > /tmp/transactions.csv

# Load the data from the temporary CSV file into BigQuery
bq load \
    --source_format=CSV \
    --autodetect \
    retail_data.transactions \
    /tmp/transactions.csv

# (Optional) Clean up the temporary file
rm /tmp/transactions.csv

Prüfen Sie die Einrichtung, indem Sie eine schnelle Abfrage ausführen:

bq query --nouse_legacy_sql "SELECT * FROM retail_data.transactions"

3. Mit einem Geschäftsglossar eine gemeinsame Sprache schaffen

Eine effektive Governance beginnt mit eindeutigen Definitionen. Wenn ein Entwickler eine Spalte mit dem Namen gmv sieht, sollte er nicht raten müssen, ob sie Steuern oder Rückgaben enthält. Ein Unternehmensglossar löst dieses Problem, indem es die geschäftliche Definition von der technischen Implementierung entkoppelt.

  1. Rufen Sie in der Google Cloud Console den Dataplex Universal Catalog auf.
  2. Wählen Sie im Navigationsmenü auf der linken Seite unter „Metadaten verwalten“ die Option Glossare aus.

96020207ba4bd128.png

  1. Klicken Sie auf Unternehmensglossar erstellen.
  2. Geben Sie die folgenden Informationen ein:
    • Name: Retail Business Glossary
    • Standort: us-central1 (oder der Standort, den Sie bei der Einrichtung festgelegt haben).
  3. Klicken Sie auf Erstellen.

e3b146e5f3b57785.png

  1. Klicken Sie auf das neu erstellte Retail Business Glossary (Glossar für Einzelhandelsunternehmen), um es aufzurufen.

c98bdf049e946234.png

  1. Klicken Sie auf Kategorie erstellen, geben Sie Sales Metrics als Namen ein und klicken Sie auf Erstellen. Mithilfe von Kategorien lassen sich ähnliche Begriffe gruppieren.
  2. Wählen Sie die Kategorie Sales Metrics aus, klicken Sie auf Begriff hinzufügen, geben Sie den Namen Gross Merchandise Value ein und klicken Sie auf Erstellen.
  3. Klicken Sie auf der Übersichtsseite auf die Schaltfläche „+ Hinzufügen“ und geben Sie die folgenden Details ein:
    • Übersicht: The total value of merchandise sold over a given period of time before the deduction of any fees or expenses. This is a key indicator of e-commerce business growth.
  4. Klicken Sie auf Speichern.

3a642fd2a41c040e.png

Sie haben jetzt eine klare Definition erstellt, die mit technischen Assets in Ihrer gesamten Organisation verknüpft werden kann.

4. Strukturierte technische Metadaten mit einem Aspekttyp definieren

Einfache „Schlüssel:Wert“-Tags reichen für die technische Strenge nicht aus. Wenn Sie „Data Owners“ erfassen müssen, möchten Sie nicht, dass eine Tabelle mit owner:bob und eine andere mit contact:alice@example.com getaggt wird. Sie benötigen ein Schema, um zu erzwingen, dass ein Inhaber erforderlich ist und ein gültiges E-Mail-Format haben muss.

Wir verwenden einen Aspekttyp, um diesen Vertrag zu definieren.

  1. Wählen Sie in der linken Dataplex-Navigation unter Katalog die Option Aspekttypen und Tag-Vorlagen aus.
  1. Wählen Sie den Tab Benutzerdefiniert aus und klicken Sie auf Aspekttyp erstellen.

a920c555d40425a.png

  1. Geben Sie die folgenden Informationen ein:
    • Display name (Anzeigename): Data Asset Governance.
    • Standort: us-central1
  2. Im Abschnitt Vorlage definieren wir das Schema für unsere Aspect. Klicken Sie auf Feld hinzufügen, um die folgenden drei Felder zu erstellen:
    • Feld 1:
      • Display name (Anzeigename): Data Steward.
      • Typ: Text
      • Texttyp: Plain text
      • Kardinalität: Ist erforderlich (Kästchen aktivieren)
    • Feld 2 (klicken Sie noch einmal auf Feld hinzufügen):
      • Display name (Anzeigename): Data Sensitivity.
      • Typ: Enum
      • Werte: Fügen Sie Public, Internal und Confidential hinzu.
      • Kardinalität: Optional
    • Feld 3 (klicken Sie noch einmal auf Feld hinzufügen):
      • Display name (Anzeigename): Last Review Date.
      • Typ: Date and time
      • Kardinalität: Optional
  3. Klicken Sie auf Speichern.

20babd75c2b8dce6.png

Sie haben soeben einen wiederverwendbaren Metadatenvertrag erstellt. Sie wird noch nicht verwendet, aber die Struktur ist vorhanden.

5. Governance mit dem Asset verknüpfen

Jetzt fassen wir alles zusammen. Wir haben eine BigQuery-Tabelle (retail_data.transactions), eine Geschäftsdefinition (Gross Merchandise Value) und ein Governance-Schema ((Data Asset Governance).

Wir werden den Dataplex-Eintrag für die BigQuery-Tabelle anreichern.

Schema mit geschäftlichem Kontext anreichern (Spaltenebene)

Wir sollten Nutzern erklären, was die Spalte gmv bedeutet, indem wir sie mit dem Glossar verknüpfen.

  1. Klicken Sie in der linken Navigationsleiste von Dataplex auf Suche.
  2. Klicken Sie rechts oben auf den Tab Dataplex Universal Catalog, falls er nicht aktiviert ist.

849a24e7b1a86a19.png

  1. Suchen Sie nach retail_data.transactions. Klicken Sie auf das Ergebnis für die BigQuery-Tabelle.

54d3edd1520593a9.png

  1. Klicken Sie in den Eintragsdetails auf den Tab Schema.
  2. Klicken Sie das Kästchen in der Zeile der Spalte gmv an und klicken Sie auf Unternehmensbegriff hinzufügen.
  3. Wählen Sie den Begriff Gross Merchandise Value aus.

64768eecf630c90b.png

Die Spalte gmv ist nicht mehr nur ein „FLOAT“, sondern jetzt mit der Unternehmensdefinition von Gross Merchandise Value verknüpft.

Eintrag mit strukturierten technischen Metadaten anreichern (Tabellenebene)

Als Nächstes fügen wir der Tabelle das Data Asset Governance-Attribut hinzu, um Eigentum und Sensibilität zu definieren.

  1. Bleiben Sie auf der Seite retail_data.transactions-Eintrag.
  2. Klicken Sie auf den Tab Tag oder Aspekt hinzufügen und wählen Sie im Drop-down-Menü den Typ Data Asset Governance aus.

4b770307159a28d8.png

  1. Im Formular werden jetzt die Felder angezeigt, die in Ihrem Aspekttyp-Schema definiert sind. Füllen Sie sie so aus:
    • Datenverwalter : finance-team@example.com
    • Data Sensitivity (Vertraulichkeit von Daten): Wählen Sie Internal aus.
    • Datum der letzten Überprüfung:Wählen Sie das heutige Datum aus.
  2. Klicken Sie auf Speichern.

f953c5569520d42a.png

Sie haben dem Eintrag ein strukturiertes Attribut hinzugefügt. Im Gegensatz zu einem einfachen Tag werden diese Daten anhand des von Ihnen erstellten Schemas validiert.

6. Einheitliche Ermittlung und Überprüfung

Wir haben diese Arbeit nicht nur gemacht, um Formulare auszufüllen. Wir haben das getan, um Daten auffindbar und vertrauenswürdig zu machen. Sehen wir uns an, wie sich diese Metadaten auf die Entwicklererfahrung bei der Suche und der Auffindbarkeit auswirken.

Kehren Sie zur Hauptseite Suche in Dataplex Universal Catalog zurück.

Stellen Sie sich vor, Sie sind ein Plattformentwickler, der die Governance durchsetzt. Sie müssen alle Assets finden, die als „Internal“ gekennzeichnet sind und Ihrem spezifischen Aspekt-Typ unterliegen. Sie müssen präzise Prädikate verwenden, die auf Ihrem Schema basieren.

Sie können dies auf zwei Arten überprüfen: mit einer genauen Abfragesyntax (wichtig für die Automatisierung) oder mit interaktiven UI-Filtern.

Methode 1: Über Structured Query prüfen

  1. Geben Sie in der Suchleiste (im Suchmodus Keyword) die folgende strukturierte Anfrage ein.
aspect:data-asset-governance.data-sensitivity=Internal
  1. Sie sollten jetzt die Tabelle retail_data.transactions sehen.

49120fe4ea224359.png

Methode 2: Überprüfen über Filter-Facette in der Benutzeroberfläche

  1. Suchleiste leeren, um die Ansicht zurückzusetzen
  2. Sehen Sie sich das Feld Nach Eigenschaften filtern auf der linken Seite des Bildschirms an.
  3. Scrollen Sie nach unten und maximieren Sie den Abschnitt Data Asset Governance (dies entspricht dem von Ihnen erstellten Aspekttyp).
  4. Setzen Sie unter Vertraulichkeit der Daten ein Häkchen bei Internal.
  5. Die Suchergebnisse werden aktualisiert und enthalten die Tabelle retail_data.transactions.

4df224cb06720ec4.png

Unabhängig davon, ob Sie die typisierte Abfrage oder die UI-Filter verwenden, ist der zugrunde liegende Mechanismus derselbe.

Das ist der grundlegende Unterschied zwischen Dataplex und einem einfachen Wiki: Ihre Metadaten sind eine abfragbare Struktur. Sie können jetzt automatisierte Audits erstellen, z.B. „Find all tables where last_review_date is > 1 year ago“ (Finde alle Tabellen, in denen „last_review_date“ vor mehr als einem Jahr liegt) basiert auf dieser vorhersehbaren Struktur.

7. Umgebung bereinigen

Löschen Sie die in diesem Codelab erstellten Ressourcen, um laufende Gebühren zu vermeiden.

BigQuery-Dataset löschen

Dieser Befehl ist nicht rückgängig zu machen. Er verwendet das Flag „-f“ (force), um das Dataset und alle zugehörigen Tabellen ohne Bestätigung zu entfernen.

# Re-run these exports if your Cloud Shell session timed out
export PROJECT_ID=$(gcloud config get-value project)

# Manually type this command to confirm you are deleting the correct dataset
bq rm -r -f --dataset $PROJECT_ID:retail_data

Dataplex-Artefakte löschen

  1. Rufen Sie die Dataplex Universal Catalog-Benutzeroberfläche > Metadaten verwalten > Katalog auf.
  2. Wählen Sie unter Aspekttypen und Tag-Vorlagen den Aspekttyp „data_asset_governance“ aus und löschen Sie ihn.
  3. Gehen Sie zu Metadaten verwalten > Glossare, wählen Sie das Retail Business Glossary aus und löschen Sie es. Löschen Sie zuerst den Begriff Gross Merchandise Value und dann das Glossar.

8. Glückwunsch!

Sie haben die einfache Datenkennzeichnung hinter sich gelassen und ein grundlegendes, strukturiertes Governance-Modell in Dataplex eingerichtet.

Sie haben Folgendes gelernt:

  • Glossare beseitigen Unklarheiten in Bezug auf das Unternehmen.
  • Aspekttypen stellen den Schemakontrakt für technische Metadaten bereit.
  • Aspekte wenden dieses Schema auf tatsächliche Dateneinträge an.
  • Dataplex Search verwendet diese strukturierten Metadaten für die präzise Suche.

Wie geht es weiter?

  • Governance as Code:Verwenden Sie den Google Cloud Terraform-Anbieter, um Ihre Aspekttypen und Glossare in der Versionsverwaltung zu definieren. So sorgen Sie für einheitliche Schemas in Entwicklungs-, Test- und Produktionsumgebungen.
  • Automatisierte Tagging: Schreiben Sie eine Cloud-Funktion oder einen Cloud Build-Schritt, der durch die Erstellung eines neuen Datasets ausgelöst wird und automatisch das „Data Asset Governance“-Attribut mit Standardwerten anhängt (z.B. sensitivity=Internal, steward=TBD) und es zur Überprüfung gemeldet.