Guide de fiabilité Dataflow

Last reviewed 2023-08-07 UTC

Dataflow est un service de traitement des données entièrement géré qui permet de développer rapidement et facilement des pipelines de données par flux à l'aide de bibliothèques Apache Beam Open Source. Dataflow réduit la latence, la durée des traitements et les coûts grâce à l'autoscaling et au traitement par lot.

Bonnes pratiques

Créer des pipelines de données prêts pour la production à l'aide de Dataflow : série de documents sur l'utilisation de Dataflow, y compris la planification, le développement, le déploiement et la surveillance des pipelines Dataflow.

  • Présentation : présentation des pipelines Dataflow.
  • Planifier : mesurer les SLO, comprendre l'impact des sources et des récepteurs de données sur l'évolutivité et les performances du pipeline, et prendre en compte la haute disponibilité, la reprise après sinistre et les performances réseau lors de la spécification des régions pour exécuter vos tâches Dataflow.
  • Développer et tester : configurer des environnements de déploiement, prévenir les pertes de données en utilisant des files d'attente de lettres mortes pour le traitement des erreurs, et réduire la latence et les coûts en minimisant les opérations coûteuses par élément. Utiliser également le traitement par lot pour réduire l'impact sur les performance sans surcharger les services externes, dissocier les étapes fusionnées de manière inappropriée pour les séparer afin d'améliorer les performances, et exécuter des tests de bout en bout en préproduction pour vous assurer que le pipeline continue de respecter vos SLO et autres exigences de production.
  • Déployer : intégration continue (CI) et livraison et déploiement continus (CD), avec informations spécifiques au déploiement de nouvelles versions de pipelines de traitement par flux. Exemple de pipeline CI/CD et de certaines fonctionnalités permettant d'optimiser l'utilisation des ressources. Considérations concernant la haute disponibilité, la redondance géographique et les bonnes pratiques pour assurer la fiabilité des pipelines, y compris l'isolation régionale, l'utilisation d'instantanés, la gestion des erreurs d'envoi de tâches, ainsi que la résolution des erreurs et des pannes affectant les pipelines en cours d'exécution.
  • Surveiller : observer les indicateurs de niveau de service (SLI), importants pour surveiller les performances du pipeline, définir et mesurer les objectifs de niveau de service (SLO).