اسپارک اسٹریمنگ ڈیٹا کی صفائی کا طریقہ کار
(I) DStream اور RDD
جیسا کہ ہم جانتے ہیں، اسپارک اسٹریمنگ کمپیوٹیشن اسپارک کور پر مبنی ہے، اور اسپارک کور کا بنیادی حصہ آر ڈی ڈی ہے، اس لیے اسپارک اسٹریمنگ کا تعلق آر ڈی ڈی سے بھی ہونا چاہیے۔تاہم، اسپارک سٹریمنگ صارفین کو براہ راست RDD استعمال کرنے کی اجازت نہیں دیتی، لیکن DStream کے تصورات کا ایک مجموعہ خلاصہ کرتی ہے، DStream اور RDD جامع تعلقات ہیں، آپ اسے جاوا میں سجاوٹ کے نمونے کے طور پر سمجھ سکتے ہیں، یعنی DStream RDD کا ایک اضافہ ہے، لیکن رویہ RDD جیسا ہے۔
DStream اور RDD دونوں کی کئی شرائط ہیں۔
(1) اسی طرح کی تبدیلی کی کارروائیاں ہیں، جیسے نقشہ، reduceByKey، وغیرہ، لیکن کچھ منفرد، جیسے Window، mapWithStated، وغیرہ۔
(2) سبھی کے پاس ایکشن ایکشن ہوتے ہیں، جیسے foreachRDD، شمار وغیرہ۔
پروگرامنگ ماڈل مستقل ہے۔
(B) اسپارک سٹریمنگ میں DStream کا تعارف
DStream کئی کلاسوں پر مشتمل ہے۔
(1) ڈیٹا سورس کلاسز، جیسے InputDStream، مخصوص جیسے DirectKafkaInputStream، وغیرہ۔
(2) تبادلوں کی کلاسیں، عام طور پر MappedDStream، ShuffledDStream
(3) آؤٹ پٹ کلاسز، عام طور پر جیسے ForEachDStream
اوپر سے، شروع (ان پٹ) سے لے کر اختتام (آؤٹ پٹ) تک کا ڈیٹا DStream سسٹم کے ذریعے کیا جاتا ہے، جس کا مطلب ہے کہ صارف عام طور پر RDDs کو براہ راست نہیں بنا سکتا اور اس میں ہیرا پھیری نہیں کر سکتا، جس کا مطلب ہے کہ DStream کے پاس موقع اور ذمہ داری ہے۔ RDDs کے لائف سائیکل کے لیے ذمہ دار۔
دوسرے لفظوں میں، اسپارک اسٹریمنگ میں ایک ہے۔خودکار صفائیفنکشن
(iii) اسپارک سٹریمنگ میں RDD جنریشن کا عمل
اسپارک سٹریمنگ میں RDDs کی زندگی کا بہاؤ کچھ یوں ہے۔
(1) InputDStream میں، موصول ہونے والے ڈیٹا کو RDD میں تبدیل کیا جاتا ہے، جیسے DirectKafkaInputStream، جو KafkaRDD تیار کرتا ہے۔
(2) پھر MappedDStream اور دیگر ڈیٹا کی تبدیلی کے ذریعے، اس وقت کو براہ راست RDD کہا جاتا ہے جو تبادلوں کے لیے نقشہ کے طریقہ سے مطابقت رکھتا ہے۔
(3) آؤٹ پٹ کلاس آپریشن میں، صرف آر ڈی ڈی کے سامنے آنے پر، آپ صارف کو متعلقہ سٹوریج، دیگر حسابات اور دیگر کارروائیاں کرنے دے سکتے ہیں۔