Annexe E. Spark Streaming
Spark Streaming propose deux modes d'exécution, le micro-batching et le mode continu, avec des caractéristiques de performance très différentes. Spark Streaming expose à la fois les DStreams et les Streaming Datasets, qui sont respectivement similaires aux RDD et aux Datasets, mais avec quelques particularités supplémentaires. Nous nous concentrerons sur les Streaming Datasets dans cette annexe, mais sache que si tu souhaites une sémantique de type RDD, celle-ci est disponible via l'API DStream classique. Le Spark moderne désigne cette API basée sur les Datasets sous le nom de Structured Streaming, et c'est là que se concentrent pratiquement tous les nouveaux développements.
Dans les deux modes, comme les applications de streaming s’exécutent généralement plus longtemps que les applications par lots, parfois sans heure de fin définie, et sur une période suffisamment longue, le taux de survie d’un pilote Spark tombe à zéro. De plus, toute petite fuite de ressources dans le composant principal de ton pilote finira par prendre des proportions gigantesques. Cela s’applique également aux fuites côté exécuteur en mode continu, où des tâches à longue durée de vie s’exécutent indéfiniment.
Malgré ces considérations et contraintes supplémentaires, tu peux largement utiliser le même code Spark entre les applications de streaming et les applications « classiques ». C'est particulièrement intéressant pour ceux qui souhaitent des mises ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access