स्पार्क स्ट्रीमिंग डेटा सफाई तंत्र
(I) डीस्ट्रीम और RDD
जैसा कि हम जानते हैं, स्पार्क स्ट्रीमिंग की गणना स्पार्क कोर पर आधारित है, और स्पार्क कोर का मूल RDD है, इसलिए स्पार्क स्ट्रीमिंग का RDD से भी संबंध होना चाहिए। हालाँकि, स्पार्क स्ट्रीमिंग उपयोगकर्ताओं को सीधे RDD का उपयोग करने की अनुमति नहीं देती है, बल्कि DStream अवधारणाओं के एक समूह को अमूर्त करती है। DStream और RDD समावेशी संबंध हैं। आप इसे जावा में सजावट पैटर्न के रूप में समझ सकते हैं, अर्थात, DStream, RDD का एक संवर्द्धन है, लेकिन व्यवहार RDD के समान है।
DStream और RDD दोनों में कई शर्तें हैं।
(1) समान परिवर्तन क्रियाएं होती हैं, जैसे कि मैप, रिड्यूसबायकी, आदि, लेकिन कुछ अद्वितीय भी होती हैं, जैसे कि विंडो, मैपविथस्टेटेड, आदि।
(2) सभी में Action क्रियाएं होती हैं, जैसे foreachRDD, count, आदि।
प्रोग्रामिंग मॉडल सुसंगत है।
(बी) स्पार्क स्ट्रीमिंग में डीस्ट्रीम का परिचय
DStream में कई वर्ग शामिल हैं।
(1) डेटा स्रोत वर्ग, जैसे कि InputDStream, विशिष्ट रूप से DirectKafkaInputStream, आदि।
(2) रूपांतरण वर्ग, आमतौर पर MappedDStream, ShuffledDStream
(3) आउटपुट क्लासेस, आमतौर पर जैसे ForEachDStream
उपरोक्त से, शुरुआत (इनपुट) से अंत (आउटपुट) तक डेटा का संचालन DStream सिस्टम द्वारा किया जाता है, जिसका अर्थ है कि उपयोगकर्ता सामान्य रूप से RDDs को सीधे उत्पन्न और हेरफेर नहीं कर सकता है, जिसका अर्थ है कि DStream के पास RDDs के जीवन चक्र के लिए जिम्मेदार होने का अवसर और दायित्व है।
दूसरे शब्दों में, स्पार्क स्ट्रीमिंग में एकस्वचालित सफाईसमारोह।
(iii) स्पार्क स्ट्रीमिंग में RDD निर्माण की प्रक्रिया
स्पार्क स्ट्रीमिंग में RDD का जीवन प्रवाह इस प्रकार है।
(1) InputDStream में, प्राप्त डेटा को RDD में परिवर्तित किया जाता है, जैसे DirectKafkaInputStream, जो KafkaRDD उत्पन्न करता है।
(2) फिर MappedDStream और अन्य डेटा रूपांतरण के माध्यम से, इस बार रूपांतरण के लिए मैप विधि के अनुरूप सीधे RDD कहा जाता है
(3) आउटपुट क्लास ऑपरेशन में, केवल जब RDD उजागर होता है, तो आप उपयोगकर्ता को संबंधित भंडारण, अन्य गणना और अन्य संचालन करने दे सकते हैं।