Google Cloud a annoncé une nouvelle fonctionnalité dans Dataflow qui permet des lectures de sources personnalisées avec équilibrage de charge, dans le but de réduire les coûts et d'améliorer l'efficacité. C'est une solution bienvenue au défi de la mise à l'échelle des charges de travail, en particulier dans les environnements de streaming où la latence est étroitement surveillée.

De nombreuses stratégies d'auto-réglage modernes ont du mal à gérer les clés ou les workers surchargés qui créent des goulots d'étranglement dans le traitement et des backlogs, ce qui a un impact sur la fraîcheur des données. Par exemple, un environnement de streaming comme Apache Kafka peut créer des points chauds dans le pipeline. Un autoscaler peut essayer de compenser après coup avec des unités de calcul supplémentaires, mais ce n'est pas seulement coûteux, c'est aussi lent. Un autoscaler ne réagit qu'après qu'un backlog de messages accumulés s'est formé et entraîne une surcharge lors du démarrage de nouveaux workers.

La nouvelle fonctionnalité d'équilibrage de charge fonctionne en distribuant mieux les charges de travail et en soulageant de manière proactive les workers surchargés. Cela permet aux pipelines de traiter plus de données avec moins de ressources et des latences plus faibles. Des cas d'utilisation réels de clients Dataflow de premier plan démontrent l'efficacité de cette fonctionnalité pour réduire les coûts opérationnels et améliorer les performances des pipelines.

Par exemple, un client a pu réduire les événements de mise à l'échelle des workers de 75 %, ce qui a entraîné une réduction des coûts quotidiens de 64 % dans Google Compute Engine, et le backlog est passé de ~ 1 minute à ~ 10 secondes.

Cette fonctionnalité d'équilibrage de charge est activée par défaut pour tous les clients Dataflow dans toutes les régions, ce qui la rend facilement disponible sans nécessiter de configuration supplémentaire.

En conclusion, l'introduction de lectures de sources personnalisées avec équilibrage de charge dans Dataflow marque une étape importante vers l'amélioration de l'efficacité des pipelines et la réduction des coûts, en particulier dans les environnements de streaming où la vitesse et l'efficacité sont primordiales.