Hive-Datenherkunft aktivieren

In diesem Dokument wird beschrieben, wie Sie die Datenherkunft für Managed Service for Apache Spark Hive-Jobs aktivieren und verwenden.

Sie aktivieren die Datenherkunft für Managed Service for Apache Spark Hive-Jobs mit einer Initialisierungsaktion , wenn Sie einen Cluster erstellen.

Wenn Sie die Hive-Datenherkunft in einem Cluster aktivieren, werden bei Hive-Jobs, die Sie an den Cluster senden, Datenherkunftsereignisse erfasst und in Knowledge Catalog veröffentlicht.

Herkunftsinformationen visualisieren

Ein Datenherkunftsdiagramm zeigt Beziehungen zwischen Ihren Projektressourcen und den Prozessen, mit denen sie erstellt wurden. Sie können in der Google Cloud Console über Knowledge Catalog, BigQuery Studio und Vertex AI auf Herkunftsdiagramme zugreifen.

Preise

Die Hive-Datenherkunft für Managed Service for Apache Spark wird während der Vorschau ohne zusätzliche Kosten angeboten. Es gelten die Standard Preise für Managed Service for Apache Spark.

Hinweis

  1. Wählen Sie in der Google Cloud Console auf der Projektauswahlseite das Projekt aus, das den Managed Service for Apache Spark-Cluster enthält, dessen Herkunft Sie verfolgen möchten.

    Zur Projektauswahl

  2. Aktivieren Sie die Data Lineage API und die Dataplex API.

    APIs aktivieren

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Dienstkonto der Managed Service for Apache Spark-Cluster-VM zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwenden der Datenherkunft in Managed Service for Apache Spark benötigen:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Hive-Datenherkunft aktivieren

Wenn Sie die Hive-Datenherkunft in einem Cluster aktivieren möchten, geben Sie beim Erstellen eines Managed Service for Apache Spark-Clusters die hive-lineage.sh Initialisierungsaktion an. Diese Initialisierungsaktion wird in regionalen Buckets in Cloud Storage gespeichert.

Beispiel für die Clustererstellung mit der gcloud CLI :

gcloud dataproc clusters create CLUSTER_NAME \
    --project PROJECT_ID \
    --region REGION \
    --image-version IMAGE_VERSION \
    --initialization-actions gs://goog-dataproc-initialization-actions-REGION/hive-lineage/hive-lineage.sh

Ersetzen Sie Folgendes:

  • CLUSTER_NAME: Der Name des Clusters.
  • PROJECT_ID: Ihre Google Cloud Projekt-ID Projekt-IDs werden im Bereich Projektinformationen im Console- Google Cloud Dashboard aufgeführt.
  • REGION: Die Compute Engine-Region , in der sich der Cluster befinden soll.
  • IMAGE_VERSION Die gewünschte Image-Version für den Cluster.
  • --initialization-actions: Gibt eine Installationsaktion an, die sich an einem regionalen Cloud Storage -Standort befindet und die Hive-Datenherkunft aktiviert.
    • Optional können Sie die Initialisierungsaktion Hive-BigQuery-Connector hinzufügen. Wenn Sie BigQuery-Tabellen in Hive-Arbeitslasten einbinden möchten, müssen Sie den Hive-BigQuery-Connector im Cluster installieren. Im Beispiel Hive-Datenherkunft mit BigQuery, wird eine Initialisierungsaktion für den Connector ausgeführt, um den Hive-BigQuery-Connector im Cluster zu installieren.

Hive-Job senden

Wenn Sie einen Hive-Job senden an einen Managed Service for Apache Spark-Cluster, der mit aktivierter Hive-Datenherkunft erstellt wurde, erfasst Managed Service for Apache Spark die Datenherkunftsinformationen und meldet sie an Knowledge Catalog.

Beispiel für das Senden eines Hive-Jobs mit der gcloud CLI :

gcloud dataproc jobs submit hive \
    --cluster=CLUSTER_NAME \
    --project PROJECT_ID \
    --region REGION \
    --properties=hive.openlineage.namespace=CUSTOM_NAMESPACE \
    --execute HIVE_QUERY

Ersetzen Sie Folgendes:

  • CLUSTER_NAME: Der Name des Clusters.
  • PROJECT_ID: Ihre Google Cloud Projekt-ID Projekt-IDs werden im Bereich Projektinformationen im Console- Google Cloud Dashboard aufgeführt.
  • REGION: Die Compute Engine-Region , in der sich der Cluster befindet.
  • CUSTOM_NAMESPACE: Ein optionaler benutzerdefinierter Hive-Namespace, den Sie zur Identifizierung des Hive-Jobs angeben können.
  • HIVE_QUERY: Die Hive-Abfrage, die an den Cluster gesendet werden soll. Anstatt eine Abfrage anzugeben, können Sie das --execute HIVE_QUERY Flag durch ein --file SQL_FILE Flag ersetzen, um den Speicherort einer Datei anzugeben, die die Abfrage enthält.

Herkunft in Knowledge Catalog ansehen

Ein Herkunftsdiagramm zeigt Beziehungen zwischen Ihren Projektressourcen und den Prozessen, mit denen sie erstellt wurden. Sie können Datenherkunftsinformationen in der Google Cloud Console ansehen oder sie in Form von JSON-Daten aus der Data Lineage API abrufen.

Beispiel für die Hive-Datenherkunft mit BigQuery

Das Beispiel in diesem Abschnitt besteht aus den folgenden Schritten:

  1. Erstellen Sie einen Managed Service for Apache Spark-Cluster, in dem die Hive-Datenherkunft aktiviert und der Hive-BigQuery-Connector installiert ist.
  2. Führen Sie eine Hive-Abfrage im Cluster aus, um Daten zwischen Hive-Tabellen zu kopieren.
  3. Sehen Sie sich das generierte Datenherkunftsdiagramm in BigQuery Studio an.

Managed Service for Apache Spark-Cluster erstellen

Führen Sie den folgenden Befehl in einem lokalen Terminalfenster oder in Cloud Shell aus, um einen Managed Service for Apache Spark-Cluster zu erstellen.

gcloud dataproc clusters create CLUSTER_NAME \
    --project PROJECT_ID \
    --region REGION \
    --image-version IMAGE_VERSION \
    --initialization-actions gs://goog-dataproc-initialization-actions-REGION/connectors/connectors.sh, gs://goog-dataproc-initialization-actions-REGION/hive-lineage/hive-lineage.sh \
    --metadata hive-bigquery-connector-version=HIVE_BQ_VERSION

Hinweise:

Hive-Abfrage ausführen

Führen Sie eine Hive-Abfrage aus, um die folgenden Aktionen auszuführen:

  • Erstellen Sie eine externe Tabelle us_states mit Beispieldaten aus gs://cloud-samples-data/bigquery/hive-partitioning-samples/autolayout.
  • Erstellen Sie eine verwaltete Tabelle us_states_copy im angegebenen BigQuery-Dataset.
  • Kopieren Sie alle Daten aus us_states nach us_states_copy.

So führen Sie die Abfrage aus:

  1. Verwenden Sie in einem lokalen Terminalfenster oder in Cloud Shell, einen Texteditor wie vi oder nano, um die folgende Hive-Abfrageanweisung in eine Datei hive-example.sql zu kopieren. Speichern Sie die Datei dann im aktuellen Verzeichnis.
  2. Senden Sie die Datei hive-example.sql an den Managed Service for Apache Spark-Cluster der zuvor erstellt wurde. Ersetzen Sie dazu das Flag --execute HIVE_QUERY durch ein Flag --file SQL_FILE, um den Speicherort der gespeicherten Datei hive-example.sql anzugeben. Beachten Sie, dass die PROJECT und BQ_DATASET Variablen ausgefüllt sein müssen.

Hive BigQueryStorageHandler

CREATE EXTERNAL TABLE us_states (
    name STRING,
    post_abbr STRING
)
STORED AS PARQUET
LOCATION 'gs://cloud-samples-data/bigquery/hive-partitioning-samples/autolayout';

CREATE TABLE us_states_copy (
    name STRING,
    post_abbr STRING
)
STORED BY 'com.google.cloud.hive.bigquery.connector.BigQueryStorageHandler'
TBLPROPERTIES (
  'bq.table'='PROJECT.BQ_DATASET.us_states_copy'
);

INSERT INTO us_states_copy SELECT * FROM us_states;

Datenherkunftsdiagramm ansehen

Nachdem der Hive-Job erfolgreich abgeschlossen wurde, können Sie die Datenherkunft in BigQuery Studio in der Google Cloud Console ansehen:

Hive-Herkunftsdiagramm

Informationen zum Anzeigen von Diagrammen in BigQuery Studio finden Sie unter Herkunft in BigQuery ansehen. Informationen zum Interpretieren von Diagrammen finden Sie unter Datenherkunftsmodell.

Nächste Schritte