یہ پوسٹ اپاچی سور میں آپریٹرز کے بارے میں ہے۔اپاچی پگ آپ کو جاوا کے علم کے بغیر پیچیدہ ڈیٹا ٹرانسفارمشمنٹ لکھنے کا اہل بناتا ہے ، جس سے یہ واقعتا important اہم ہے .چلیں ہم آپریٹرز کی طرف جانے سے پہلے ، سور اور پگ لاطینی کیا ہیں اور مختلف طریق کار جن میں وہ چل سکتے ہیں اس پر ایک سرسری جائزہ لیں۔
اپاچی سور کیا ہے؟
ہاڈوپ اور میپ ریڈیوس پلیٹ فارم کا استعمال کرتے ہوئے بڑے ڈیٹا سیٹوں کی بازیافت کے ل Ap اپاچی سور ایک اعلی سطحی طریقہ کار کی زبان ہے۔ یہ جاوا پیکیج ہے ، جہاں اسکرپٹ جے وی ایم پر چلنے والی کسی بھی زبان پر عمل درآمد سے عمل میں لایا جاسکتا ہے۔ یہ بڑے پیمانے پر تکراری عمل میں استعمال ہوتا ہے۔
پی ایچ پی کی شکل کو سرے میں تبدیل کریں
اپاچی پگ تقسیم شدہ ڈیٹاسیٹ میں ایس کیو ایل جیسے سوالات کی اجازت دے کر ہڈوپ کے استعمال کو آسان بنا دیتا ہے اور اعداد و شمار کی بڑی مقدار کو جلد اور مؤثر طریقے سے پروسس کرنے کے ل complex پیچیدہ کاموں کو تخلیق کرنا ممکن بناتا ہے۔ پگ کی سب سے اچھی خصوصیت یہ ہے کہ ، اس میں شمولیت ، گروپ اور مجموعی جیسی بہت سی رشتہ دار خصوصیات کی پشت پناہی ہوتی ہے۔
میں جانتا ہوں کہ سور بہت زیادہ ETL ٹول کی طرح لگتا ہے اور اس میں ETL ٹولز کے ساتھ بہت سی خصوصیات عام ہیں۔ لیکن پگ اوور ای ٹی ایل ٹولز کا فائدہ یہ ہے کہ یہ بیک وقت بہت سے سرورز پر چل سکتا ہے۔
اپاچی سور لاطینی کیا ہے؟
آپاچی پگ لاطینی نامی ہاڈوپ ایپلی کیشنز کے لئے ایک زیادہ سٹرکچرڈ کوئوری لینگوئج (SQL) نما انٹرفیس کو بے نقاب کرنے کے ل Map اپاچی پگ میں ایک سادہ طریقہ کار زبان خلاصہ تیار کریں ، لہذا آپ علیحدہ میپ ریڈوس ایپلی کیشن کو لکھنے کے بجائے ، آپ اپاچی میں ایک اسکرپٹ لکھ سکتے ہیں۔ سور لاطینی جو خود بخود متوازی ہوتا ہے اور کلسٹر میں تقسیم ہوتا ہے۔ آسان الفاظ میں ، سور لاطینی ، ان پٹ لینے اور آؤٹ پٹ تیار کرنے والے سادہ بیانات کا ایک سلسلہ ہے۔ ان پٹ اور آؤٹ پٹ ڈیٹا بیگ ، نقشے ، ٹیوپلس اور اسکیلر پر مشتمل ہے۔
اپاچی سور پھانسی کے طریقوں:
اپاچی سور میں پھانسی کے دو طریقے ہیں:
مقامی طرز
’لوکل موڈ‘ میں ، ماخذ کا ڈیٹا آپ کے کمپیوٹر سسٹم میں موجود مقامی ڈائرکٹری سے لیا جائے گا۔ میپ ریڈس موڈ کو ’سور –x لوکل‘ کمانڈ کا استعمال کرکے بیان کیا جاسکتا ہے۔
میپریڈوسی وضع:
میپریڈوس موڈ میں پگ چلانے کے ل you ، آپ کو ہڈوپ کلسٹر اور ایچ ڈی ایف ایس انسٹالیشن تک رسائی درکار ہے۔ ‘سور’ کمانڈ کا استعمال کرتے ہوئے میپریڈوس وضع کی وضاحت کی جاسکتی ہے۔
اپاچی سور آپریٹرز:
ہاڈوپ اور میپ ریڈیوس پلیٹ فارم کا استعمال کرتے ہوئے بڑے ڈیٹا سیٹ کی بازیافت کے ل for اپاچی پگ آپریٹرز ایک اعلی سطحی طریقہ کار کی زبان ہے۔ پگ لاطینی بیان ایک آپریٹر ہے جو رشتہ کو ان پٹ کے طور پر لیتا ہے اور آؤٹ پٹ کے بطور دوسرا رشتہ تیار کرتا ہے۔ یہ آپریٹرز اعداد و شمار پر کام کرنے کے لئے سور لاطینی فراہم کرنے والے بنیادی ٹولز ہیں۔ وہ آپ کو چھانٹ کر ، گروہ بندی کرکے ، شامل ہوکر ، پروجیکشن اور فلٹرنگ کرکے اس کو تبدیل کرنے کی اجازت دیتے ہیں۔
آئیے کمانڈز چلانے کے لئے دو فائلیں بنائیں:
ہمارے پاس دو فائلیں ہیں جن کا نام ہے ‘پہلا’ اور ‘دوسرا۔’ پہلی فائل میں تین فیلڈ ہیں: صارف ، یو آر ایل اور آئی ڈی۔
دوسری فائل میں دو فیلڈز شامل ہیں: یو آر ایل اور درجہ بندی۔ یہ دو فائلیں CSV فائلیں ہیں۔
اپاچی سور آپریٹرز کو درجہ بندی کی جاسکتی ہے۔ متعلقہ اور تشخیصی۔
متعلقہ آپریٹرز:
ڈیٹا پر کام کرنے کے لئے متعلقہ آپریٹرز وہ اہم ٹولز ہیں جو سور لاطینی فراہم کرتے ہیں۔ یہ آپ کو چھانٹ کر ، گروہ بندی کرکے ، شامل ہونے ، پروجیکٹ اور فلٹرنگ کے ذریعے ڈیٹا کو تبدیل کرنے کی سہولت دیتا ہے۔ اس حصے میں بنیادی آپریشنل آپریٹرز کا احاطہ کیا گیا ہے۔
لوڈ:
LOAD آپریٹر کا استعمال فائل سسٹم یا ایچ ڈی ایف ایس اسٹوریج سے ڈیٹا کو سور کے رشتے میں لوڈ کرنے کے لئے کیا جاتا ہے۔
اس مثال میں ، لوڈ آپریٹر فائل ’پہلے‘ سے ڈیٹا لوڈ کرتا ہے جس سے ریلیشن ‘لوڈنگ 1’ بن جاتا ہے۔ فیلڈ کے نام صارف ، یو آر ایل ، آئی ڈی ہیں۔
ہر ایک کے لئے:
یہ آپریٹر ڈیٹا کے کالموں کی بنیاد پر ڈیٹا ٹرانسفارمیشن تیار کرتا ہے۔ یہ تعلق سے کھیتوں کو شامل کرنے یا ختم کرنے کے لئے استعمال ہوتا ہے۔ ڈیٹا کے کالموں کے ساتھ کام کرنے کیلئے فارورک جنریٹ آپریشن کا استعمال کریں۔
پہلے نتائج:
فلٹر:
یہ آپریٹر کسی شرط کی بنیاد پر تعلق سے ٹیوپلس کا انتخاب کرتا ہے۔
اس مثال میں ، جب شرط ’آئی ڈی‘ 8 سے زیادہ ہو تو ہم ’لوڈنگ 1‘ سے ریکارڈ کو فلٹر کررہے ہیں۔
فلٹر نتیجہ:
شامل ہوں:
مشترکہ آپریٹر عام فیلڈ اقدار کی بنیاد پر دو یا دو سے زیادہ تعلقات کے اندرونی ، مساوات جوڑ میں شمولیت کے لئے استعمال ہوتا ہے۔ JOIN آپریٹر ہمیشہ اندرونی شمولیت کرتا ہے۔ اندرونی شامل ہوکر کلید کنجیوں کو نظرانداز کرتے ہیں ، لہذا اس میں شمولیت سے قبل ان کو فلٹر کرنا سمجھ میں آتا ہے۔
اس مثال میں ، ’’ لوڈنگ 1 ‘‘ اور ’’ لوڈنگ 2 ‘‘ سے کالم ’url‘ پر مبنی دو رشتوں میں شامل ہوں۔
نتائج میں شامل ہوں:
ترتیب کے ذریعہ:
آرڈر بائی کا استعمال ایک یا زیادہ فیلڈز کی بنیاد پر تعلق کو حل کرنے کے لئے کیا جاتا ہے۔ آپ ASC اور DESC مطلوبہ الفاظ استعمال کرتے ہوئے چڑھتے یا نزول ترتیب میں چھانٹ سکتے ہیں۔
ذیل میں مثال کے طور پر ، ہم درجہ بندی کے فیلڈ میں چڑھنے والے ترتیب میں لوڈنگ 2 میں ڈیٹا کو چھانٹ رہے ہیں۔
آرڈر کے ذریعہ :
تناسب:
امتیازی نسبت میں ڈپلیکیٹ ٹپلوں کو ہٹاتا ہے۔ نیچے کی طرح ایک ان پٹ فائل لیتے ہیں ، جس میں ہے عمرو ، گھٹیا ، 8 اور amr، myblog، 10 دو بار فائل میں۔ جب ہم اس فائل میں موجود ڈیٹا پر الگ الگ اطلاق کرتے ہیں تو ، ڈپلیکیٹ اندراجات کو حذف کردیا جاتا ہے۔
تعلقی کا نتیجہ:
اسٹور:
اسٹور کا استعمال فائل سسٹم میں نتائج کو بچانے کے لئے کیا جاتا ہے۔
یہاں ہم بچا رہے ہیں لوڈنگ 3 نامزد فائل میں ڈیٹا ذخیرہ کرنا ایچ ڈی ایف ایس پر
اسٹور کے نتائج:
گروپ:
گرو آپریٹر گروپوں کو ایک ہی گروپ کی کلید (کلیدی فیلڈ) کے ساتھ مل کر گروپ کرتا ہے۔ کلیدی فیلڈ ایک ٹپل ہو گا اگر گروپ کی کلید میں ایک سے زیادہ فیلڈز ہوں گے ، ورنہ یہ گروپ کلید کی طرح ہی ہوگا۔ ایک گروپ آپریشن کا نتیجہ ایک ایسا رشتہ ہے جس میں ہر گروپ میں ایک ٹوپل شامل ہوتا ہے۔
اس مثال میں ، گروپ ویں
ای کالم یو آر ایل کے ذریعہ ‘لوڈنگ 1’۔
گروپ کے نتائج:
گروہ:
COGROUP GROUP آپریٹر کی طرح ہے۔ پڑھنے کے قابل ہونے کے ل program ، پروگرامر عام طور پر گرو کو استعمال کرتے ہیں جب صرف ایک ہی رشتہ شامل ہوتا ہے اور جب متعدد تعلقات شامل ہوتے ہیں تو شریک ہوجاتے ہیں۔
بصری اسٹوڈیو کو استعمال کرنا سیکھیں
اس مثال میں دونوں تعلقات میں یو آر ایل فیلڈ کے ذریعہ ’لوڈنگ 1‘ اور ’لوڈنگ 2‘ کو گروپ کریں۔
کولیگ نتیجہ:
کراس:
کراس آپریٹر دو یا دو سے زیادہ تعلقات کے کراس پروڈکٹ (کارٹیسین پروڈکٹ) کی گنتی کے لئے استعمال ہوتا ہے۔
لوڈنگ 1 اور لوڈنگ 2 پر کراس پروڈکٹ کا اطلاق کرنا۔
کراس نتیجہ:
محدود:
LMP آپریٹر کا استعمال آؤٹ پٹ ٹیوپلس کی تعداد کو محدود کرنے کے لئے کیا جاتا ہے۔ اگر آؤٹ پٹ ٹوپلس کی مخصوص تعداد رشتے میں ٹیوپلس کی تعداد کے برابر ہے یا اس سے زیادہ ہے تو ، آؤٹ پٹ میں رشتہ میں تمام ٹیپل شامل ہوں گے۔
محدود نتائج:
سپلیٹ:
SPLIT آپریٹر کچھ اظہار کی بنیاد پر کسی رشتے کے مندرجات کو دو یا زیادہ تعلقات میں تقسیم کرنے کے لئے استعمال ہوتا ہے۔ بیان میں بیان کردہ شرائط پر منحصر ہے۔
لوڈنگ 2 کو x اور y دو رشتوں میں تقسیم کریں۔ x ریلیشننگ لوڈنگ 2 کے ذریعہ تخلیق کردہ فیلڈز پر مشتمل ہے کہ درجہ بندی 8 سے زیادہ ہے اور y ریلیشنشن میں وہ فیلڈز ہیں جو درجہ بندی 8 سے کم یا اس کے برابر ہے۔
ہمارے لئے ایک سوال ہے؟ برائے کرم ان کا تذکرہ سیکشن میں ذکر کریں اور ہم آپ کو واپس ملیں گے۔
متعلقہ اشاعت:
آپاشی سور میں آپریٹرز - تشخیصی آپریٹرز
اپاچی سور میں UDF بنانے کے اقدامات