Mécanisme de nettoyage des données Spark Streaming
(I) DStream et RDD
Comme nous le savons, le calcul de Spark Streaming repose sur Spark Core, dont le cœur est RDD. Spark Streaming doit donc également être lié à RDD. Cependant, Spark Streaming ne permet pas d'utiliser RDD directement, mais abstrait un ensemble de concepts DStream. DStream et RDD sont des relations inclusives, comparables au modèle de décoration Java. DStream est une amélioration de RDD, mais son comportement est similaire à celui de RDD.
DStream et RDD ont tous deux plusieurs conditions.
(1) ont des actions de transformation similaires, telles que map, reduceByKey, etc., mais aussi certaines uniques, telles que Window, mapWithStated, etc.
(2) tous ont des actions d'action, telles que foreachRDD, count, etc.
Le modèle de programmation est cohérent.
(B) Introduction de DStream dans Spark Streaming
DStream contient plusieurs classes.
(1) Classes de sources de données, telles que InputDStream, spécifiques comme DirectKafkaInputStream, etc.
(2) Classes de conversion, généralement MappedDStream, ShuffledDStream
(3) classes de sortie, généralement telles que ForEachDStream
D'après ce qui précède, les données du début (entrée) à la fin (sortie) sont traitées par le système DStream, ce qui signifie que l'utilisateur ne peut normalement pas générer et manipuler directement les RDD, ce qui signifie que DStream a la possibilité et l'obligation d'être responsable du cycle de vie des RDD.
En d’autres termes, Spark Streaming a unnettoyage automatiquefonction.
(iii) Le processus de génération de RDD dans Spark Streaming
Le flux de vie des RDD dans Spark Streaming est approximatif comme suit.
(1) Dans InputDStream, les données reçues sont transformées en RDD, comme DirectKafkaInputStream, qui génère KafkaRDD.
(2) puis via MappedDStream et d'autres conversions de données, cette fois-ci est directement appelée RDD correspondant à la méthode de mappage pour la conversion
(3) Dans l'opération de classe de sortie, uniquement lorsque le RDD est exposé, vous pouvez laisser l'utilisateur effectuer le stockage correspondant, d'autres calculs et d'autres opérations.