La traçabilité des données est une fonctionnalité Dataflow qui vous permet de suivre la façon dont les données transitent par vos systèmes : leur origine, la cible de transmission, et les transformations qui leur sont appliquées.
Chaque pipeline que vous exécutez à l'aide de Dataflow est associé à plusieurs éléments de données. La traçabilité d'un élément de données inclut son origine, ce qui lui arrive et où il est déplacé au fil du temps. Grâce à la traçabilité des données, vous pouvez suivre le mouvement de bout en bout de vos éléments de données, de leur origine à leur destination finale.
Lorsque vous activez la traçabilité des données pour vos jobs Dataflow, Dataflow capture les événements de traçabilité et les publie dans l'API Knowledge Catalog Data Lineage.
Pour accéder aux informations de traçabilité via Knowledge Catalog, consultez Utiliser la traçabilité des données avec les Google Cloud systèmes.
Avant de commencer
Configurez votre projet :
- Connectez-vous à votre Google Cloud compte. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Dataplex, BigQuery, and Data lineage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Verify that billing is enabled for your Google Cloud project.
Enable the Dataplex, BigQuery, and Data lineage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
Dans Dataflow, vous devez également activer la traçabilité au niveau du job. Consultez la section Activer la traçabilité des données dans Dataflow dans ce document.
Rôles requis
Pour obtenir les autorisations nécessaires pour afficher les graphiques de visualisation de la traçabilité, demandez à votre administrateur de vous accorder les rôles IAM suivants :
- Lecteur de catalogue Dataplex (
roles/dataplex.catalogViewer) sur le projet de ressources Knowledge Catalog - Lecteur de la traçabilité des données (
roles/datalineage.viewer) sur le projet dans lequel vous utilisez Dataflow - Lecteur Dataflow (
roles/dataflow.viewer) sur le projet dans lequel vous utilisez Dataflow
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.
Pour en savoir plus sur les rôles de traçabilité des données, consultez Rôles prédéfinis pour la traçabilité des données.
Compatibilité et limites
La traçabilité des données dans Dataflow présente les limites suivantes :
- La traçabilité des données est compatible avec les versions 2.63.0 et ultérieures du SDK Apache Beam.
- Vous devez activer la traçabilité des données pour chaque job.
- La capture des données n'est pas instantanée. L'affichage des données de traçabilité des jobs Dataflow dans Knowledge Catalog peut prendre quelques minutes.
Les sources et récepteurs suivants sont compatibles :
- Apache Kafka
- BigQuery (les jobs de streaming en Python utilisent l'ancienne
STREAMING_INSERTméthode, qui n'est pas compatible avec la traçabilité des données. Pour utiliser la traçabilité des données, passez à la méthode recommandéeSTORAGE_WRITE_API. Pour en savoir plus, consultez Écrire des données depuis Dataflow vers BigQuery.) - Bigtable
- Cloud Storage
- JDBC (Java Database Connectivity)
- Pub/Sub
- Spanner (le flux de modifications n'est pas compatible)
Les modèles Dataflow qui utilisent ces sources et récepteurs capturent et publient également automatiquement les événements de traçabilité.
Activer la traçabilité des données dans Dataflow
Vous devez activer la traçabilité au niveau du job. Pour activer la traçabilité des données,
utilisez l'enable_lineage
option de service Dataflow
comme suit :
Java
--dataflowServiceOptions=enable_lineage=true
Python
--dataflow_service_options=enable_lineage=true
Go
--dataflow_service_options=enable_lineage=true
gcloud
Utilisez la
gcloud dataflow jobs run commande
avec l'option additional-experiments. Si vous utilisez des modèles Flex, utilisez
la
gcloud dataflow flex-template run
commande.
--additional-experiments=enable_lineage=true
Vous pouvez éventuellement spécifier un ou les deux paramètres suivants avec l'option de service :
process_id: identifiant unique utilisé par Knowledge Catalog pour regrouper les exécutions de jobs. S'il n'est pas spécifié, le nom du job est utilisé.process_name: nom lisible du processus de traçabilité des données. S'il n'est pas spécifié, le nom du job précédé de"Dataflow "est utilisé.
Spécifiez ces options comme suit :
Java
--dataflowServiceOptions=enable_lineage=process_id=PROCESS_ID;process_name=DISPLAY_NAME
Python
--dataflow_service_options=enable_lineage=process_id=PROCESS_ID;process_name=DISPLAY_NAME
Go
--dataflow_service_options=enable_lineage=process_id=PROCESS_ID;process_name=DISPLAY_NAME
gcloud
--additional-experiments=enable_lineage=process_id=PROCESS_ID;process_name=DISPLAY_NAME
Afficher la traçabilité dans Knowledge Catalog
La traçabilité des données fournit des informations sur 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 console sous forme de graphique ou de tableau unique. Vous pouvez également récupérer des informations de traçabilité des données à partir de l'API Data Lineage sous forme de données JSON.
Pour en savoir plus, consultez Utiliser la traçabilité des données avec les systèmes. Google Cloud
Désactiver la traçabilité des données dans Dataflow
Si la traçabilité des données est activée pour un job spécifique et que vous souhaitez la désactiver, annulez le job existant et exécutez une nouvelle version du job sans l'option de service enable_lineage.
Facturation
L'utilisation de la traçabilité des données dans Dataflow n'a pas d'incidence sur votre facture Dataflow, mais elle peut entraîner des frais supplémentaires sur votre facture Knowledge Catalog. Pour en savoir plus, consultez Considérations relatives à la traçabilité des données et Tarifs de Knowledge Catalog.
Étape suivante
- Découvrez-en plus sur la traçabilité des données.
- Découvrez comment utiliser la traçabilité des données.