• baner informacyjny

Praca

Mechanizm czyszczenia danych Spark Streaming
(I) DStream i RDD
Jak wiemy, obliczenia Spark Streaming oparte są na Spark Core, a rdzeniem Spark Core jest RDD, więc Spark Streaming również musi być powiązany z RDD. Spark Streaming nie pozwala jednak użytkownikom na bezpośrednie korzystanie z RDD, lecz abstrahuje zbiór koncepcji DStream. DStream i RDD to relacje inkluzywne, które można rozumieć jako wzorzec dekoracyjny w Javie, tzn. DStream jest rozszerzeniem RDD, ale zachowuje się podobnie do RDD.
Zarówno DStream, jak i RDD mają kilka warunków.
(1) mają podobne akcje transformacji, takie jak map, reduceByKey itp., ale także pewne unikalne, takie jak Window, mapWithStated itp.
(2) wszystkie mają akcje akcji, takie jak foreachRDD, count itp.
Model programowania jest spójny.
(B) Wprowadzenie DStream do Spark Streaming
DStream zawiera kilka klas.
(1) Klasy źródeł danych, takie jak InputDStream, specyficzne jak DirectKafkaInputStream itp.
(2) Klasy konwersji, zazwyczaj MappedDStream, ShuffledDStream
(3) klasy wyjściowe, zwykle takie jak ForEachDStream
Jak wynika z powyższego, przetwarzaniem danych od początku (wejście) do końca (wyjście) zajmuje się system DStream, co oznacza, że ​​użytkownik zazwyczaj nie może bezpośrednio generować RDD ani nimi manipulować. Z kolei DStream ma możliwość i obowiązek odpowiadać za cykl życia RDD.
Innymi słowy, Spark Streaming maautomatyczne czyszczeniefunkcjonować.
(iii) Proces generowania RDD w Spark Streaming
Oto ogólny schemat działania RDD w Spark Streaming.
(1) W InputDStream otrzymane dane są przekształcane w RDD, np. DirectKafkaInputStream, który generuje KafkaRDD.
(2) następnie poprzez MappedDStream i inną konwersję danych, ten czas jest bezpośrednio wywoływany RDD, co odpowiada metodzie mapy do konwersji
(3) W przypadku operacji klasy wyjściowej, tylko wtedy, gdy RDD jest ujawniony, można pozwolić użytkownikowi na wykonanie odpowiednich operacji przechowywania, innych obliczeń i operacji.