Mechanismus fir d'Botzen vun Daten am Spark Streaming
(I) DStream an RDD
Wéi mir wëssen, baséiert d'Berechnung vu Spark Streaming op Spark Core, an de Kär vum Spark Core ass RDD, dofir muss Spark Streaming och mat RDD a Verbindung stoen. Spark Streaming erlaabt de Benotzer awer net direkt RDD ze benotzen, mee abstrahéiert eng Rei vun DStream-Konzepter. DStream an RDD sinn inklusiv Bezéiungen, déi een als Dekoratiounsmuster a Java versteet, dat heescht, DStream ass eng Verbesserung vun RDD, awer säi Verhalen ass ähnlech wéi bei RDD.
DStream an RDD hunn allebéid verschidde Konditiounen.
(1) hunn ähnlech Transformatiounsaktiounen, wéi map, reduceByKey, etc., awer och e puer eenzegaarteg, wéi Window, mapWithStated, etc.
(2) all hunn Aktiounsaktiounen, wéi foreachRDD, count, etc.
De Programméierungsmodell ass konsequent.
(B) Aféierung vun DStream am Spark Streaming
DStream enthält verschidde Klassen.
(1) Datenquellklassen, wéi InputDStream, spezifesch wéi DirectKafkaInputStream, etc.
(2) Konversiounsklassen, typescherweis MappedDStream, ShuffledDStream
(3) Ausgabeklassen, typescherweis wéi ForEachDStream
Aus dem uewe genannten ginn d'Donnéeë vum Ufank (Input) bis zum Enn (Output) vum DStream-System gemaach, dat heescht, datt de Benotzer normalerweis net direkt RDDs generéiere a manipuléiere kann, wat bedeit, datt den DStream d'Méiglechkeet an d'Obligatioun huet, fir de Liewenszyklus vun RDDs verantwortlech ze sinn.
An anere Wierder, Spark Streaming huet enautomatesch ReinigungFunktioun.
(iii) De Prozess vun der RDD-Generatioun am Spark Streaming
De Liewensfloss vun RDDs am Spark Streaming ass ongeféier wéi follegt.
(1) Am InputDStream ginn déi empfaangen Donnéeën an RDD transforméiert, wéi zum Beispill DirectKafkaInputStream, wat KafkaRDD generéiert.
(2) dann iwwer MappedDStream an aner Datenkonversioun, gëtt dës Kéier direkt RDD genannt, wat der Mapmethod fir d'Konversioun entsprécht.
(3) An der Operatioun vun der Ausgabeklass, nëmmen wann den RDD fräigeluecht ass, kënnt Dir de Benotzer déi entspriechend Späicherung, aner Berechnungen an aner Operatiounen ausféiere loossen.