Daten-Assets mit Data Catalog suchen und ansehen

In diesem Dokument wird erläutert, wie Sie mit Data Catalog eine Suche nach Daten-Assets durchführen können, z. B.:

  • Mit Analytics Hub verknüpfte Datasets
  • BigQuery-Datasets, -Tabellen, -Ansichten und -Modelle
  • Bigtable-Instanzen, -Cluster und -Tabellen (einschließlich Details zu Spaltenfamilien)
  • Data Catalog-Tag-Vorlagen, Eintragsgruppen und benutzerdefinierte Einträge
  • 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-Modelle, Datasets und Ressourcen von Vertex AI Feature Store
  • Assets in Datensilos von Unternehmen, die mit Data Catalog verbunden sind

Suchbereich

Je nach Ihren Berechtigungen erhalten Sie möglicherweise unterschiedliche Suchergebnisse. Data Catalog-Suchergebnisse werden entsprechend Ihrer Rolle begrenzt.

Sie können sich die verschiedenen Arten von IAM-Rollen und -Berechtigungen ansehen, 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:

  • Um nach einer Tabelle zu suchen, benötigen Sie die Berechtigung bigquery.tables.get für diese Tabelle.

  • Um nach einem Dataset zu suchen, benötigen Sie die Berechtigung bigquery.datasets.get für dieses Dataset.

  • Zum Suchen nach Metadaten für ein Dataset oder eine Tabelle benötigen Sie die Rolle roles/bigquery.metadataViewer.

  • Um nach allen Ressourcen innerhalb eines Projekts oder einer Organisation zu suchen, 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. Dieselbe Zugriffslogik gilt für alle unterstützten Systeme wie Pub/Sub und Data Catalog selbst.

Data Catalog-Suchabfragen garantieren keinen vollständigen Recall. 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 Sie Recall-Probleme haben und die Ergebnisse nicht in einer bestimmten Reihenfolge abrufen müssen, sollten Sie den Parameter orderBy beim Aufrufen der Methode catalog.search auf default setzen.

Verwenden Sie das Flag admin_search.

Mit dem Flag admin_search in der Suchanfrage wird ein vollständiger Recall sichergestellt. Für die Administratorsuche muss die Berechtigung datacatalog.catalogs.searchAll für alle Projekte und Organisationen im Suchbereich festgelegt werden. Bei der 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.
  • Lakes und Zonen stammen von 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.
  • Tags: Zeigt eine Liste aller Tag-Vorlagen (und ihrer einzelnen Felder) an, die Ihnen zur Verfügung stehen.
  • Datasets stammen aus BigQuery und Vertex AI.
  • Öffentliche Datasets sind öffentlich verfügbare Daten von BigQuery.

Sie können Filter aus mehreren Bereichen kombinieren, um Assets zu finden, die mindestens einer Bedingung aus jedem ausgewählten Bereich entsprechen. Mehrere in einem Abschnitt ausgewählte Filter werden mithilfe des logischen Operators „OR“ ausgewertet. Nehmen wir zum Beispiel die folgende Filterkombination:

Filterbereich für Tag-Werte mit mehreren ausgewählten Abschnitten.

Data Catalog sucht nach:

  • BigQuery-Datasets mit dem Tag der Vorlage „MyTemplate1“.

  • BigQuery-Datasets mit dem Tag der Vorlage MyTemplate2.

  • BigQuery-Tabellen, die mit der Vorlage „MeineVorlage1“ getaggt sind.

  • BigQuery-Tabellen, die mit der Vorlage MyTemplate2 getaggt sind.

Nach Tag-Wert filtern

Mit den Tags-Filtern kannst du nach Assets abfragen, die mit einer bestimmten Vorlage getaggt wurden. Mit dem 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 jeweiligen Tag-Felds ab. Für Datums- und Zahlenfelder können Sie beispielsweise ein bestimmtes Datum oder einen Bereich angeben.

Sichtbarkeit der Filter

Welche Filter in den einzelnen Bereichen angezeigt werden, hängt von der aktuellen Suchanfrage im Suchfeld ab. Die gesamten Suchergebnisse können Einträge enthalten, die mit der aktuellen Abfrage übereinstimmen. Die entsprechenden Filter 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 einzugrenzen.

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.
  • In Tags einen Tag-Vorlagenfilter. Klicken Sie dazu auf das Drop-down-Menü Weitere Tag-Vorlagen hinzufügen, suchen Sie nach einer bestimmten Vorlage, wählen Sie sie aus und klicken Sie auf OK.

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

  • Klicken Sie auf das Kästchen Öffentliche Datasets einschließen, um nach Daten-Assets zu suchen, die zusätzlich zu den Ihnen zur Verfügung stehenden Assets 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 im Bereich Systeme die Option BigQuery aus, um gleichnamige Daten-Assets auszuschließen, die zu anderen Systemen gehören.
  3. Wählen Sie im Bereich Projekte Ihre Projekt-ID aus, um Daten-Assets aus anderen Projekten auszuschließen. Wenn Ihr Projekt in diesem Abschnitt nicht angezeigt wird, klicken Sie auf PROJEKT HINZUFÜGEN und wählen Sie es im Dialogfeld aus.
  4. Wählen Sie im Bereich Tag-Vorlagen die Option Demo-Tag-Vorlage aus, um zu sehen, ob ein Tag, für das diese Vorlage verwendet wird, an die Tabelle trips angehängt ist. Wenn die Vorlage in diesem Abschnitt nicht angezeigt wird, klicken Sie auf das Drop-down-Menü Weitere Tags hinzufügen, wählen Sie die gewünschte Vorlage 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 Ihren 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 zu Suchbegriffen

  • 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 der Keywords und anderer Begriffe, die Sie in einem Data Catalog-Suchausdruck verwenden können, finden Sie unter Suchsyntax für Data Catalog.

Java

Folgen Sie der Einrichtungsanleitung für Java in der Data Catalog-Kurzanleitung zur Verwendung von Clientbibliotheken, bevor Sie dieses Beispiel ausprobieren. 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

Folgen Sie der Einrichtungsanleitung für Node.js in der Data Catalog-Kurzanleitung zur Verwendung von Clientbibliotheken, bevor Sie dieses Beispiel ausprobieren. 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

Folgen Sie der Einrichtungsanleitung für Python in der Data Catalog-Kurzanleitung zur Verwendung von Clientbibliotheken, bevor Sie dieses Beispiel ausprobieren. 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 Data Catalog zum Ansehen von Tabellendetails verwenden.

  1. Rufen Sie in Dataplex die Seite Suche auf.

    Zu Data Catalog

  2. Geben Sie im Suchfeld den Namen eines Datasets ein, das eine Tabelle enthält.

    Wenn Sie beispielsweise die Kurzanleitung durchgearbeitet 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:

  • BigQuery-Tabellendetails. Dazu gehören Informationen wie der Erstellungszeitpunkt, der Zeitpunkt der letzten Änderung, der Ablaufzeitpunkt, 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 nach denselben Daten-Assets suchen, 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 Ihr Asset.

    Zu Data Catalog

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

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

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

Markierte Einträge werden in der Liste Markierte Einträge auf der Suchseite 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 Bereich > Markiert aus.

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