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 sich mit den Konzepten von Data Catalog wie Dateneingabe, Tags und Tag-Vorlagen sowie anderen Arten von Metadaten vertraut machen. Siehe 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

In ihrer einfachsten Form umfasst eine Data Catalog-Suchabfrage ein einzelnes Prädikat. Ein solches Prädikat kann mit mehreren Metadaten übereinstimmen:

  • Teilstring eines Namens, eines Anzeigenamens oder einer Beschreibung eines Daten-Assets
  • 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.
  • (Vorschau) Ein String für eine E-Mail-Adresse oder den Namen eines Datenverwalters
  • (Vorschau) String aus einer Übersichtsbeschreibung

Bei der einfachen Suche werden keine Tag-Vorlagenfelder vom Typ datetime unterstützt.

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.
  • (Vorschau) Daten-Asset mit einem Datenverwalter 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, das 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 Gleicht BigQuery-Daten-Assets mit einem Label (mit einem bestimmten Wert) mit dem Labelschlüssel „bar“ als String ab.
label:bar:x Stimmt mit x als Teilstring im Wert eines Labels mit dem Schlüssel bar überein, der an ein BigQuery-Daten-Asset angehängt ist.
label=foo:bar Gleicht BigQuery-Daten-Assets ab, bei denen der Schlüssel foo und das Schlüssel/Wert-Paar bar ist.
label.foo=bar Gleicht BigQuery-Daten-Assets ab, bei denen der Schlüssel foo und das Schlüssel/Wert-Paar bar ist.
label.foo Gleicht BigQuery-Daten-Assets mit einem Label ab, dessen Schlüssel foo als String ist.
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 führt zu Übereinstimmung mit allen Tabellen.
  • type=dataset stimmt mit allen Datasets überein.
  • type=table.view oder type=view führt zu Übereinstimmung mit allen Ansichten.
  • type=lake stimmt mit allen Lakes überein.
  • type=zone entspricht 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 stimmt mit allen Daten-Assets aus Bigtable überein.
  • 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 Gleicht Daten-Assets ab, bei denen x mit einem beliebigen Teilstring in <tag_template_project_id> übereinstimmt.<tag_template_id>.<tag_field_id> eines privaten oder öffentlichen Tags.
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 Gleicht Daten-Assets ab, die mit einem Begriff im Geschäftsglossar verbunden sind, wenn ein Teilstring von Name, Beschreibung oder Data Steward mit x übereinstimmt.
fully_qualified_name:x Stimmt mit x als Teilstring von fully_qualified_name überein.
fully_qualified_name=x Stimmt mit x als fully_qualified_name überein.

Logische Operatoren

Eine Abfrage kann aus mehreren Prädikate mit logischen Operatoren. Wenn Sie keinen Operator angeben, AND ist impliziert. 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.

Sie können ein Prädikat mit dem Präfix - oder NOT negieren. Beispiel: -name:foo gibt Alle Entitäten mit Namen, die nicht mit dem Prädikat foo übereinstimmen.

Abgekürzte Syntax

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

Um beispielsweise nach Einträgen in einem von vielen Projekten zu suchen, können Sie den OR verwenden. können Sie Folgendes 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 Abkürzung funktioniert für die qualifizierten Prädikate mit Ausnahme von tag, term, policytag, policytagid und label.