Ce document explique comment activer et utiliser la traçabilité des données pour les tâches Hive de Managed Service pour Apache Spark.
Vous pouvez activer la traçabilité des données pour les tâches Hive de Managed Service pour Apache Spark à l'aide d'une action d'initialisation lorsque vous créez un cluster.
Lorsque vous activez la traçabilité des données Hive sur un cluster, les tâches Hive que vous envoyez au cluster capturent les événements de traçabilité des données et les publient dans Knowledge Catalog.
Visualiser les informations de traçabilité
Un graphique de traçabilité des données affiche les relations entre les ressources de votre projet et les processus qui les ont créées. Vous pouvez accéder aux graphiques de traçabilité à l'aide de Knowledge Catalog, BigQuery Studio, et Vertex AI dans la Google Cloud console.
Tarifs
La traçabilité des données Hive de Managed Service pour Apache Spark est proposée en preview sans frais supplémentaires. Les tarifs standards de Managed Service pour Apache Spark s'appliquent.
Avant de commencer
Dans la Google Cloud console, sur la page de sélection du projet, sélectionnez le projet contenant le cluster Managed Service pour Apache Spark pour lequel vous souhaitez suivre la traçabilité.
Activez l'API Data Lineage et l'API Dataplex.
Rôles requis
Pour obtenir les autorisations nécessaires pour utiliser la traçabilité des données dans Managed Service pour Apache Spark, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le compte de service de la VM du cluster Managed Service pour Apache Spark :
-
Afficher la traçabilité des données dans Knowledge Catalog ou utiliser l'API Data Lineage :
Lecteur de la traçabilité des données (
roles/datalineage.viewer) -
Produire manuellement la traçabilité des données à l'aide de l'API :
Producteur d'événements de traçabilité des données (
roles/datalineage.producer) -
Modifier la traçabilité des données à l'aide de l'API:
Éditeur de la traçabilité des données (
roles/datalineage.editor) -
Effectuer toutes les opérations sur la traçabilité des données:
Administrateur de la traçabilité des données (
roles/datalineage.admin)
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Activer la traçabilité des données Hive
Pour activer la traçabilité des données Hive sur un cluster, spécifiez l'hive-lineage.sh
action d'initialisation lorsque
vous créez un cluster Managed Service pour Apache Spark.
Cette action d'initialisation est stockée dans des buckets régionaux dans Cloud Storage.
Exemple de création de cluster avec 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.shRemplacez les éléments suivants :
- CLUSTER_NAME : nom du cluster.
- PROJECT_ID : ID de votre Google Cloud projet. Les ID de projet sont listés dans la section Informations sur le projet sur le Google Cloud tableau de bord de la console.
- REGION : région Compute Engine dans laquelle localiser le cluster.
- IMAGE_VERSION : version d'image prévue pour le cluster.
--initialization-actions: spécifie une action d'installation située dans un emplacement régional Cloud Storage, qui active la traçabilité des données Hive.- Vous pouvez également ajouter l'action d'initialisation du connecteur Hive-BigQuery. Si vous souhaitez intégrer des tables BigQuery à des charges de travail Hive, vous devez installer le connecteur Hive-BigQuery sur le cluster. Consultez l' exemple de traçabilité des données Hive avec BigQuery, qui exécute une action d'initialisation du connecteur pour installer le connecteur Hive-BigQuery sur le cluster.
Envoyer une tâche Hive
Lorsque vous envoyez une tâche Hive à un cluster Managed Service pour Apache Spark créé avec la traçabilité des données Hive activée, Managed Service pour Apache Spark capture et signale les informations de traçabilité des données à Knowledge Catalog.
Exemple d'envoi de tâche Hive avec gcloud CLI :
gcloud dataproc jobs submit hive \
--cluster=CLUSTER_NAME \
--project PROJECT_ID \
--region REGION \
--properties=hive.openlineage.namespace=CUSTOM_NAMESPACE \
--execute HIVE_QUERYRemplacez les éléments suivants :
- CLUSTER_NAME : nom du cluster.
- PROJECT_ID : ID de votre Google Cloud projet. Les ID de projet sont listés dans la section Informations sur le projet sur le Google Cloud tableau de bord de la console.
- REGION : région Compute Engine dans laquelle se trouve votre cluster.
- CUSTOM_NAMESPACE : espace de noms Hive personnalisé facultatif que vous pouvez spécifier pour identifier la tâche Hive.
- HIVE_QUERY : requête Hive à envoyer au cluster.
Au lieu de spécifier une requête, vous pouvez remplacer l'indicateur
--execute HIVE_QUERYpar un indicateur--file SQL_FILEpour spécifier l'emplacement d'un fichier contenant la requête.
Afficher la traçabilité dans Knowledge Catalog
Un graphique de traçabilité affiche les relations entre les ressources de votre projet et les processus qui les ont créées. Vous pouvez afficher les informations de traçabilité des données dans la Google Cloud consoleou les récupérer à partir de l'API Data Lineage au format JSON.
Exemple de traçabilité des données Hive avec BigQuery
L'exemple de cette section comprend les étapes suivantes :
- Créez un cluster Managed Service pour Apache Spark sur lequel la traçabilité des données Hive est activée et le connecteur Hive-BigQuery est installé.
- Exécutez une requête Hive sur le cluster pour copier des données entre des tables Hive.
- Affichez le graphique de traçabilité des données généré dans BigQuery Studio.
Créer un cluster Managed Service pour Apache Spark
Exécutez la commande suivante dans une fenêtre de terminal locale ou dans Cloud Shell pour créer un cluster Managed Service pour Apache Spark.
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
Remarques :
- CLUSTER_NAME : nom du cluster.
- PROJECT_ID : ID de votre Google Cloud projet. Les ID de projet sont listés dans la section Informations sur le projet sur le Google Cloud tableau de bord de la console.
- REGION : région Compute Engine dans laquelle localiser le cluster.
- IMAGE_VERSION : version d'image prévue pour le cluster.
--initialization-actions: ces actions d'installation, situées dans Cloud Storage, installent le connecteur Hive-BigQuery et activent la traçabilité des données Hive.- HIVE_BQ_VERSION : spécifie la
version du connecteur Hive-BigQuery.
L'indicateur
--metadatatransmet la version à l'connectors.shaction d'initialisation pour installer le connecteur Hive-BigQuery sur le cluster.
Exécuter une requête Hive
Exécutez une requête Hive pour effectuer les actions suivantes :
- Créez une table externe
us_statesavec des exemples de données d'entrée à partir degs://cloud-samples-data/bigquery/hive-partitioning-samples/autolayout. - Créez une table gérée
us_states_copydans l'ensemble de données BigQuery spécifié. - Copiez l'ensemble des données de
us_statesversus_states_copy.
Pour exécuter la requête :
- Dans une fenêtre de terminal locale ou dans Cloud Shell,
utilisez un éditeur de texte tel que
viounano, pour copier l'instruction de requête Hive suivante dans un fichierhive-example.sql, puis enregistrez le fichier dans le répertoire actuel. - Envoyez le fichier
hive-example.sqlau cluster Managed Service pour Apache Spark créé précédemment en remplaçant l'indicateur--execute HIVE_QUERYpar un indicateur--file SQL_FILEpour spécifier l'emplacement du fichierhive-example.sqlenregistré. Notez que les PROJECT et BQ_DATASET variables doivent être renseignées.
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;
Afficher le graphique de traçabilité des données
Une fois la tâche Hive terminée, affichez la traçabilité des données dans BigQuery Studio dans la Google Cloud console :
Pour en savoir plus sur l'affichage de graphiques dans BigQuery Studio, consultez Afficher la traçabilité dans BigQuery. Pour en savoir plus sur la compréhension des graphiques, consultez Modèle d'informations sur la traçabilité des données.
Étape suivante
- Découvrez-en plus sur la traçabilité des données.