Suchsyntax für Data Catalog

In diesem Dokument wird die Syntax für Suchanfragen an Cloud Data Catalog beschrieben. Bevor Sie dieses Dokument lesen, sollten Sie die Konzepte von Data Catalog kennen, z. B. Dateneingabe, Tags und Tag-Vorlagen sowie andere Arten von Metadaten. Weitere Informationen finden Sie unter Was ist Data Catalog?

So starten Sie eine Data Catalog-Suchabfrage in der Rufen Sie in der Google Cloud Console die Data Catalog-Seite Suche auf. Wählen Sie Data Catalog als Suchmodus aus.

Zur Suche

Eine Data Catalog-Suchanfrage besteht in der einfachsten Form aus einem einzelnen Prädikat. Ein solches Prädikat kann mit mehreren Metadaten übereinstimmen:

  • Ein Teilstring eines Namens, Anzeigenamens oder einer Beschreibung eines Datenassets
  • Exakte Art eines Daten-Assets
  • Ein Teilstring eines Spaltennamens (oder verschachtelten Spaltennamen) im Schema eines Datenassets
  • Ein Teilstring einer Projekt-ID
  • Der Wert eines öffentlichen Tags, der Name einer öffentlichen Tag-Vorlage oder ein Feldname in einer öffentlichen Tag-Vorlage, die an einen Dateneintrag angehängt ist.
  • (Vorabversion) Ein String für eine E-Mail-Adresse oder einen Namen für einen Datenbevollmächtigten
  • (Vorschau) String aus einer Übersichtsbeschreibung

Die einfache Suche unterstützt keine Tag-Vorlagenfelder vom Typ datetime.

Das Prädikat foo stimmt beispielsweise mit den folgenden Entitäten überein:

  • Datenasset mit dem Namen foo.bar
  • Datenasset mit dem Anzeigenamen Foo Bar
  • Datenasset mit der Beschreibung This is the foo script.
  • Datenasset mit dem genauen Typ foo
  • Spalte foo_bar im Schema eines Datenassets
  • Verschachtelte Spalte foo_bar im Schema eines Datenassets
  • Projekt prod-foo-bar
  • Öffentliche Tag-Vorlage mit dem Namen foo, Dateneinträge, die mit der Tag-Vorlage foo getaggt sind, Anzeigename der Tag-Vorlage foo, Name des Tag-Vorlagenfelds mit dem Namen foo und Tag-Feldwert foo in einem String, Enum oder Rich-Text.
  • (Vorabversion) Datenasset mit einem Datenbetreuer namens foo.
  • (Vorschau) Daten-Asset mit einer Übersicht, die das Wort foo enthält.

Weitere Informationen zu den Rollen und Berechtigungen für die Anzeige öffentlicher und privater Tags finden Sie unter Rollen zum Aufrufen öffentlicher und privater Tags.

Qualifizierte Prädikate

Sie können ein Prädikat qualifizieren, indem Sie ihm einen Schlüssel voranstellen, der die Übereinstimmung auf ein bestimmtes Metadatenelement einschränkt.

Ein Gleichheitszeichen (=) beschränkt die Suche auf eine genaue Übereinstimmung.

Ein Doppelpunkt (:) nach dem Schlüssel entspricht dem Prädikat entweder einem Teilstring oder einem Token in den Wert in den Suchergebnissen.

Bei der Tokenisierung wird der Textfluss in eine Reihe von Tokens unterteilt, wobei jedes Token in der Regel einem einzelnen Wort entspricht.

Beispiel:

  • Mit name:foo werden Entitäten mit Namen ausgewählt, die den Teilstring foo enthalten: foo1 und barfoo.
  • Mit description:foo werden Entitäten mit dem Token foo in der Beschreibung ausgewählt: bar and foo.
  • location=foo gleicht alle Daten-Assets am angegebenen Standort mit foo als den Standortnamen.

Der Data Catalog unterstützt die folgenden Qualifier:

Kennzeichner Beschreibung
name:x Führt zu Übereinstimmung von x mit einem Teilstring der Daten-Asset-ID.
displayname:x Führt zu Übereinstimmung von x mit einem Teilstring des Anzeigenamens des Daten-Assets.
column:x Stimmt mit x als Teilstring des Spaltennamens (oder des Namens der verschachtelten Spalte) im Schema des Daten-Assets überein.
Mit dem logischen Operator AND können Sie nach einer verschachtelten Spalte suchen.
Beispiel: column:(foo bar) gleicht eine verschachtelte Spalte mit dem Pfad foo.bar ab.
description:x Führt zu Übereinstimmung von x mit einem Token in der Beschreibung des Daten-Assets.
label:bar Führt zu Übereinstimmung mit BigQuery-Datenassets, die ein Label haben (mit einem Wert) und deren Labelschlüssel bar als Teilstring hat.
label=bar Führt zu Übereinstimmung mit BigQuery-Daten-Assets, die ein Label haben (mit einem Wert) und deren Labelschlüssel dem String bar entspricht.
label:bar:x Führt zu Übereinstimmung von x mit einem Teilstring im Wert eines Labels mit Schlüssel bar, das mit einem BigQuery-Daten-Asset verknüpft ist.
label=foo:bar Führt zu Übereinstimmung mit BigQuery-Daten-Assets, deren Schlüssel foo und deren Schlüsselwert bar ist.
label.foo=bar Führt zu Übereinstimmung mit BigQuery-Daten-Assets, deren Schlüssel foo und deren Schlüsselwert bar ist.
label.foo Führt zu Übereinstimmung mit BigQuery-Daten-Assets, die ein Label haben, dessen Schlüssel dem String foo entspricht.
type=<type> Führt zu Übereinstimmung mit Datenassets eines bestimmten Objekttyps oder Subtyps. Subtypen können im folgenden Format hinzugefügt werden: <type>.<sub-type>.
Zu den Typen und Untertypen gehören:
  • type=table entspricht allen Tabellen, Ansichten und materialisierten Ansichten.
  • type=dataset führt zu Übereinstimmung mit allen Datensätzen.
  • type=table.view oder type=view stimmt mit allen Ansichten überein, aber nicht mit materialisierten Ansichten.
  • type=materialized_view führt zu Übereinstimmung mit allen materialisierten Ansichten.
  • type=lake stimmt mit allen Lakes überein.
  • type=zone führt zu Übereinstimmung mit allen Zonen.
  • type=tag_template führt zu Übereinstimmung mit allen Tag-Vorlagen.
  • type=entry_group führt zu Übereinstimmung mit allen Eintragsgruppen.
  • type=data_stream führt zu Übereinstimmung mit allen Pub/Sub-Themen.
  • (Vorschau) type=dataset.linked stimmt mit allen mit Analytics Hub verknüpften Datasets überein.
projectid:bar Führt zu Übereinstimmung mit Datenassets in Cloud-Projekten, die bar als Teilstring in der ID enthalten.
parent:x Führt zu Übereinstimmung von x mit einem Teilstring des hierarchischen Pfads eines BigQuery-Daten-Assets. Der Pfad hat das Format <project_id>.<dataset_name>.
parent:foo.bar entspricht beispielsweise allen Tabellen und Ansichten eines Datasets mit dem Pfad project-foo.bar-dataset.
orgid=number Führt zu Übereinstimmung mit Datenassets in einer Cloudorganisation mit dem genauen ID-Wert number.
system=<system> Führt zu Übereinstimmung mit allen Daten-Assets eines angegebenen Systems .
Zu den Systemen gehören:
  • system=bigquery führt zu Übereinstimmung mit allen Datenassets von BigQuery.
  • system=cloud_bigtable gleicht alle Daten-Assets aus Bigtable ab.
  • system=cloud_pubsub führt zu Übereinstimmung mit allen Datenassets von Pub/Sub.
  • system=cloud_spanner stimmt mit allen Daten-Assets aus Spanner überein.
  • system=dataproc_metastore führt zu Übereinstimmung mit allen Datenassets von Dataproc Metastore.
  • system=data_catalog führt zu Übereinstimmung mit allen Datenassets, die in Data Catalog erstellt wurden.
  • system=dataplex stimmt mit allen Daten-Assets überein, die in Dataplex erstellt wurden.
location=<location> Führt zu Übereinstimmung mit allen Daten-Assets an einem angegebenen Standort mit einem genauen Namen. Beispiel: location=us-central1 stimmt mit allen Assets überein, die in Iowa gehostet werden.
Eine vollständige Liste der unterstützten Standorte finden Sie unter Data Catalog-Regionen.
cluster_location=<location> Gleicht alle Bigtable-Daten-Assets an einem bestimmten Standort mit einem genauen Namen ab.
Beispiel: cluster_location=us-central1 stimmt mit allen Assets überein, die in Iowa gehostet werden.
Eine vollständige Liste der unterstützten Standorte finden Sie unter Bigtable-Regionen.
tag:x Führt zu Übereinstimmung mit Daten-Assets, bei denen x mit einem beliebigen Teilstring in <tag_template_project_id>.<tag_template_id>.<tag_field_id> eines privaten oder öffentlichen Tags übereinstimmt.
Beispiele:
  • tag:data_owner führt zu Übereinstimmung mit Daten-Assets, die das Tag data_owner enthalten.
  • tag:data_gov_template führt zu Übereinstimmung mit Datenassets, die mit der Tag-Vorlage data_gov_template getaggt wurden.
  • tag:mycloudproject.data_gov_template führt zu Übereinstimmung mit Datenassets, die mit der Vorlage data_gov_template im Projekt mycloudproject getaggt sind.
tag:key<operator>val Gleicht zuerst den key mit einem beliebigen Teilstring der Tag-Feld-ID, Tag-Vorlagen-ID oder Google Cloud-Projekt-ID einer Tag-Vorlage ab. Gleicht dann val mit dem Tag-Wert von key abhängig vom Tag-Feldtyp ab.
Die typabhängigen <operator>-Sets, die für Tag-Werte zulässig sind, sind:
  • string/richtext: ":"
    Hinweis: Der Doppelpunkt in dieser Stringsuche bezeichnet eine genaue Tokenübereinstimmung und keinen Teilstring.
  • boolesch und enum: "="
  • double: "=", "<", ">", "<=", ">="
  • Zeitstempel: ":", "=", "<", ">", "<=", ">="
Beispiele:
  • String: tag:data_owner:@mail.com führt zu Übereinstimmung mit Datenassets mit @mail.com -Werten.
  • boolesch: tag:data_gov_template.hasPII=true führt zu Übereinstimmung mit booleschen hasPII-Tags in data_gov_template die true sind.
  • enum: tag:certification_level_1=HIGHEST.
  • double: tag:datascore=9 führt zu Übereinstimmung mit Datenassets mit datascore-double-Tags mit dem Wert 9.
  • Zeitstempel: tag:expiredDate:2019-01-01 führt zu Übereinstimmung mit Datenassets mit einem expiredDate-Tag mit dem Wert 2019-01-01.
  • Zeitstempel: tag:expiredDate<2019-02 führt zu Übereinstimmung mit Daten-Assets, die ein expiredDate -Tag haben, dessen Zeitstempel zeitlich vor 2019-02-01T00:00:00 liegt.
Timestamp
createtime Findet Datenassets, die an bzw. zu, vor oder nach einem bestimmten Datum oder einer bestimmten Uhrzeit erstellt wurden.
Beispiele:
  • createtime:2019-01-01 führt zu Übereinstimmung mit Datenassets, die am 2019-01-01 erstellt wurden.
  • createtime<2019-02 führt zu Übereinstimmung mit Datenassets, die vor dem 2019-02-01T00:00:00 erstellt wurden.
  • createtime>2019-02 führt zu Übereinstimmung mit Datenassets, die nach dem 2019-02-01T00:00:00 erstellt wurden.
Timestamp
updatetime Findet Datenassets, die an bzw. zu, vor oder nach einem bestimmten Datum oder einer bestimmten Uhrzeit aktualisiert wurden.
Beispiele:
  • updatetime:2019-01-01 führt zu Übereinstimmung mit Datenassets, die am 2019-01-01 aktualisiert wurden.
  • updatetime<2019-02 führt zu Übereinstimmung mit Datenassets, die vor dem 2019-02-01T00:00:00 aktualisiert wurden.
  • updatetime>2019-02 führt zu Übereinstimmung mit Datenassets, die nach dem 2019-02-01T00:00:00 aktualisiert wurden.
Timestamp
policytag:x Entspricht x als Teilstring des Anzeige-Tags des Anzeigenamens. Findet alle Assets mit einem passenden Richtlinien-Tag oder seinen untergeordneten Elementen.
policytagid=x Entspricht x als Richtlinien-Tag- oder Taxonomie-ID. Findet alle Assets mit einem passenden Richtlinien-Tag oder seinen untergeordneten Elementen.
term:x Führt zu Übereinstimmung mit Datenassets, die mit einem Begriff aus dem Glossar für Unternehmen verknüpft sind, bei dem ein Teilstring des Namens, der Beschreibung oder des Datenbetreuers mit x übereinstimmt.
fully_qualified_name:x Führt zu Übereinstimmung von x mit einem Teilstring von fully_qualified_name.
fully_qualified_name=x x stimmt mit fully_qualified_name überein.

Logische Operatoren

Eine Abfrage kann aus mehreren Prädikaten mit logischen Operatoren bestehen. Wenn Sie keinen Operator angeben, wird das logische AND als Operator angenommen. Beispielsweise gibt foo bar Entitäten zurück, die sowohl mit Prädikat foo und Prädikat bar.

Logisches AND und logisches OR werden unterstützt, z. B. foo OR bar.

Ein Prädikat kann mit einem Präfix - oder NOT negiert werden. Beispiel: -name:foo gibt alle Entitäten zurück, deren Namen nicht das Prädikat foo enthalten.

Abgekürzte Syntax

Es ist auch eine abgekürzte Suchsyntax verfügbar, bei der | für OR-Operatoren und , für AND-Operatoren.

Für die Suche nach Einträgen in einem der zahlreichen Projekte mit dem Operator OR können Sie beispielsweise verwenden:

projectid:(pid1|pid2|pid3|pid4)

Anstelle von:

projectid:pid1 OR projectid:pid2 OR projectid:pid3 OR projectid:pid4

So suchen Sie nach Einträgen mit übereinstimmenden Spaltennamen:

  • AND: column:(name1, name2, name3)
  • OR: column:(name1|name2|name3)

Diese abgekürzte Syntax funktioniert für alle oben aufgeführten qualifizierten Prädikate, mit Ausnahme von tag, term, policytag, policytagid und label.