Daten erkennen

In diesem Leitfaden wird erläutert, wie Sie die Knowledge Catalog-Erkennung (früher Dataplex Universal Catalog) aktivieren und verwenden. Bei Discovery werden Metadaten aus Daten in einem Data Lake gescannt und extrahiert und in Dataproc Metastore, BigQuery und Data Catalog (eingestellt) für die Analyse, Suche und Exploration registriert.

Übersicht

Für jedes Knowledge Catalog-Asset, für das die Erkennung aktiviert ist, führt Knowledge Catalog Folgendes aus:

  • Scannt die mit dem Asset verknüpften Daten.
  • Gruppiert strukturierte und halbstrukturierte Dateien in Tabellen.
  • Erfasst technische Metadaten wie Tabellennamen, Schema und Partitionsdefinition.

Bei unstrukturierten Daten wie Bildern und Videos werden Gruppen von Dateien, die denselben Medientyp haben, automatisch als Filesets erkannt und registriert. Wenn gs://images/group1 beispielsweise GIF-Bilder und gs://images/group2 JPEG-Bilder enthält, werden durch Knowledge Catalog Discovery zwei Filesets erkannt und registriert. Bei strukturierten Daten wie Avro erkennt Discovery Dateien nur, wenn sie sich in Ordnern mit demselben Datenformat und Schema befinden.

Die ermittelten Tabellen und Dateigruppen werden in Data Catalog für die Suche und Ermittlung registriert. Die Tabellen werden in Dataproc Metastore als Hive-Tabellen und in BigQuery als externe Tabellen angezeigt, sodass Daten automatisch für die Analyse verfügbar gemacht werden.

Discovery unterstützt die folgenden Formate für strukturierte und semistrukturierte Daten:

Discovery unterstützt das folgende Komprimierungsformat für strukturierte und halbstrukturierte Daten:

  • Interne Komprimierung für diese Formate:

    Komprimierung Beispiel für Dateiendung Unterstütztes Format
    GZIP .gz.parquet Parquet
    LZ4 .lz4.parquet Parquet
    Snappy .snappy.parquet Parquet, ORC, Avro
    lzo .lzo.parquet Parquet, ORC
  • Externe Komprimierung für JSON- und CSV-Dateien:

    • GZIP
    • bzip2

Erkennungskonfiguration

Die Erkennung ist standardmäßig aktiviert, wenn Sie eine neue Zone oder ein neues Asset erstellen. Sie können die Discovery-Funktion auf Zonen- oder Asset-Ebene deaktivieren.

Wenn Sie eine Zone oder ein Asset erstellen, können Sie die Erkennungseinstellungen auf Zonenebene übernehmen oder auf Asset-Ebene überschreiben.

Folgende Konfigurationsoptionen für die Erkennung sind auf Zonen- und Asset-Ebene verfügbar:

  • Erkennung aktiviert und deaktiviert

  • Discovery schedule (Zeitplan für die Ermittlung): Diese Option kann auf einen vordefinierten Zeitplan (z. B. stündlich oder täglich) oder einen benutzerdefinierten Zeitplan im Cron-Format festgelegt werden. Neue Assets werden gescannt, wenn sie hinzugefügt werden. Weitere Informationen finden Sie unter Cron-Zeitpläne konfigurieren. Sie können den Discovery-Zeitplan auf einen Zeitraum zwischen 60 Minuten und 31 Tagen festlegen.

  • Ein- oder Ausschlussmuster: Legen Sie mithilfe von Glob-Mustern im Ein- oder Ausschlussmusterpfad fest, welche Dateien in Discovery-Scans ein- oder ausgeschlossen werden sollen. Wenn Sie beispielsweise gs://test_bucket/foo/.. aus der Suche ausschließen möchten, geben Sie **/foo/* als Ausschluss-Pfad ein. Anführungszeichen verursachen Fehler. Achten Sie darauf, dass Sie **/foo/* anstelle von "**/foo/*" eingeben.) Diese Funktion ist nur für Cloud Storage-Assets verfügbar. Wenn gleichzeitig Ein- und Ausschlussmuster vorhanden sind, werden Ausschlussmuster zuerst angewendet.

  • JSON- oder CSV-Spezifikationen: Damit können Sie zusätzliche Informationen zu semistrukturierten Daten wie CSV und JSON angeben, um die Genauigkeit der Discovery-Ergebnisse zu verbessern.

    • Für CSV-Dateien können Sie Folgendes angeben:

      • Trennzeichen: In dieses Feld kann ein Zeichen eingegeben werden, mit Ausnahme von \r und \n. Wenn mehr als ein Zeichen angegeben wird, wird nur das erste Zeichen des Strings verwendet. Wenn nicht angegeben, verwendet Discovery ein Komma als Trennzeichen.

      • Anzahl der Kopfzeilen:In dieses Feld kann der Wert 0 oder 1 eingegeben werden. Der Standardwert ist 0. Wenn der Wert 0 ist, führt Discovery die Ableitung von Headern durch. Wenn ein Header erkannt wird, werden die Spaltennamen aus dem Header extrahiert und der Wert wird auf 1 zurückgesetzt.

      • Codierung:In diesem Feld werden Namen für die Stringcodierung akzeptiert, z. B. UTF-8, US-ASCII oder ISO-8859-1. Wenn nichts angegeben ist, wird standardmäßig UTF-8 verwendet.

      • Typinferenz deaktivieren:Dieses Feld akzeptiert einen booleschen Wert. Die Standardeinstellung ist false. Wenn Sie die Typinferenz für CSV-Daten deaktivieren, werden alle Spalten als Strings registriert.

    • Für JSON-Dateien können Sie Folgendes angeben:

      • Codierung:In diesem Feld können Namen für die Stringcodierung angegeben werden, z. B. UTF-8, US-ASCII oder ISO-8859-1. Wenn nichts angegeben ist, wird standardmäßig UTF-8 verwendet.

      • Schlussfolgerung des Datentyps deaktivieren:In diesem Feld kann ein boolescher Wert angegeben werden. Die Standardeinstellung ist false. Wenn Sie die Typinferenz für JSON-Daten deaktivieren, werden alle Spalten als ihre einfachen Typen (String, Zahl oder boolescher Wert) registriert.

Metadaten veröffentlichen

Wenn Sie in Ihrem Knowledge Catalog-Lake eine Datenzone erstellen, wird im Projekt, das den Lake enthält, ein BigQuery-Dataset erstellt. Knowledge Catalog veröffentlicht Tabellen in diesem Dataset für Tabellen, die in den Cloud Storage-Buckets gefunden wurden, die der Datenzone als Assets hinzugefügt wurden. Das Dataset wird als Metadaten-Veröffentlichungs-Dataset bezeichnet, das der Zone entspricht.

Jede Knowledge Catalog-Datenzone wird einem Dataset in BigQuery oder einer Datenbank in Dataproc Metastore zugeordnet, in denen Metadaten automatisch verfügbar gemacht werden.

Sie können automatisch erkannte Metadaten wie Tabellenname oder Schema mit der Dataplex API bearbeiten.

Erkannte Tabellen und Dateigruppen ansehen

Sie können in der Suchansicht des Knowledge Catalog in der Google Cloud -Konsole nach erkannten Tabellen und Dateigruppen suchen.

Suche öffnen

Um genauere Suchergebnisse zu erhalten, verwenden Sie Knowledge Catalog-spezifische Filter wie Namen von Seen und Datenzonen. Die 50 wichtigsten Elemente pro Attribut werden in der Filterliste angezeigt. Über das Suchfeld können Sie nach weiteren Elementen suchen.

Jeder Eintrag enthält detaillierte technische und operative Metadaten.

Auf der Seite mit den Eintragsdetails können Sie die Tabelle in BigQuery abfragen und die entsprechenden Registrierungsdetails für Dataproc Metastore ansehen.

Wenn eine Cloud Storage-Tabelle als externe Tabelle in BigQuery veröffentlicht werden kann, sehen Sie in der Detailansicht des Eintrags Folgendes:

  • Verweise auf externe BigQuery-Tabellen
  • Eine Schaltfläche zum Öffnen in BigQuery, um mit der Analyse der Daten in BigQuery zu beginnen

Die Metadateneinträge im Knowledge Catalog sind direkt in Data Catalog sichtbar und durchsuchbar. Weitere Informationen finden Sie in der Data Catalog-Suchreferenz.

Alle erkannten Einträge können über die Dataplex API aufgerufen werden.

Aktionen zum Entdecken von Inhalten

Bei der Erkennung werden die folgenden Administratoraktionen ausgelöst, wenn bei Scans datenbezogene Probleme erkannt werden.

Ungültiges Datenformat

Zu den Aktionen gehören:

  • Uneinheitliches Datenformat in einer Tabelle. Beispiel: Dateien mit unterschiedlichen Formaten sind mit demselben Tabellenpräfix vorhanden.

  • Ungültiges Datenformat in ausgewählten Zonen (Daten nicht im Avro-, Parquet- oder ORC-Format).

Inkompatibles Schema

Zu den Aktionen gehören:

  • Ein von Discovery erkanntes Schema ist nicht mit dem aktiven Tabellenschema in der Metadaten-API in Dataproc Metastore kompatibel. Schema A und Schema B sind in den folgenden Szenarien nicht kompatibel:

    • A und B haben Felder mit demselben Namen, aber mit unterschiedlichen und inkompatiblen Datentypen. Beispiele: String und Ganzzahl.

    • A und B haben keine sich überschneidenden Felder.

    • A und B haben mindestens ein Feld, das nicht null sein darf und im anderen Schema nicht gefunden wurde.

  • Schemaabweichung von einem nutzerverwalteten Schema in der kuratierten Zone.

Ungültige Partitionsdefinition

Zu den Aktionen gehören:

  • Inkonsistente Partitionierung. Beispiel: gs://sales_data/year=2020/month=10/day=01 und gs://sales_data/year=2020/region=us.

  • Partitionsbenennung ohne Hive-Format in der ausgewählten Datenzone. Beispiel: gs://sales_data/2020/10/01 statt gs://sales_data/year=2020/month=10/day=01.

Fehlende Daten

Zu den Aktionen gehören:

  • In der Zone für kuratierte Daten sind die zugrunde liegenden Daten für eine registrierte Tabelle oder einen registrierten Fileset nicht mehr vorhanden. Das bedeutet, dass eine kuratierte Zonentabelle oder ein Fileset erkannt und registriert wurde, die zugrunde liegenden Daten jedoch später gelöscht wurden. Sie können dieses Problem beheben, indem Sie die Daten ergänzen oder den Metadateneintrag löschen.

Discovery-Aktionen ausführen

Daten mit Aktionen werden durch nachfolgende Erkennungsscans geprüft. Wenn das Problem, das die Aktion ausgelöst hat, behoben ist, wird die Aktion beim nächsten geplanten Discovery-Scan automatisch behoben.

Andere Discovery-Aktionen

Zusätzlich zu den oben genannten Discovery-Aktionen gibt es drei weitere Arten von Aktionen, die sich auf die Weitergabe von Ressourcenstatus und Sicherheitsrichtlinien im Knowledge Catalog beziehen.

  • Fehlende Ressource: Der zugrunde liegende Bucket oder das zugrunde liegende Dataset für ein vorhandenes Asset wurde nicht gefunden.

  • Nicht autorisierte Ressource: Knowledge Catalog hat nicht genügend Berechtigungen, um die Ermittlung durchzuführen oder Sicherheitsrichtlinien auf den von Knowledge Catalog verwalteten Bucket oder das von Knowledge Catalog verwaltete Dataset anzuwenden.

  • Probleme bei der Weitergabe von Sicherheitsrichtlinien: Für einen bestimmten Lake, eine bestimmte Zone oder ein bestimmtes Asset angegebene Sicherheitsrichtlinien konnten nicht erfolgreich an die zugrunde liegenden Buckets oder Datasets weitergegeben werden. Während alle anderen Aktionen auf Asset-Ebene erfolgen, kann diese Art von Aktion auf Lake-, Zonen- und Asset-Ebene ausgelöst werden.

Diese Arten von Aktionen werden automatisch behoben, wenn die zugrunde liegenden Probleme mit der Ressource oder der Sicherheitskonfiguration behoben werden.

FAQ

Was kann ich tun, wenn das von Discovery abgeleitete Schema falsch ist?

Wenn sich das abgeleitete Schema von dem unterscheidet, was für eine bestimmte Tabelle erwartet wird, können Sie das abgeleitete Schema überschreiben, indem Sie Metadaten mit der Metadata API aktualisieren. Legen Sie userManaged auf true fest, damit Ihre Änderung bei nachfolgenden Discovery-Scans nicht überschrieben wird.

Wie schließe ich Dateien von einem Discovery-Scan aus?

Standardmäßig werden bestimmte Dateitypen nicht gescannt, darunter:

  • _SUCCESS
  • _started
  • _committed
  • _metadata, _METADATA, _Metadata
  • _common_metadata, _COMMON_METADATA
  • Dateien, die mit README oder readme beginnen
  • Verzeichnisse, die mit base_, delta_, delete_delta_, bucket_ beginnen und auf die eine Zahl folgt
  • Verzeichnisse, die mit . beginnen

Sie können zusätzliche Ein- oder Ausschlussmuster angeben, indem Sie die Erkennungskonfiguration auf Zonen- oder Asset-Ebene oder die Metadata API verwenden.

Was soll ich tun, wenn die von Discovery erkannte Tabellengruppierung zu detailliert ist?

Wenn die von Discovery erkannten Tabellen auf einer detaillierteren Ebene als der Tabellenstamm-Pfad liegen, z. B. jede einzelne Partition als Tabelle registriert ist, kann das mehrere Gründe haben:

  • Es gibt Formatunterschiede, z. B. eine Mischung aus Avro- und Parquet-Dateien, im erwarteten Tabellenstammverzeichnis, die die Tabelle in kleinere Gruppen aufteilen.

  • Es gibt verschiedene Arten von Schemainkompatibilitäten im erwarteten Tabellenstammverzeichnis, die die Tabelle in kleinere Gruppen aufteilen.

Sie haben zwei Möglichkeiten, dieses Problem zu beheben:

  • Beheben Sie Format- oder Schemaunterschiede, damit alle Dateien im selben Tabellenstammverzeichnispfad ein einheitliches Format und ein kompatibles Schema haben.

  • Schließen Sie heterogene Dateien aus, indem Sie das Ausschlussmuster als Teil der Zonen-/Asset-Konfiguration oder der Metadaten-API konfigurieren.

Nachdem Sie eine der Korrekturmaßnahmen ergriffen haben, geschieht beim nächsten Erkennungsscan Folgendes:

  • Die vorhandenen Tabellen auf niedrigerer Ebene werden automatisch aus der Dataplex API, BigQuery, Dataproc Metastore und Data Catalog entfernt.
  • Stattdessen wird eine neue Tabelle auf höherer Ebene mit dem erwarteten Tabellenstamm erstellt.

Wie gebe ich Tabellennamen an?

Sie können Tabellennamen mit der Metadata API angeben.

Was passiert, wenn ich Tabellen manuell in Dataproc Metastore oder BigQuery erstelle?

Wenn die Erkennung für ein bestimmtes Asset aktiviert ist, müssen Sie Einträge nicht manuell in Dataproc Metastore oder BigQuery registrieren.

Sie können Tabellennamen, Schema und Partitionsdefinitionen manuell definieren und gleichzeitig die Knowledge Catalog-Erkennung deaktivieren. Alternativ können Sie so vorgehen:

  1. Tabelle erstellen, indem Sie nur die erforderlichen Informationen wie den Tabellenstamm angeben.
  2. Verwenden Sie Knowledge Catalog Discovery, um die restlichen Metadaten wie Schema- und Partitionsdefinitionen zu erfassen.
  3. Halten Sie die Metadaten auf dem neuesten Stand.

Was kann ich tun, wenn meine Tabelle nicht in BigQuery angezeigt wird?

Die Knowledge Catalog-Metadaten werden zwar alle zentral in der Metadaten-API registriert, aber nur Cloud Storage-Tabellen, die mit BigQuery kompatibel sind, werden als externe Tabellen in BigQuery veröffentlicht. Im Rahmen der Tabelleneintragsdetails in der Metadata API finden Sie eine Markierung für die BigQuery-Kompatibilität, die angibt, welche Einheiten in BigQuery veröffentlicht werden und warum.

Beschränkungen

  • Externe Tabellen, einschließlich externer BigLake-Tabellen, werden von Discovery nicht unterstützt. Externe Tabellen werden jedoch automatisch in Knowledge Catalog aufgenommen und Sie können stattdessen in Knowledge Catalog danach suchen.

Preise

Knowledge Catalog-Gebühren für die Ermittlung fallen im Rahmen der Standardverarbeitung an. Weitere Informationen finden Sie unter Standardverarbeitungspreise für den Knowledge Catalog.

Nächste Schritte