چنگاری جمع کرنے والوں کی وضاحت: اپاچی چنگاری



یہ اپاچی سپارک بلاگ چنگاری جمع کرنے والوں کی تفصیل کے ساتھ وضاحت کرتا ہے۔ مثال کے ساتھ چنگاری جمع کرنے والا استعمال سیکھیں۔ چنگاری جمع کرنے والے ہڈوپ میپریڈو کاؤنٹر کی طرح ہوتے ہیں۔

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

یہاں سامان پر ایک بلاگ ہے جس میں آپ کو چنگاری جمع کرنے والوں کے بارے میں جاننے کی ضرورت ہے۔کے ساتھ ایک آئی ٹی مہارت حاصل کرنے والے ایک اہم ہنر ہونے کے ناطے ، اس کی صنعت میں ترقی اور طلب اس کے آغاز سے ہی قابل ذکر ہے۔





جمع کرنے والے کیا ہیں؟

جمع کرنے والے متغیر ہیں جو ایگزیکٹوز میں معلومات جمع کرنے کے لئے استعمال ہوتے ہیں۔ مثال کے طور پر ، یہ معلومات ڈیٹا یا API تشخیص سے متعلق ہوسکتی ہے جیسے کتنے ریکارڈ خراب ہوئے ہیں یا کتنی بار کسی مخصوص لائبریری API کو بلایا گیا تھا۔

یہ سمجھنے کے لئے کہ ہمیں جمع کرنے کی ضرورت کیوں ہے ، آئیے ایک چھوٹی سی مثال دیکھیں۔



یہاں کلکتہ کے وسطی علاقے کے آس پاس اسٹورز کی زنجیروں کے لین دین کا خیالی لاگ ہے۔

logs-Spark-accumulators

یہاں 4 فیلڈز ہیں ،

فیلڈ 1 -> شہر



فیلڈ 2 -> مقام

فیلڈ 3 -> فروخت کردہ آئٹم کی قسم

لوپ کے لئے استعمال کرتے ہوئے جاوا میں کسی نمبر کے ہندسوں کا مجموعہ

فیلڈ 4 -> فروخت کردہ آئٹم کی قیمت

تاہم ، نوشتہ جات خراب ہوسکتے ہیں۔ مثال کے طور پر ، دوسری لائن ایک خالی لائن ہے ، چوتھی لائن میں کچھ نیٹ ورک کے معاملات کی اطلاع دی گئی ہے اور آخر کار آخری سطر صفر کی فروخت کی قیمت ظاہر کرتی ہے (جو نہیں ہوسکتا ہے!)۔

ہم خالی لاگ (خالی لائنوں) کی تعداد ، نیٹ ورک کے ناکام ہونے کی تعداد ، کسی بھی ایسی مصنوعات کی جس میں زمرہ نہیں ہے یا حتی کہ صفر فروخت ریکارڈ کی گئی ہے اس کی تعداد معلوم کرنے کے ل the ہم لین دین لاگ کا تجزیہ کرنے کے لئے جمع کرنے والے افراد کا استعمال کرسکتے ہیں۔ مکمل نمونہ لاگ ملا جا سکتا ہے یہاں .
جمع کرنے والے کسی بھی آپریشن پر لاگو ہوتے ہیں جو ،
1. تبدیلی -> f (x، y) = f (y، x) ، اور
2. ایسوسی ایٹ -> f (f (x، y)، z) = f (f (x، z)، y) = f (f (y، z)، x)
مثال کے طور پر، رقم اور زیادہ سے زیادہ افعال مذکورہ بالا شرائط کو پورا کرتے ہیں اوسط نہیں کرتا.

چنگاری اکومیولیٹرز کیوں استعمال کریں؟

اب ہمیں جمع کرنے والوں کی ضرورت کیوں ہے اور کیوں نہ صرف متغیرات کو استعمال کریں جیسا کہ نیچے کوڈ میں دکھایا گیا ہے۔

مذکورہ کوڈ میں مسئلہ یہ ہے کہ جب ڈرائیور متغیر پرنٹ کرتا ہے خالی لائنیں اس کی قیمت صفر ہوگی۔ اس کی وجہ یہ ہے کہ جب سپارک اس کوڈ کو ہر عملدار کے پاس بھیج دیتا ہے تو متغیرات اس پراسیکیوٹر کے لئے مقامی ہوجاتے ہیں اور اس کی تازہ کاری کی قیمت ڈرائیور کے پاس واپس نہیں لائی جاتی ہے۔ اس پریشانی سے بچنے کے لئے ہمیں پیدا کرنے کی ضرورت ہے خالی لائنیں اس طرح ایک جمع کرنے والا کہ اس کے متغیر کی ہر تازہ کاری کرنے والے میں تازہ ترین معلومات ڈرائیور کے پاس واپس کردی جاتی ہیں۔ لہذا مذکورہ کوڈ کو لکھا جانا چاہئے ،

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

ہم نیٹ ورک کی غلطیوں یا فروخت کی قیمت صفر وغیرہ کے ل other دوسرے کاؤنٹرز کو نافذ کرسکتے ہیں ، دوسرے کاؤنٹرز کے نفاذ کے ساتھ ساتھ پورا ماخذ کوڈ پایا جاسکتا ہے۔ یہاں .

ہڈوپ میپ-ریڈیوس سے واقف افراد دیکھیں گے کہ چنگاری کے جمع کرنے والے ہڈوپ کے میپ - ریڈیوس کاؤنٹروں سے ملتے جلتے ہیں۔

غار

جمع کرنے والے افراد کا استعمال کرتے وقت کچھ انتباہات ہوتے ہیں جن کے بارے میں ہمیں بطور پروگرامروں کو آگاہ کرنے کی ضرورت ہوتی ہے ،

  1. اندر گنتی تبدیلیوں سست انداز میں جانچ کی جاتی ہے ، لہذا جب تک کہ ایک عمل RDD پر ہوتا ہے تبدیلیوں پھانسی نہیں دی جاتی ہے۔ اس کے نتیجے میں ، جمع کرنے والے جیسے کام کے اندر استعمال ہوتا ہے نقشہ () یا فلٹر () کچھ نہیں جب تک پھانسی نہیں ہوگی عمل RDD پر ہو.
  2. چنگاری جمع کرنے والوں کو اپ ڈیٹ کرنے کی ضمانت دیتا ہے اندر اعمال صرف ایک بار . لہذا یہاں تک کہ اگر کوئی کام دوبارہ شروع کیا جاتا ہے اور نسب دوبارہ بن جاتا ہے تو ، جمع کرنے والوں کو صرف ایک بار اپ ڈیٹ کیا جائے گا۔
  3. چنگاری اس کی ضمانت نہیں دیتی تبدیلیوں . لہذا اگر کوئی کام دوبارہ شروع کیا جاتا ہے اور نسب دوبارہ بن جاتا ہے تو ، ناپسندیدہ ضمنی اثرات کے امکانات موجود ہوتے ہیں جب جمع کرنے والے ایک سے زیادہ بار اپ ڈیٹ ہوجاتے ہیں۔

محفوظ پہلو پر رہنے کے لئے ، ہمیشہ صرف اعمال کے اندر جمع کرنے والا استعمال کریں۔
کوڈ یہاں اس کو حاصل کرنے کے طریق کار پر ایک آسان اور مؤثر مثال دکھاتا ہے۔
جمع کرنے والوں سے متعلق مزید معلومات کے ل read پڑھیں یہ .

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

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

اپاچی اسپرنگ کومبائن کی وضاحت کی