چنگاری اسٹریمنگ میں ونڈوونگ کے ساتھ ریاستی تبدیلیاں



اس بلاگ پوسٹ میں اسپارک اسٹریمنگ میں ونڈو لگانے کے ساتھ بھر پور تبدیلیوں پر تبادلہ خیال کیا گیا ہے۔ اسٹیٹ فل ڈی اسٹریمز کا استعمال کرتے ہوئے بیچوں میں ڈیٹا سے باخبر رہنے کے بارے میں سبھی جانیں۔

پرتھویراج بوس نے تعاون کیا

اس بلاگ میں ہم اپاچی اسپارک کی ریاستی تبدیلیوں کے ونڈو تصور پر تبادلہ خیال کریں گے۔





ریاستی تبدیلی کیا ہے؟

اسپارک اسٹریمنگ میں مائکرو بیچ فن تعمیر کا استعمال ہوتا ہے جہاں آنے والے ڈیٹا کو مائکرو بیچوں میں گروپ کیا جاتا ہے جسے ڈسریکٹائزڈ اسٹریمز (ڈی ایس ٹریمز) کہا جاتا ہے جو بنیادی پروگرامنگ خلاصہ کا بھی کام کرتا ہے۔ DStreams اندرونی طور پر لچکدار ڈسٹری بیوٹڈ ڈیٹاسیٹس (RDD) رکھتی ہے اور اس معیاری RDD کے نتیجے میں تبدیلیاں اور اقدامات ہوسکتے ہیں۔



سلسلہ بندی میں اگر ہمارے پاس بیچوں میں ڈیٹا کو ٹریک کرنے کے لئے استعمال کیس ہے تو ہمیں ریاستی فل DStreams کی ضرورت ہے۔

مثال کے طور پر ہم صارف سیشن کے دوران کسی ویب سائٹ میں کسی صارف کے تعامل کو ٹریک کرسکتے ہیں یا ہم وقت کے ساتھ ہی کسی خاص ٹویٹر ہیش ٹیگ کو ٹریک کرسکتے ہیں اور دیکھ سکتے ہیں کہ پوری دنیا میں کون سے صارفین اس کے بارے میں بات کر رہے ہیں۔

ریاست میں تبدیلی کی اقسام۔



اسٹیٹ فل ڈی ایس ٹریم دو قسم کی ہیں - ونڈو بیسڈ ٹریکنگ اور فل سیشن ٹریکنگ۔

ریاستی ٹریکنگ کے لئے آنے والے تمام اعداد و شمار کو کلیدی قدر کے جوڑے میں تبدیل کرنا چاہئے تاکہ کلیدی ریاستوں کو بیچوں میں کھڑا کیا جاسکے۔ یہ ایک شرط ہے۔

مزید یہ کہ ہمیں چیک پوائنٹنگ کو بھی قابل بنانا چاہئے ، ایسا تصور جس کے بارے میں ہم بعد کے بلاگز میں گفتگو کریں گے۔

> ونڈو پر مبنی ٹریکنگ

ونڈو پر مبنی ٹریکنگ میں آنے والے بیچوں کو وقت کے وقفوں کے مطابق گروپ کیا جاتا ہے ، یعنی گروپ ہر ‘ایکس’ سیکنڈ میں بیچ کرتا ہے۔ ان بیچوں پر مزید گنتی سلائیڈ وقفوں کے ذریعے کی جاتی ہے۔

مثال کے طور پر اگر ونڈو کا وقفہ = 3 سیکنڈ اور سلائڈ وقفہ = 2 سیکنڈ ، تو پھر آنے والے تمام اعداد و شمار کو ہر 3 سیکنڈ میں بیچوں میں گروپ کیا جائے گا اور ان بیچوں کی گنتی ہر 2 سیکنڈ میں ہوگی۔ متبادل کے طور پر ہم یہ کہہ سکتے ہیں ، آخری 3 سیکنڈ میں آنے والی بیچوں پر ہر 2 سیکنڈ میں کمپیوٹرز لگائیں۔

spark-streaming-dstream-window

مذکورہ آریگرام میں ہم دیکھتے ہیں کہ آنے والی بیچوں کو ہر 3 یونٹ وقت (ونڈو وقفہ) پر گروپ کیا جاتا ہے اور ہر 2 یونٹ وقت (سلائڈ وقفہ) کے حساب سے کام لیا جاتا ہے۔
نوٹ: اپاچی فلنک کے برخلاف ، اپاچی سپارک میں ونڈو کو گڑبڑ کرنے کا تصور نہیں ہے ، تمام ونڈوز سلائیڈنگ کر رہی ہیں۔

آگ

ونڈو پر مبنی تبدیلیوں کے لئے ایک مشہور API ہے

پیئر اسٹریم فنکشنز۔ پریڈ بائکیی اور ونڈو .

اس API کے متعدد اوورلوڈ ورژن ہیں ، آئیے ایک ایسا پیر دیکھیں جس میں زیادہ سے زیادہ پیرامیٹرز ہوں۔ اس وضاحت کے بعد اس API کے باقی اوورلوڈ ورژن خود وضاحتی ہونے چاہئیں۔

واپسی: تبدیل شدہ DStream [(K، V)]

اوورلوڈنگ اور اوور رائیڈنگ میں کیا فرق ہے؟

کم کریں : اسسوسی ایٹ کم فنکشن۔

invReduceFunc : مندرجہ بالا کے معکوس تقریب کو کم کریں۔ یہ آنے والے اور باہر جانے والے بیچوں کی موثر کمپیوٹنگ کے لئے ضروری ہے۔ اس فنکشن کی مدد سے باہر جانے والے بیچوں کی قیمت مندرجہ بالا کم فنکشن کی جمع شدہ قیمت سے کٹوتی ہے۔ مثال کے طور پر ، اگر ہم متعلقہ کلیدوں کے ل the آنے والی قدروں کا مجموعہ مرتب کررہے ہیں تو باہر جانے والے بیچوں کے ل we ہم متعلقہ چابیاں کے ل the اقدار کو گھٹائیں گے (بشرطیکہ وہ موجودہ بیچ میں موجود ہوں ورنہ نظرانداز کریں)۔

ونڈو کی مدت : بیچوں کو گروپ کرنے کے لئے وقت کی اکائیوں ، یہ بیچ کے وقفہ میں ایک سے زیادہ ہونا چاہئے۔

سلائیڈ دورانیہ : حساب کے لئے اکائیوں کے وقت ، یہ بیچ کے وقفہ میں ایک سے زیادہ ہونا چاہئے۔ پارٹیشنز : نتیجے میں ڈی ایس ٹریم اسٹوریج کرنے کیلئے استعمال کرنے والا فریق۔ تقسیم پڑھنے سے متعلق مزید معلومات کے ل یہ .

فلٹرفنک : میعاد ختم ہونے والی کلیدی قیمت کے جوڑے کو فلٹر کرنے کا کام ، مثلا. اگر ہمیں کچھ دیر کے لئے کسی کلید کے لئے کوئی اپ ڈیٹ نہیں ملتا ہے تو ہم اسے ختم کرنا چاہتے ہیں۔

یہاں ایک پروگرام ساکٹ ندی سے آنے والے الفاظ کی گنتی کرنا۔ ہم نے 4 سیکنڈ کے ونڈو وقفہ اور 2 سیکنڈ کے سلائڈ وقفہ کے ساتھ مذکورہ فنکشن کا اوورلوڈ ورژن استعمال کیا ہے۔

اپنے اگلے بلاگ میں میں مکمل سیشن سے باخبر رہنے اور چیک پوائنٹ کے بارے میں لکھوں گا۔

ہمارے لئے ایک سوال ہے؟ برائے کرم اس کا تذکرہ سیکشن میں ذکر کریں اور ہم آپ کو واپس ملیں گے۔

متعلقہ اشاعت:

براڈکاسٹ متغیرات کے ساتھ کیچ تقسیم کیا