• новости_баннер

Услуга

Механизм очистки данных 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) имеют схожие действия по преобразованию, такие как карта, сокращение по ключу и т. д., но также и некоторые уникальные, такие как 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, соответствующий методу карты для преобразования.
(3) В операции класса вывода только тогда, когда RDD открыт, вы можете позволить пользователю выполнять соответствующее сохранение, другие вычисления и другие операции.