Daten-Assets mit Data Catalog suchen und ansehen

In diesem Dokument wird erläutert, wie Sie mit Data Catalog nach Datenassets suchen können, z. B.:

  • Verknüpfte Analytics Hub-Datasets
  • BigQuery-Datasets, -Tabellen, -Ansichten und -Modelle
  • Bigtable-Instanzen, -Cluster und -Tabellen (einschließlich Details zu Spaltenfamilien)
  • Tag-Vorlagen, Eintragsgruppen und benutzerdefinierte Einträge in Data Catalog
  • Dataplex-Lakes, -Zonen, -Tabellen und -Dateisätze
  • Dataproc Metastore-Dienste, -Datenbanken und -Tabellen
  • Pub/Sub-Datenströme
  • Spanner-Instanzen, Datenbanken, Tabellen und Ansichten
  • Vertex AI Models, Datasets und Vertex AI Feature Store-Ressourcen
  • Assets in Datensilos für Unternehmen, die mit Data Catalog verbunden sind

Suchbereich

Je nach Ihren Berechtigungen erhalten Sie möglicherweise unterschiedliche Suchergebnisse. Die Data Catalog-Suchergebnisse werden Ihrer Rolle entsprechend eingeschränkt.

Sehen Sie sich die verschiedenen Arten von IAM-Rollen und -Berechtigungen an, die für Data Catalog verfügbar sind.

Wenn Sie beispielsweise Lesezugriff auf BigQuery-Metadaten auf ein Objekt haben, wird dieses Objekt in den Data Catalog-Suchergebnissen angezeigt. In der folgenden Liste werden die mindestens erforderlichen Berechtigungen beschrieben:

  • Zum Suchen nach einer Tabelle benötigen Sie die Berechtigung bigquery.tables.get für diese Tabelle.

  • Zum Suchen nach einem Dataset benötigen Sie die Berechtigung bigquery.datasets.get für dieses Dataset.

  • Wenn Sie nach Metadaten für ein Dataset oder eine Tabelle suchen möchten, benötigen Sie die Rolle roles/bigquery.metadataViewer.

  • Wenn Sie nach allen Ressourcen in einem Projekt oder einer Organisation suchen möchten, benötigen Sie die Berechtigung datacatalog.catalogs.searchAll. Sie funktioniert für alle Ressourcen unabhängig vom Quellsystem.

Wenn Sie Zugriff auf eine BigQuery-Tabelle haben, aber nicht auf das Dataset, das diese Tabelle enthält, wird die Tabelle in der Data Catalog-Suche weiterhin wie erwartet angezeigt. Für alle unterstützten Systeme wie Pub/Sub und Data Catalog selbst gilt dieselbe Zugriffslogik.

Bei Data Catalog-Suchanfragen ist kein vollständiger Rückruf garantiert. Ergebnisse, die Ihrer Abfrage entsprechen, werden möglicherweise auch auf nachfolgenden Ergebnisseiten nicht zurückgegeben. Außerdem können die zurückgegebenen (und nicht zurückgegebenen) Ergebnisse variieren, wenn Sie Suchanfragen wiederholen.

Wenn Rückrufprobleme auftreten und Sie die Ergebnisse nicht in einer bestimmten Reihenfolge abrufen müssen, sollten Sie den orderBy-Parameter auf default setzen, wenn Sie die Methode catalog.search aufrufen.

Die Verwendung des Flags admin_search für die Suchanfrage garantiert einen vollständigen Recall. Die Administratorsuche benötigt die Berechtigung datacatalog.catalogs.searchAll für alle Projekte und Organisationen im Suchbereich. Bei Verwendung von admin_search ist nur default orderBy zulässig.

Nach Datum getrennte Tabellen

Data Catalog aggregiert nach Datum fragmentierte Tabellen zu einem einzigen logischen Eintrag. Dieser Eintrag hat dasselbe Schema wie die Tabelle mit dem neuesten Datum und enthält zusammengefasste Informationen über die Gesamtzahl der Shards. Der Eintrag bezieht sich auf die Zugriffsebene des Datasets, zu dem er gehört. In der Data Catalog-Suche werden diese logischen Einträge nur angezeigt, wenn der Nutzer Zugriff auf das Dataset hat, in dem sie enthalten sind. Einzelne datumsfragmentierte Tabellen sind in der Data Catalog-Suche nicht sichtbar, auch wenn sie in Data Catalog vorhanden sind und getaggt werden können.

Filter

Mit Filtern können Sie die Suchergebnisse eingrenzen. Alle Filter werden in Abschnitten gruppiert:

  • Umfang, um die Suche auf markierte Elemente zu beschränken.
  • Systeme wie BigQuery, Pub/Sub, Dataplex, Dataproc Metastore, benutzerdefinierte Systeme, Vertex AI und Data Catalog selbst. Das Data Catalog-System enthält Dateisätze und benutzerdefinierte Einträge.
  • Seen und Zonen stammen aus Dataplex.
  • Datentypen wie Datenstreams, Datasets, Lakes, Zonen, Dateisätze, Modelle, Tabellen, Ansichten, Dienste, Datenbanken und benutzerdefinierte Typen.
  • Unter Projekte werden alle verfügbaren Projekte aufgelistet.
  • Unter Tags werden alle Tag-Vorlagen (sowie die entsprechenden Felder) aufgelistet, die Ihnen zur Verfügung stehen.
  • Datasets stammen aus BigQuery und Vertex AI.
  • Öffentliche Datasets sind öffentlich verfügbare Daten aus BigQuery.

Sie können Filter aus mehreren Bereichen kombinieren, um Assets zu finden, die mindestens einer Bedingung aus jedem ausgewählten Bereich entsprechen. Mehrere innerhalb eines einzelnen Abschnitts ausgewählte Filter werden mit dem logischen Operator „OR“ ausgewertet. Nehmen wir z. B. die folgende Filterkombination:

Filterbereich für Tag-Wert mit mehreren ausgewählten Bereichen.

Data Catalog sucht nach:

  • BigQuery-Datasets mit dem Tag „MyTemplate1“.

  • BigQuery-Datasets mit dem Tag „MyTemplate2“.

  • Mit der Vorlage „MyTemplate1“ getaggte BigQuery-Tabellen.

  • Mit der Vorlage „MyTemplate2“ getaggte BigQuery-Tabellen.

Nach Tag-Wert filtern

Mit den Tags-Filtern kannst du Assets abfragen, die mit einer bestimmten Vorlage getaggt wurden. Über das Menü Anpassen können Sie die Ergebnisse weiter verfeinern und nach bestimmten Tag-Werten filtern. Die Filterbedingungen für Tag-Werte hängen vom Datentyp des Tag-Felds ab. Für Datum/Uhrzeit- und Zahlenfelder können Sie beispielsweise ein bestimmtes Datum oder einen Bereich angeben.

Sichtbarkeit von Filtern

Welche Filter in den einzelnen Abschnitten angezeigt werden, hängt von der aktuellen Suchanfrage im Suchfeld ab. Die gesamte Gruppe von Suchergebnissen kann Einträge enthalten, die der aktuellen Abfrage entsprechen. Die Filter, die diesen Einträgen entsprechen, werden jedoch möglicherweise nicht im Bereich Filter angezeigt.

Nach Daten-Assets suchen

Console

Console

  1. Rufen Sie die Seite Dataplex-Suche auf, um eine Dataplex-Suchabfrage in der Google Cloud Console zu starten.

    Dataplex Search aufrufen

  2. Geben Sie Ihre Suchanfrage in das Suchfeld ein oder verwenden Sie den Bereich Filter, um die Suchparameter zu verfeinern.

Sie können die folgenden Filter manuell hinzufügen:

  • Projektfilter in Projekten, indem Sie auf die Schaltfläche PROJEKT HINZUFÜGEN klicken, nach einem bestimmten Projekt suchen, es auswählen und auf ÖFFNEN klicken.
  • Wählen Sie unter Tags einen Tag-Vorlagenfilter aus, indem Sie auf das Drop-down-Menü Weitere Tag-Vorlagen hinzufügen klicken, nach einer bestimmten Vorlage suchen, sie auswählen und auf OK klicken.

Sie können auch regelmäßiger Leser eines Blogs oder einer URL

  • Klicken Sie das Kästchen Öffentliche Datasets einschließen an, um neben den verfügbaren Assets nach Daten-Assets zu suchen, die in Google Cloud öffentlich verfügbar sind.

Suchbeispiel

So suchen Sie beispielsweise nach der Tabelle trips, die Sie unter Tag-Vorlagen, Tags, Übersichten und Data Stewards konfigurieren eingerichtet haben:

  1. Geben Sie trips in das Suchfeld ein und klicken Sie auf Suchen.
  2. Wählen Sie BigQuery im Bereich Systeme aus, um Daten-Assets mit demselben Namen wie andere Systeme auszuschließen.
  3. Wählen Sie im Bereich Projekte Ihre Projekt-ID aus, um Daten-Assets aus anderen Projekten auszuschließen. Wenn Ihr Projekt nicht in dem Abschnitt angezeigt wird, klicken Sie auf PROJEKT HINZUFÜGEN und wählen Sie es im Dialogfeld aus.
  4. Wählen Sie im Abschnitt Tag-Vorlagen die Demo-Tag-Vorlage aus, um zu sehen, ob ein Tag, das diese Vorlage verwendet, an die Tabelle trips angehängt ist. Wenn die Vorlage nicht im Bereich angezeigt wird, klicken Sie auf das Drop-down-Menü Weitere Tags hinzufügen, wählen Sie sie aus und klicken Sie auf OK.

Bei allen ausgewählten Filtern enthalten die Suchergebnisse nur einen Eintrag: die BigQuery-Tabelle trips in Ihrem Projekt mit einem angehängten Tag, das Demo Tag Template verwendet.

Außerdem haben Sie folgende Möglichkeiten:

  1. Filtern Sie Ihre Suche, indem Sie den Suchbegriffen im Suchfeld keyword:value hinzufügen:

    SuchbegriffBeschreibung
    name: Übereinstimmung mit dem Namen des Datenassets
    column: Übereinstimmung mit dem Spaltennamen oder dem verschachtelten Spaltennamen
    description: Übereinstimmung mit der Tabellenbeschreibung

  2. Führen Sie eine Tag-Suche durch, indem Sie den Suchbegriffen im Suchfeld eines der folgenden Tag-Keyword-Präfixe hinzufügen:

    TagBeschreibung
    tag:project-name.tag_template_name Stimmt mit Tag-Namen überein.
    tag:project-name.tag_template_name.key Stimmt mit Tag-Schlüssel überein.
    tag:project-name.tag_template_name.key:value Stimmt mit Tag-key:string value-Paar überein

Tipps für Suchausdrücke

  • Setzen Sie den Suchausdruck in Anführungszeichen („search terms“), wenn er Leerzeichen enthält.

  • Sie können einem Schlüsselwort „NOT“ (in Großbuchstaben) voranstellen, um der logischen Negation des Filters keyword:term zu entsprechen. Sie können auch die Booleschen Operatoren "AND" und "OR" (in Großbuchstaben) verwenden, um Suchausdrücke zu kombinieren.

    Beispiel:NOT column:term listet alle Spalten mit Ausnahme der Spalten auf, die dem angegebenen Begriff entsprechen. Eine Liste mit Suchbegriffen und anderen Begriffen, die Sie in einem Data Catalog-Suchausdruck verwenden können, finden Sie unter Data Catalog-Suchsyntax.

Java

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Java in der Data Catalog-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Data Catalog Java API.

Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei Data Catalog zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

import com.google.cloud.datacatalog.v1.DataCatalogClient;
import com.google.cloud.datacatalog.v1.DataCatalogClient.SearchCatalogPagedResponse;
import com.google.cloud.datacatalog.v1.SearchCatalogRequest;
import com.google.cloud.datacatalog.v1.SearchCatalogRequest.Scope;
import com.google.cloud.datacatalog.v1.SearchCatalogResult;
import java.io.IOException;

// Sample to search catalog
public class SearchAssets {

  public static void main(String[] args) throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    String projectId = "my-project-id";
    String query = "type=dataset";
    searchCatalog(projectId, query);
  }

  public static void searchCatalog(String projectId, String query) throws IOException {
    // Create a scope object setting search boundaries to the given organization.
    // Scope scope = Scope.newBuilder().addIncludeOrgIds(orgId).build();

    // Alternatively, search using project scopes.
    Scope scope = Scope.newBuilder().addIncludeProjectIds(projectId).build();

    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the "close" method on the client to safely clean up any remaining background resources.
    try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
      // Search the catalog.
      SearchCatalogRequest searchCatalogRequest =
          SearchCatalogRequest.newBuilder().setScope(scope).setQuery(query).build();
      SearchCatalogPagedResponse response = dataCatalogClient.searchCatalog(searchCatalogRequest);

      System.out.println("Search results:");
      for (SearchCatalogResult result : response.iterateAll()) {
        System.out.println(result);
      }
    }
  }
}

Node.js

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Node.js in der Data Catalog-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Data Catalog Node.js API.

Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei Data Catalog zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

// Import the Google Cloud client library.
const {DataCatalogClient} = require('@google-cloud/datacatalog').v1;
const datacatalog = new DataCatalogClient();

async function searchAssets() {
  // Search data assets.

  /**
   * TODO(developer): Uncomment the following lines before running the sample.
   */
  // const projectId = 'my_project'; // Google Cloud Platform project

  // Set custom query.
  const query = 'type=lake';

  // Create request.
  const scope = {
    includeProjectIds: [projectId],
    // Alternatively, search using Google Cloud Organization scopes.
    // includeOrgIds: [organizationId],
  };

  const request = {
    scope: scope,
    query: query,
  };

  const [result] = await datacatalog.searchCatalog(request);

  console.log(`Found ${result.length} datasets in project ${projectId}.`);
  console.log('Datasets:');
  result.forEach(dataset => {
    console.log(dataset.relativeResourceName);
  });
}
searchAssets();

Python

Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Python in der Data Catalog-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Data Catalog Python API.

Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei Data Catalog zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

from google.cloud import datacatalog_v1

datacatalog = datacatalog_v1.DataCatalogClient()

# TODO: Set these values before running the sample.
project_id = "project_id"

# Set custom query.
search_string = "type=dataset"
scope = datacatalog_v1.types.SearchCatalogRequest.Scope()
scope.include_project_ids.append(project_id)

# Alternatively, search using organization scopes.
# scope.include_org_ids.append("my_organization_id")

search_results = datacatalog.search_catalog(scope=scope, query=search_string)

print("Results in project:")
for result in search_results:
    print(result)

REST UND BEFEHLSZEILE

REST

Wenn Sie keinen Zugriff auf Cloud Client-Bibliotheken für Ihre Sprache haben oder das API mithilfe von REST-Anforderungen testen möchten, sehen Sie sich die folgenden Beispiele an und lesen Sie die Dokumentation zur Data Catalog REST API.

1. Katalog durchgehen

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • organization-id: ID der GCP-Organisation
  • project-id: GCP-Projekt-ID

HTTP-Methode und URL:

POST https://datacatalog.googleapis.com/v1/catalog:search

JSON-Text der Anfrage:

{
  "query":"trips",
  "scope":{
    "includeOrgIds":[
      "organization-id"
    ]
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

{
  "results":[
    {
      "searchResultType":"ENTRY",
      "searchResultSubtype":"entry.table",
"relativeResourceName":"projects/project-id/locations/US/entryGroups/@bigquery/entries/entry1-id",
      "linkedResource":"//bigquery.googleapis.com/projects/project-id/datasets/demo_dataset/tables/taxi_trips"
    },
    {
      "searchResultType":"ENTRY",
      "searchResultSubtype":"entry.table",
      "relativeResourceName":"projects/project-id/locations/US/entryGroups/@bigquery/entries/entry2-id",
      "linkedResource":"//bigquery.googleapis.com/projects/project-id/datasets/demo_dataset/tables/tlc_yellow_trips_2018"
    }
  ]
}

Tabellendetails anzeigen

In der Cloud Console können Sie mit Data Catalog Tabellendetails ansehen.

  1. Rufen Sie in Dataplex die Seite Suche auf.

    Zu Data Catalog

  2. Geben Sie im Suchfeld den Namen eines Datasets mit einer Tabelle ein.

    Wenn Sie beispielsweise den Schnellstart abgeschlossen haben, können Sie nach demo-dataset suchen und die Tabelle trips auswählen.

  3. Klicken Sie auf die Tabelle.

    Die Seite BigQuery-Tabellendetails wird geöffnet.

Die Tabellendetails umfassen die folgenden Abschnitte:

  • Details zur BigQuery-Tabelle Dazu gehören Informationen wie Erstellungszeitpunkt, Zeitpunkt der letzten Änderung, Ablaufzeit, Ressourcen-URLs, Labels usw.

  • Tags: Listet die angewendeten Tags auf.Sie können die Tags auf dieser Seite bearbeiten und die Tag-Vorlage ansehen. Klicken Sie auf das Symbol Aktionen.

  • Schema- und Spalten-Tags: Listet das angewendete Schema und die zugehörigen Werte auf.

Lieblingseinträge markieren und danach suchen

Wenn Sie häufig dieselben Daten-Assets aufrufen, können Sie deren Einträge in eine personalisierte Liste aufnehmen, indem Sie sie mit Sternen markieren. Gehen Sie dazu in der Dataplex-UI so vor:

  1. Rufen Sie die Dataplex-Suchseite auf und suchen Sie das Asset.

    Zu Data Catalog

  2. Sie haben zwei Möglichkeiten, den Eintrag zu markieren:

    • Klicken Sie auf das Symbol neben dem Eintrag in den Suchergebnissen.
    • Klicken Sie auf den Namen des Eintrags, um die zugehörige Detailseite zu öffnen, und dann oben in der Aktionsleiste auf die Schaltfläche Stern.

Sie können bis zu 200 Einträge markieren.

Markierte Einträge werden auf der Suchseite in der Liste Markierte Einträge angezeigt, bevor Sie eine Suchanfrage in die Suchleiste eingeben. Diese Liste ist nur für dich sichtbar.

Wenn Sie nur nach markierten Einträgen suchen möchten, wählen Sie im Bereich Filter die Option Umfang > Markiert aus.

Sie können auch die entsprechenden Methoden der Data Catalog API verwenden, um Einträge zu markieren oder ihre Markierung aufzuheben. Verwende bei der Suche nach Assets den Parameter starredOnly im scope-Objekt. Siehe catalog.search-Methode.