Suchsyntax für Knowledge Catalog

In diesem Dokument wird die Syntax für die Suche in Knowledge Catalog beschrieben.

Mit Knowledge Catalog können Sie die Daten Ihrer Organisation ermitteln, zentral katalogisieren, verwalten und analysieren. Um bestimmte Daten-Assets in Ihrem Datenkatalog effizient zu finden, können Sie leistungsstarke Suchanfragen verwenden. Die Syntax für Suchanfragen umfasst:

  • Einfache Suche: So finden Sie Daten-Assets mit einem einzelnen Suchbegriff.
  • Qualifizierte Prädikate: So verfeinern Sie Ihre Suche mit bestimmten Metadatenfeldern wie Name, Standort oder Beschreibung.
  • Aspektsuche: So suchen Sie nach Einträgen anhand der angehängten geschäftlichen und technischen Metadaten.
  • Logische Operatoren: So kombinieren Sie mehrere Suchkriterien mit „UND“ und „ODER“, um komplexe Abfragen zu erstellen. Wenn Sie diese Syntax verstehen, können Sie die benötigten Daten schnell finden.

Hinweis

Machen Sie sich mit Knowledge Catalog-Eintragsgruppen, -Einträgen, -Eintragslinks, -Aspekten, -Eintragstypen, -Eintragslinktypen und -Aspekttypen vertraut. Weitere Informationen finden Sie unter Metadatenverwaltung in Knowledge Catalog.

Knowledge Catalog bietet eine Suche, die KI nutzt, um Anfragen in natürlicher Sprache und semantische Bedeutung zu verstehen. So können Sie Ressourcen in Alltagssprache finden, ohne dass eine komplexe Syntax erforderlich ist. Außerdem werden Keyword-Abgleich und Filter unterstützt.

Sie können Assets finden, indem Sie einen Begriff oder eine Wortgruppe ohne bestimmte Syntax eingeben. Knowledge Catalog führt eine umfassende Suche durch, indem Ihre Anfrage mit mehreren Metadatenfeldern abgeglichen wird, darunter:

  • Name, Anzeigename oder Beschreibung einer Ressource
  • Typ einer Ressource
  • Projekt-ID
  • Übersichtsbeschreibung
  • Spaltenname (oder verschachtelter Spaltenname) im Schema einer Ressource
  • Spaltenbeschreibung
  • Vollständig qualifizierter Name
  • Kontakte
  • Aspekte

Abfragesyntax verwenden

Für genauere Suchanfragen können Sie eine Abfrage mit einer bestimmten Syntax erstellen, einschließlich Qualifiern, logischen Operatoren und Aspektsuchen.

Qualifizierte Prädikate

Sie können ein Prädikat qualifizieren, indem Sie ihm einen Schlüssel voranstellen, der den Abgleich auf einen bestimmten Teil der Metadaten beschränkt:

  • Ein Gleichheitszeichen (=) beschränkt die Suche auf eine genaue Übereinstimmung.
  • Ein Doppelpunkt (:), nachdem der Schlüssel das Prädikat mit einem Teilstring oder Token innerhalb des Werts in den Suchergebnissen vergleicht.

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

Beispiel:

  • name:foo wählt Ressourcen mit Namen aus, die den Teilstring foo enthalten, z. B. foo1 und barfoo.
  • description:foo wählt Ressourcen mit dem Token foo in der Beschreibung aus, z. B. bar und foo.
  • location=foo führt zu Übereinstimmung mit Ressourcen an einem bestimmten Standort mit foo als Standortname.

Das Verhalten dieser Qualifier kann je nach Suchmodus leicht variieren, wie in den folgenden Abschnitten beschrieben.

Die Prädikatschlüssel type, system, location und description sowie die Aspekt suche (ohne has) unterstützen nur den Qualifier für die genaue Übereinstimmung (=), nicht den Qualifier für den Teilstring (:). Beispiel: type=foo.

Die Knowledge Catalog-Suche unterstützt die folgenden Qualifier:

Qualifier Beschreibung
name:x Führt zu Übereinstimmung von x mit einem Teilstring der Ressourcen-ID oder des Anzeigenamens der Ressource.
displayname:x Führt zu Übereinstimmung von x mit einem Teilstring des Anzeigenamens der Ressource.
column:x Führt zu Übereinstimmung von x mit einem Teilstring des Spaltennamens (oder verschachtelten Spaltennamens) im Schema der Ressource.
description:x Führt zu Übereinstimmung von x mit einem Token in der Beschreibung der Ressource.
labels:bar Führt zu Übereinstimmung mit BigQuery-Ressourcen, die ein Label haben (mit einem Wert) und deren Labelschlüssel bar als Teilstring hat.
labels=bar Führt zu Übereinstimmung mit BigQuery-Ressourcen, die ein Label haben (mit einem Wert) und deren Labelschlüssel als String gleich bar ist.
labels.bar:x Führt zu Übereinstimmung von x mit einem Teilstring im Wert eines Labels mit Schlüssel bar das an eine BigQuery-Ressource angehängt ist.
labels.foo=bar Führt zu Übereinstimmung mit BigQuery-Ressourcen, bei denen der Schlüssel gleich foo und der Schlüsselwert gleich bar ist.
type=TYPE Führt zu Übereinstimmung mit Ressourcen eines bestimmten Eintragstyps oder seines Typ-Alias.
projectid:bar Führt zu Übereinstimmung mit Ressourcen in Google Cloud Projekten, die bar als Teilstring in der ID enthalten.
parent:x Führt zu Übereinstimmung von x mit einem Teilstring des hierarchischen Pfads einer Ressource.
system=SYSTEM Führt zu Übereinstimmung mit Ressourcen aus einem bestimmten System.
location=LOCATION

Führt zu Übereinstimmung mit Ressourcen an einem bestimmten Standort mit einem genauen Namen. Beispiel: location=us-central1 führt zu Übereinstimmung mit Assets, die in Iowa gehostet werden.

BigQuery Omni-Assets unterstützen diesen Qualifier mit dem BigQuery Omni-Standortnamen. Beispiel: location=aws-us-east-1 führt zu Übereinstimmung mit BigQuery Omni Assets in Nord-Virginia.

createtime

Findet Ressourcen, die innerhalb, vor oder nach einem bestimmten Datum oder einer bestimmten Uhrzeit erstellt wurden.

Beispiel:

  • createtime:2019-01-01 führt zu Übereinstimmung mit allen Ressourcen, die am 01.01.2019 erstellt wurden.
  • createtime<2019-02 führt zu Übereinstimmung mit allen Ressourcen, die vor dem 01.02.2019 um 00:00:00 Uhr erstellt wurden.
  • createtime>2019-02 führt zu Übereinstimmung mit allen Ressourcen, die nach dem 01.02.2019 um 00:00:00 Uhr erstellt wurden.
  • createtime>-30d führt zu Übereinstimmung mit allen Ressourcen, die in den letzten 30 Tagen erstellt wurden.
  • createtime<=-30d führt zu Übereinstimmung mit allen Ressourcen, die vor 30 Tagen oder früher erstellt wurden.
  • createtime<=-1d führt zu Übereinstimmung mit allen Ressourcen, die am Vortag erstellt wurden.

Zeitstempelformat: YYYY-MM-DDThh:mm:ss

Alle Zeitstempel müssen in GMT angegeben sein. Zeitzonen werden nicht unterstützt. Teilzeitstempel sowie die Datumstrennzeichen „-“ (-) und „/“ (/) werden unterstützt.

Beispiel:

  • 2010-10-22T05:36:24
  • 2010-10-22T05:36
  • 2010-10-22T05
  • 2010-10-22
  • 2010-10
  • 2010
  • 2010/10/22
updatetime

Findet Ressourcen, die innerhalb, vor oder nach einem bestimmten Datum oder einer bestimmten Uhrzeit aktualisiert wurden.

Beispiel:

  • updatetime:2019-01-01 führt zu Übereinstimmung mit allen Ressourcen, die am 01.01.2019 aktualisiert wurden.
  • updatetime<2019-02 führt zu Übereinstimmung mit allen Ressourcen, die vor dem 01.02.2019 um 00:00:00 Uhr aktualisiert wurden.
  • updatetime>2019-02 führt zu Übereinstimmung mit allen Ressourcen, die nach dem 01.02.2019 um 00:00:00 Uhr aktualisiert wurden.
  • updatetime>-30d führt zu Übereinstimmung mit allen Ressourcen, die in den letzten 30 Tagen aktualisiert wurden.
  • updatetime<-30d führt zu Übereinstimmung mit allen Ressourcen, die vor 30 Tagen oder früher aktualisiert wurden.
  • updatetime=-1d führt zu Übereinstimmung mit allen Ressourcen, die am Vortag aktualisiert wurden.
  • updatetime>=-30d führt zu Übereinstimmung mit allen Ressourcen, die in den letzten 30 Tagen aktualisiert wurden.
  • updatetime<=-30d führt zu Übereinstimmung mit allen Ressourcen, die vor 30 Tagen oder früher aktualisiert wurden.

Zeitstempelformat: YYYY-MM-DDThh:mm:ss

Alle Zeitstempel müssen in GMT angegeben sein. Zeitzonen werden nicht unterstützt. Teilzeitstempel sowie die Datumstrennzeichen „-“ (-) und „/“ (/) werden unterstützt.

Beispiel:

  • 2010-10-22T05:36:24
  • 2010-10-22T05:36
  • 2010-10-22T05
  • 2010-10-22
  • 2010-10
  • 2010
  • 2010/10/22

Sie können die Abfragesyntax verwenden, um nach Einträgen anhand der angehängten Aspekte zu suchen.

Beim Abgleich von Teilstrings wird versucht, eine Übereinstimmung mit einer begrenzten Anzahl von Aspekten zu finden. Wenn Sie den Eintrag nicht mit einem Teil des Pfads finden können, verwenden Sie den vollständigen Pfad, um die Suche einzugrenzen und die Trefferquote zu erhöhen.

Qualifier Beschreibung
aspect:x
oder
has:x
Führt zu Übereinstimmung von x mit einem Teilstring des vollständigen Pfads zum Aspekttyp eines Aspekts, der an den Eintrag angehängt ist, im Format projectid.location.ASPECT_TYPE_ID
aspect=x
oder
has=x
Führt zu Übereinstimmung von x mit dem vollständigen Pfad zum Aspekttyp eines Aspekts, der an den Eintrag angehängt ist, im Format projectid.location.ASPECT_TYPE_ID
x
OPERATOR
value

Sucht nach Werten für Aspektfelder. Führt zu Übereinstimmung von x mit einem Teilstring des vollständigen Pfads zum Aspekttyp und Feldnamen eines Aspekts, der an den Eintrag angehängt ist, in den folgenden Formaten:

  • Syntax für Systemaspekttypen:

    • ASPECT_TYPE_ID.FIELD_NAME
    • dataplex-types.ASPECT_TYPE_ID.FIELD_NAME
    • dataplex-types.LOCATION.ASPECT_TYPE_ID.FIELD_NAME

    Die folgenden Abfragen führen beispielsweise zu Übereinstimmung mit Einträgen, bei denen der Wert des Felds type im Aspekt bigquery-dataset gleich default ist:

    • bigquery-dataset.type=default
    • dataplex-types.bigquery-dataset.type=default
    • dataplex-types.global.bigquery-dataset.type=default
  • Syntax für benutzerdefinierte Aspekttypen:

    • Wenn der Aspekt in der globalen Region erstellt wurde: PROJECT_ID.ASPECT_TYPE_ID.FIELD_NAME
    • Wenn der Aspekt in einer bestimmten Region erstellt wurde: PROJECT_ID.REGION.ASPECT_TYPE_ID.FIELD_NAME

    Die folgenden Abfragen führen beispielsweise zu Übereinstimmung mit Einträgen, bei denen der Wert des Felds is-enrolled im employee-info Aspekt gleich true ist.

    • example-project.us-central1.employee-info.is-enrolled=true
    • example-project.employee-info.is-enrolled=true

    Die Liste der unterstützten Operatoren hängt vom Feldtyp im Aspekt ab:

    • String: = (genaue Übereinstimmung)
    • Alle Zahlentypen: =, :, <, >, <=, >=, =>, =<
    • Enum: =
    • Datum/Uhrzeit: wie bei Zahlen, aber die zu vergleichenden Werte werden als Datum/Uhrzeit und nicht als Zahlen behandelt
    • Boolesch: =

Nur Felder der obersten Ebene des Aspekts können durchsucht werden.

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. Beispiel: foo bar gibt Ressourcen zurück, die sowohl mit dem Prädikat foo als auch mit dem Prädikat bar übereinstimmen.
  • Die logischen Operatoren AND und OR werden unterstützt. Beispiel: foo OR bar.
  • Sie können ein Prädikat mit einem Präfix aus - (Bindestrich) oder NOT negieren. Beispiel: -name:foo gibt Ressourcen mit Namen zurück, die nicht mit dem Prädikat foo übereinstimmen.

Abgekürzte Syntax

Außerdem ist eine abgekürzte Suchsyntax verfügbar, die | (senkrechter Strich) für OR-Operatoren und , (Komma) für AND-Operatoren verwendet.

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

projectid:(id1|id2|id3|id4)

Dieselbe Suche ohne abgekürzte Syntax sieht so aus:

projectid:id1 OR projectid:id2 OR projectid:id3 OR projectid:id4

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

  • UND: column:(name1,name2,name3)
  • ODER: column:(name1|name2|name3)

Diese abgekürzte Syntax funktioniert für die qualifizierten Prädikate mit Ausnahme von label in der Keyword Suche.

Knowledge Catalog bietet einen Suchmodus, der nur Keywords verwendet, um die Abwärtskompatibilität zu gewährleisten. Der Standardmodus unterstützt sowohl semantische als auch Keyword-Optionen. Wir empfehlen, den Standardmodus zu verwenden, es sei denn, die Suche nur mit Keywords ist für die Abwärtskompatibilität erforderlich.

In der folgenden Tabelle sind die wichtigsten Unterschiede bei den Qualifiern zusammengefasst, die Sie bei der Suche nur mit Keywords berücksichtigen müssen.

Qualifier Wichtige Unterschiede
name:x Führt zu Übereinstimmung von x mit einem Teilstring der Ressourcen-ID.
label-Qualifier

Verwendet das label Präfix anstelle von labels. Unterstützte Syntaxformate:

  • label:bar
  • label=bar
  • label:bar:x
  • label=foo:bar
  • label.foo=bar
  • label.foo
orgid=number Führt zu Übereinstimmung mit Ressourcen in einer Google Cloud Organisation mit dem genauen ID-Wert number. Wird nur bei der Suche nur mit Keywords unterstützt.
fully_qualified_name Unterstützt fully_qualified_name:x (Abgleich von Teilstrings) und fully_qualified_name=x (genaue Übereinstimmung). Wird nur bei der Suche nur mit Keywords unterstützt.
createtime und updatetime Unterstützt nur den Operator für das genaue Datum (:) und grundlegende Vergleichsoperatoren (<, >). Unterstützt keine Filter für relative Zeiträume (z. B. -30d oder -1d) oder Vergleichsoperatoren wie <=, >=, =, =>, =<.
Einschränkung auf genaue Übereinstimmung Die Prädikatschlüssel type, system, location, und orgid unterstützen nur die genaue Übereinstimmung (=), nicht den Abgleich von Teilstrings (:).

Aspektsuche bei der Suche nur mit Keywords

In der folgenden Tabelle sind die wichtigsten Unterschiede bei der Aspektsuche zusammengefasst, die Sie bei der Suche nur mit Keywords berücksichtigen müssen.

Aspektsuchelement Wichtige Unterschiede
Qualifier-Präfix Unterstützt aspect: und aspect=. Unterstützt nicht has: oder has=.
Syntax für die Suche nach Werten für Aspektfelder Erfordert das Präfix aspect:, wenn nach Werten für Aspekt felder gesucht wird (Format: aspect:x OPERATOR value, z. B. aspect:employee-info.is-enrolled=true oder aspect:employee=true).
Operatoren für Stringfelder Stringfelder unterstützen sowohl die genaue Übereinstimmung (=) als auch den Abgleich von Teilstrings (:).
Abkürzungen für Systemaspekttypen Unterstützt keine Abkürzungen für Systemaspekttypen wie ASPECT_TYPE_ID.FIELD_NAME oder dataplex-types...).

Nächste Schritte