• новинарски банер

Услуга

Механизъм за почистване на данни в Spark Streaming
(I) DStream и RDD
Както знаем, изчисленията в Spark Streaming са базирани на Spark Core, а ядрото на Spark Core е RDD, така че Spark Streaming също трябва да е свързан с RDD. Spark Streaming обаче не позволява на потребителите да използват RDD директно, а абстрахира набор от DStream концепции. DStream и RDD са приобщаващи взаимоотношения, можете да ги разбирате като шаблон за декорация в Java, т.е. DStream е подобрение на RDD, но поведението е подобно на RDD.
DStream и RDD имат няколко условия.
(1) имат подобни действия за трансформация, като map, reduceByKey и др., но също така и някои уникални, като Window, mapWithStated и др.
(2) всички имат действия Action, като foreachRDD, count и др.
Моделът на програмиране е последователен.
(Б) Въвеждане на DStream в Spark Streaming
DStream съдържа няколко класа.
(1) Класове източници на данни, като например InputDStream, специфични за DirectKafkaInputStream и др.
(2) Класове за преобразуване, обикновено MappedDStream, ShuffledDStream
(3) изходни класове, обикновено като ForEachDStream
От гореизложеното, данните от началото (вход) до края (изход) се обработват от системата DStream, което означава, че потребителят обикновено не може директно да генерира и манипулира RDD, което означава, че DStream има възможността и задължението да бъде отговорен за жизнения цикъл на RDD.
С други думи, Spark Streaming имаавтоматично почистванефункция.
(iii) Процесът на генериране на RDD в Spark Streaming
Жизненият поток на RDD в Spark Streaming е груб, както следва.
(1) В InputDStream получените данни се трансформират в RDD, като например DirectKafkaInputStream, който генерира KafkaRDD.
(2) след това чрез MappedDStream и други преобразувания на данни, това време се нарича директно RDD, съответстващо на метода на map за преобразуване
(3) В операцията с изходния клас, само когато RDD е изложен, можете да позволите на потребителя да извърши съответното съхранение, други изчисления и други операции.