• навінавы_банер

Абслугоўванне

Механізм ачысткі дадзеных 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 і г.д.
Мадэль праграмавання паслядоўная.
(B) Увядзенне 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 даступны, вы можаце дазволіць карыстальніку выконваць адпаведнае захоўванне, іншыя вылічэнні і іншыя аперацыі.