સ્પાર્ક સ્ટ્રીમિંગ ડેટા ક્લિનિંગ મિકેનિઝમ
(I) DStream અને RDD
આપણે જાણીએ છીએ તેમ, સ્પાર્ક સ્ટ્રીમિંગ ગણતરી સ્પાર્ક કોર પર આધારિત છે, અને સ્પાર્ક કોરનો મુખ્ય ભાગ RDD છે, તેથી સ્પાર્ક સ્ટ્રીમિંગ પણ RDD સાથે સંબંધિત હોવું જોઈએ.જો કે, સ્પાર્ક સ્ટ્રીમિંગ વપરાશકર્તાઓને RDDનો સીધો ઉપયોગ કરવા દેતું નથી, પરંતુ DStream ખ્યાલોના સમૂહને એબ્સ્ટ્રેક્ટ કરે છે, DStream અને RDD એ સર્વસમાવેશક સંબંધો છે, તમે તેને Javaમાં ડેકોરેશન પેટર્ન તરીકે સમજી શકો છો, એટલે કે, DStream એ RDD નું ઉન્નતીકરણ છે, પરંતુ વર્તન RDD જેવું જ છે.
ડીસ્ટ્રીમ અને આરડીડી બંનેમાં ઘણી શરતો છે.
(1) સમાન પરિવર્તન ક્રિયાઓ ધરાવે છે, જેમ કે નકશો, રીડ્યુસબાયકી, વગેરે, પણ કેટલીક અનન્ય, જેમ કે વિન્ડો, મેપવિથસ્ટેટ, વગેરે.
(2) બધા પાસે ક્રિયા ક્રિયાઓ છે, જેમ કે foreachRDD, ગણતરી વગેરે.
પ્રોગ્રામિંગ મોડલ સુસંગત છે.
(બી) સ્પાર્ક સ્ટ્રીમિંગમાં ડીસ્ટ્રીમનો પરિચય
ડીસ્ટ્રીમમાં ઘણા વર્ગો છે.
(1) ડેટા સ્ત્રોત વર્ગો, જેમ કે InputDStream, ચોક્કસ, DirectKafkaInputStream, વગેરે.
(2) રૂપાંતરણ વર્ગો, સામાન્ય રીતે MappedDStream, ShuffledDStream
(3) આઉટપુટ વર્ગો, સામાન્ય રીતે જેમ કે ForEachDStream
ઉપરોક્તમાંથી, શરૂઆત (ઇનપુટ) થી અંત (આઉટપુટ) સુધીનો ડેટા DStream સિસ્ટમ દ્વારા કરવામાં આવે છે, જેનો અર્થ છે કે વપરાશકર્તા સામાન્ય રીતે RDDs સીધું જનરેટ અને હેરફેર કરી શકતા નથી, જેનો અર્થ છે કે DStream પાસે તક અને જવાબદારી છે. RDDs ના જીવન ચક્ર માટે જવાબદાર.
બીજા શબ્દોમાં કહીએ તો, સ્પાર્ક સ્ટ્રીમિંગ પાસે છેઆપોઆપ સફાઈકાર્ય
(iii) સ્પાર્ક સ્ટ્રીમિંગમાં RDD જનરેશનની પ્રક્રિયા
સ્પાર્ક સ્ટ્રીમિંગમાં RDDsનો જીવન પ્રવાહ નીચે પ્રમાણે રફ છે.
(1) ઇનપુટડીસ્ટ્રીમમાં, પ્રાપ્ત ડેટા RDD માં રૂપાંતરિત થાય છે, જેમ કે DirectKafkaInputStream, જે KafkaRDD જનરેટ કરે છે.
(2) પછી MappedDStream અને અન્ય ડેટા રૂપાંતરણ દ્વારા, આ સમયને રૂપાંતરણ માટેની નકશા પદ્ધતિને અનુરૂપ સીધો RDD કહેવામાં આવે છે.
(3) આઉટપુટ ક્લાસ ઑપરેશનમાં, જ્યારે RDD ખુલ્લું હોય ત્યારે જ, તમે વપરાશકર્તાને અનુરૂપ સ્ટોરેજ, અન્ય ગણતરીઓ અને અન્ય ઑપરેશન કરવા દો.