Planifier des charges de travail

Les tâches BigQuery font généralement partie de charges de travail plus importantes, avec des tâches externes qui déclenchent, puis sont déclenchées par des opérations BigQuery. La planification des charges de travail aide les administrateurs de données, les analystes et les développeurs à organiser et à optimiser cette chaîne d'actions, créant ainsi une connexion fluide entre les ressources et les processus de données. Les méthodes et outils de planification facilitent la conception, la compilation, la mise en œuvre et la surveillance de ces charges de travail de données complexes.

Choisir une méthode de programmation

Pour sélectionner une méthode de planification, vous devez déterminer si vos charges de travail sont basées sur les événements, ou sur le temps ou les deux. Un événement est défini comme un changement d'état, comme une modification des données d'une base de données ou l'ajout d'un fichier à un système de stockage. Dans la planification basée sur les événements, une action sur un site Web peut déclencher une activité de données, ou l'arrivée d'objets dans un bucket donné peut nécessiter un traitement immédiat. Dans le cas d'une planification basée sur le temps, les nouvelles données peuvent nécessiter d'être chargées une fois par jour ou assez fréquemment pour produire des rapports horaires. Vous pouvez utiliser la planification basée sur les événements et sur le temps dans les scénarios où vous devez charger des objets dans un lac de données en temps réel, mais les rapports d'activité sur le lac de données ne sont générés que quotidiennement.

Choisir un outil de planification

Les outils de planification facilitent les tâches liées à la gestion de charges de travail de données complexes, telles que la combinaison de plusieurs services Trusted Cloud by S3NS ou tiers avec des jobs BigQuery, ou l'exécution de plusieurs jobs BigQuery en parallèle. Chaque charge de travail présente des exigences uniques en termes de gestion des dépendances et des paramètres. Cela permet de garantir que les tâches sont exécutées dans le bon ordre et avec des données correctes. Trusted Cloud propose plusieurs options de planification basées sur la méthode de planification et les exigences de la charge de travail.

Nous vous recommandons d'utiliser Dataform, Workflows, Cloud Composer ou Vertex AI Pipelines pour la plupart des cas d'utilisation. Consultez le graphique suivant pour obtenir un comparatif :

Dataform Workflows Cloud Composer Vertex AI Pipelines
Cible Transformation des données Microservices ETL ou ELT Machine learning
Complexité * ** *** **
Profil utilisateur Analyste ou administrateur de données Architecte de données Ingénieur de données Analyste de données
Type de code JavaScript, SQL, notebooks Python YAML ou JSON Python Python
Une solution sans serveur ? Oui Oui Service entièrement géré Oui
Non adapté à Chaînes de services externes Transformation et traitement des données Pipelines à faible latence ou basés sur des événements Tâches liées à l'infrastructure

Les sections suivantes détaillent ces outils de planification et plusieurs autres.

Requêtes programmées

La forme la plus simple de planification de charge de travail consiste à planifier des requêtes récurrentes directement dans BigQuery. Bien qu'il s'agisse de l'approche de planification la moins complexe, nous vous recommandons de ne l'utiliser que pour des chaînes de requête simples sans dépendances externes. Les requêtes planifiées de cette manière doivent être écrites en GoogleSQL et peuvent inclure le langage de définition de données (LDD) et les instructions de langage de manipulation de données (LMD).

Méthode de planification : basée sur le temps

Dataform

Dataform est un framework de transformation avisée gratuit et basé sur SQL qui planifie des tâches complexes de transformation de données dans BigQuery. Lorsque les données brutes sont chargées dans BigQuery, Dataform vous aide à créer une collection d'ensembles de données et de tables organisée, testée et dont les versions sont contrôlées. Utilisez Dataform pour planifier des exécutions pour vos préparations de données, vos notebooks et vos pipelines BigQuery.

Méthode de planification : basée sur le temps

Workflows

Workflows est un outil sans serveur qui planifie les services basés sur HTTP avec une latence très faible. Il est adapté surtout à associer des microservices, automatiser des tâches d'infrastructure, intégrer des systèmes externes ou créer une séquence d'opérations dans Trusted Cloud. Pour en savoir plus sur l'utilisation de Workflows avec BigQuery, consultez Exécuter plusieurs jobs BigQuery en parallèle.

Méthode de planification : basée sur les événements et basée sur le temps

Cloud Composer

Cloud Composer est un outil entièrement géré basé sur Apache Airflow. Il est adapté surtout à extraire, transformer, charger (ETL) ou extraire, charger, transformer (ELT), car il accepte plusieurs types et modèles d'opérateur, ainsi que l'exécution de tâches dans d'autres produits Trusted Cloudet des cibles externes. Pour en savoir plus sur l'utilisation de Cloud Composer avec BigQuery, consultez Exécuter un DAG d'analyse de données dans Trusted Cloud.

Méthode de planification : basée sur le temps

Vertex AI Pipelines

Vertex AI Pipelines est un outil sans serveur basé sur Kubeflow Pipelines spécialement conçu pour planifier des charges de travail de machine learning. Il automatise et connecte toutes les tâches de développement et de déploiement de vos modèles, des données d'entraînement au code, en vous donnant un aperçu complet du fonctionnement de vos modèles. Pour en savoir plus sur l'utilisation de Vertex AI Pipelines avec BigQuery, consultez la page Exporter et déployer un modèle de machine learning BigQuery pour la prédiction.

Méthode de planification : basée sur des événements

Apigee Integration

Apigee Integration est une extension de la plate-forme Apigee qui inclut des connecteurs et des outils de transformation de données. Elle est idéale pour l'intégration d'applications d'entreprise externes, telles que Salesforce. Pour en savoir plus sur l'utilisation d'Apigee Integration avec BigQuery, consultez la page Premiers pas avec Apigee Integration et un déclencheur Salesforce.

Méthode de planification : basée sur les événements et basée sur le temps

Cloud Data Fusion

Cloud Data Fusion est un outil d'intégration de données qui propose des pipelines ELT/ETL sans code et plus de 150 connecteurs et transformations préconfigurés. Pour en savoir plus sur l'utilisation de Cloud Data Fusion avec BigQuery, consultez la page Répliquer des données de MySQL vers BigQuery.

Méthode de planification : basée sur les événements et basée sur le temps

Cloud Scheduler

Cloud Scheduler est un planificateur entièrement géré pour des jobs tels que le streaming par lot ou les opérations d'infrastructure qui doivent se produire à des intervalles de temps définis. Pour en savoir plus sur l'utilisation de Cloud Scheduler avec BigQuery, consultez la page Planifier des workflows avec Cloud Scheduler.

Méthode de planification : basée sur le temps

Cloud Tasks

Cloud Tasks est un service entièrement géré pour la distribution asynchrone des tâches de jobs pouvant s'exécuter indépendamment, en dehors de votre charge de travail principale. Il convient pour déléguer des opérations en arrière-plan lentes ou gérer les taux d'appels d'API. Pour en savoir plus sur l'utilisation de Cloud Tasks avec BigQuery, consultez la page Ajouter une tâche à une file d'attente Cloud Tasks.

Méthode de planification : basée sur des événements

Outils tiers

Vous pouvez également vous connecter à BigQuery à l'aide d'un certain nombre d'outils tiers populaires tels que CData et SnapLogic. Le programme BigQuery Ready fournit la liste complète des solutions partenaires validées.

Outils de messagerie

De nombreuses charges de travail de données nécessitent des connexions de messagerie supplémentaires entre des microservices découplés qui ne doivent être activés que lorsque certains événements se produisent.Trusted Cloud fournit deux outils conçus pour s'intégrer à BigQuery.

Pub/Sub

Pub/Sub est un outil de messagerie asynchrone pour les pipelines d'intégration de données. Il est conçu pour ingérer et distribuer des données telles que des événements de serveur et des interactions des utilisateurs. Il peut également être utilisé pour le traitement en parallèle et le flux de données à partir d'appareils IoT. Pour en savoir plus sur l'utilisation de Pub/Sub avec BigQuery, consultez la page Diffuser des données en streaming depuis Pub/Sub vers BigQuery.

Eventarc

Eventarc est un outil basé sur les événements qui vous permet de gérer le flux des changements d'état dans votre pipeline de données. Cet outil couvre un large éventail de cas d'utilisation, y compris la correction automatique des erreurs, l'ajout d'étiquettes aux ressources, la retouche d'images, etc. Pour en savoir plus sur l'utilisation d'Eventarc avec BigQuery, consultez la page Créer un pipeline de traitement BigQuery avec Eventarc.

Étapes suivantes