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 für einen Cluster aktivieren, werden bei Hive-Jobs, die Sie an den Cluster senden, Datenherkunftsereignisse erfasst und in Knowledge Catalog veröffentlicht.
Lineage-Informationen visualisieren
Ein Diagramm zur Datenherkunft zeigt die Beziehungen zwischen Ihren Projektressourcen und den Prozessen, mit denen sie erstellt wurden. Sie können über Knowledge Catalog, BigQuery Studio und Vertex AI in der Google Cloud -Konsole auf Herkunftsgraphen zugreifen.
Preise
Die Hive-Datenherkunft für Managed Service for Apache Spark wird während der Vorschauphase ohne zusätzliche Kosten angeboten. Es gelten die standardmäßigen Preise für Managed Service for Apache Spark.
Hinweis
Wählen Sie in der Google Cloud Console auf der Projektauswahlseite das Projekt aus, das den Managed Service for Apache Spark-Cluster enthält, für den Sie die Herkunft verfolgen möchten.
Aktivieren Sie die Data Lineage API und die Dataplex API.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das VM-Dienstkonto des Managed Service for Apache Spark-Clusters zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwenden von Datenherkunft in Managed Service for Apache Spark benötigen:
-
Datenherkunft im Knowledge Catalog ansehen oder die Data Lineage API verwenden:
Data Lineage-Betrachter (
roles/datalineage.viewer) -
Data Lineage manuell mit der API erstellen:
Ersteller von Data Lineage-Ereignissen (
roles/datalineage.producer) -
Data Lineage mit der API bearbeiten:
Data Lineage-Bearbeiter (
roles/datalineage.editor) -
Alle Vorgänge für Data Lineage ausführen:
Data Lineage-Administrator (
roles/datalineage.admin)
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-Daten-Lineage aktivieren
Wenn Sie die Hive-Datenherkunft für einen Cluster aktivieren möchten, geben Sie die hive-lineage.sh-Initialisierungsaktion an, wenn Sie einen Managed Service for Apache Spark-Cluster erstellen.
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.shErsetzen Sie Folgendes:
- CLUSTER_NAME ist der Name des Clusters.
- PROJECT_ID: Ihre Google Cloud Projekt-ID Projekt-IDs werden im Bereich Projektinformationen im Dashboard der Google Cloud Console aufgeführt.
- REGION: Die Compute Engine-Region, in der sich der Cluster befinden soll.
- IMAGE_VERSION: Die vorgesehene Image-Version für den Cluster.
--initialization-actions: Gibt eine Installationsaktion an, die sich an einem regionalen Cloud Storage-Standort befindet und Hive-Datenherkunft ermöglicht.- Fügen Sie optional die Initialisierungsaktion für den Hive-BigQuery-Connector hinzu. Wenn Sie BigQuery-Tabellen in Hive-Arbeitslasten einbinden möchten, müssen Sie den Hive-BigQuery-Connector im Cluster installieren. Im Beispiel für die Hive-Datenherkunft mit BigQuery wird eine Connector-Initialisierungsaktion ausgeführt, um den Hive-BigQuery-Connector im Cluster zu installieren.
Hive-Job senden
Wenn Sie einen Hive-Job an einen Managed Service for Apache Spark-Cluster senden, der mit Hive-Datenherkunft aktiviert erstellt wurde, erfasst und meldet Managed Service for Apache Spark die Datenherkunftsinformationen an Knowledge Catalog.
Beispiel für das Senden eines Hive-Jobs über die gcloud CLI:
gcloud dataproc jobs submit hive \
--cluster=CLUSTER_NAME \
--project PROJECT_ID \
--region REGION \
--properties=hive.openlineage.namespace=CUSTOM_NAMESPACE \
--execute HIVE_QUERYErsetzen Sie Folgendes:
- CLUSTER_NAME ist der Name des Clusters.
- PROJECT_ID: Ihre Google Cloud Projekt-ID Projekt-IDs werden im Bereich Projektinformationen im Dashboard der Google Cloud Console 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 Flag
--execute HIVE_QUERYdurch 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 die Beziehungen zwischen den Ressourcen Ihres Projekts und den Prozessen, mit denen sie erstellt wurden. Sie können Informationen zur Datenherkunft in der Google Cloud -Konsole ansehen oder sie in Form von JSON-Daten über die Data Lineage API abrufen.
Hive-Datenherkunft mit BigQuery – Beispiel
Das Beispiel in diesem Abschnitt besteht aus den folgenden Schritten:
- Erstellen Sie einen Managed Service for Apache Spark-Cluster, auf dem die Hive-Datenherkunft aktiviert und der Hive-BigQuery-Connector installiert ist.
- Führen Sie eine Hive-Abfrage für den Cluster aus, um Daten zwischen Hive-Tabellen zu kopieren.
- Das generierte Datenherkunftsdiagramm in BigQuery Studio ansehen
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:
- CLUSTER_NAME ist der Name des Clusters.
- PROJECT_ID: Ihre Google Cloud Projekt-ID Projekt-IDs werden im Bereich Projektinformationen im Dashboard der Google Cloud Console aufgeführt.
- REGION: Die Compute Engine-Region, in der sich der Cluster befinden soll.
- IMAGE_VERSION: Die vorgesehene Image-Version für den Cluster.
--initialization-actions: Mit diesen Installationsaktionen, die sich in Cloud Storage befinden, wird der Hive-BigQuery-Connector installiert und Hive-Datenherkunft aktiviert.- HIVE_BQ_VERSION: Gibt die Hive-BigQuery-Connector-Version an.
Mit dem Flag
--metadatawird die Version an dieconnectors.sh-Initialisierungsaktion übergeben, um den Hive-BigQuery-Connector im Cluster zu installieren.
Hive-Abfrage ausführen
Führen Sie eine Hive-Abfrage aus, um die folgenden Aktionen auszuführen:
- Erstellen Sie eine externe Tabelle
us_statesmit Beispieldateneingaben ausgs://cloud-samples-data/bigquery/hive-partitioning-samples/autolayout. - Erstellt eine verwaltete Tabelle vom Typ
us_states_copyim angegebenen BigQuery-Dataset. - Kopieren Sie alle Daten von
us_statesnachus_states_copy.
So führen Sie die Abfrage aus:
- Kopieren Sie in einem lokalen Terminalfenster oder in Cloud Shell mit einem Texteditor wie
viodernanodie folgende Hive-Abfrageanweisung in einehive-example.sql-Datei und speichern Sie die Datei im aktuellen Verzeichnis. - Senden Sie die Datei
hive-example.sqlan den zuvor erstellten Managed Service for Apache Spark-Cluster. Ersetzen Sie dabei das Flag--execute HIVE_QUERYdurch das Flag--file SQL_FILE, um den Speicherort der gespeicherten Dateihive-example.sqlanzugeben. Die Variablen PROJECT und BQ_DATASET müssen ausgefüllt werden.
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;
Data Lineage-Diagramm ansehen
Nachdem der Hive-Job erfolgreich abgeschlossen wurde, können Sie die Datenherkunft in BigQuery Studio in der Google Cloud Console ansehen:
Informationen zum Anzeigen von Diagrammen in BigQuery Studio finden Sie unter Herkunft in BigQuery ansehen. Informationen zum Interpretieren von Diagrammen finden Sie unter Informationen zum Datenherkunftsmodell.