Weitere ähnliche Inhalte
Ähnlich wie مدل MapReduce (20)
مدل MapReduce
- 2. مقدمه
•MapReduceاست ها داده پردازش ایرب نویسی نامهرب مدل.
•Hadoopهای نامهرب تواند میMapReduceکند اراج را مختلف های زبان در شده نوشته.
•های نامهربMapReduceشوند می اراج موازی صورت به.
- 3. MapوReduce
•MapReduceشود می تقسیم قسمت دو به.MapوReduce.
•کلید ِجفت دارای فازهر-است خروجی ایرب مقدار کلید ِجفت و ورودی ایرب مقدار.
•ورودیMapازHDFSبه آن خروجی و شود می گرفتهReduceشود می ارسال.
•سازی پیاده ایرب نویس نامهربMapReduceحداقل باید2تابعMapوReduceایرب تابعی و
کند سازی پیاده را دو این اخوانیرف.
- 4. سازی پیادهMapReduce
•MapReduceمساله یک قالب در:
•آوریم بدست را سالهر در هواشناسی های ایستگاه توسط شده ثبت دمای ترین بیش میخواهیم.
•داد انجام موازی صورت به را ها پردازش توان می سرعت ایشزاف ایرب.
است پردازش یک توسط سالهر دمای بیشترین آوردن بدست ،موازی سازی پیاده ترین ساده.
اوال:است متفاوت سالهر در شده ثبت داده انزمی که آنجایی از(اض اراخی ها ایستگاه از بعضیشده افه
اند)سایر اززودتر خیلی ها پردازش بعضییابند می خاتمه ها پردازش.کنید فرض مثال30%های رکورد از
باشند سال یک به مربوط شده ثبت.
ثانیا:دارد احتیاج دیگری پردازش به ها آن سازی مرتب و سالهر های جواب کیبتر.
کنیم تقسیم سالهر ایرب مختلفی های دسته به را مساله استبهتر.ثب دمایحداکثر دستههرآن در شده ت
رسی می نهایی جواب به سالهر های دسته مقدار ترین بزرگ کردن پیدا با و ،گرداند برمی را دستهم.
- 5. سازی پیادهMapReduce
•آزمایشی دیتاست
•دیتاست های داده از سازی پیاده ایربNCDC
1
هواشناسی های ایستگاه از هوا و آب وضعیت ارشزگ که
ایم کرده استفاده کند می داری نگه را آمریکا.
•سازی ذخیره فرمتASCII.
•خط یک در ارشزگهر.
•ا ،افیاییرجغ عرض ،افیاییرجغ طول ،مشاهده زمان ،مشاهده تاریخ شامل نمونه های فیلد از بعضی،رتفاع
و هوا فشار ،نمونه کیفیت کد ،هوا درجه...
•که جایی آن ازHadoopب شده ثبت رکوردهای تمام کند می کاربهتر بزرگ های فایل بایک ایر
ایم کرده ذخیره فایل یک در را سال.
1
National Climatic Data Center
- 6. سازی پیادهMapReduce
•کنید فرض5باشدزیر مانند دیتاست در شده ذخیره رکورد:
• 0067011990999991950051507004...9999999N9+00001+99999999999...
• 0043011990999991950051512004...9999999N9+00221+99999999999...
• 0043011990999991950051518004...9999999N9-00111+99999999999...
• 0043012650999991949032412004...0500001N9+01111+99999999999...
• 0043012650999991949032418004...0500001N9+00781+99999999999...
•اجراستخ باال های رکورد اززیر اطالعات ،دارد اهمیت ما ایرب سال و هوا درجه اطالعات فقط که آنجایی ازمی
شود(تابع درMap:)
• (1950, 0)
• (1950, 22)
• (1950, −11)
• (1949, 111)
• (1949, 78)
- 7. خروجی و ورودیMapوReduce
•توابع خروجی و ورودی گفتیم قبال که طور همانMapوReduceکلید صورت به-است مقدار.
•تابعmapس و گیرد می ورودی عنوان به را شده ذخیره رکورد و فایل ابتدای از رکوردهر شروع آفستو ال
گرداند برمی خروجی عنوان به را شده ثبت دمای.
•تابع خروجیmapتوسطShuffleاطالعاتکند می بندی دسته سال مبنایبر را.
•تابعreduceورودی عنوان به شده ثبت دماهایگرد برمی را سالهر ازای به را آنحداکثر و گرفته رااند.
- 9. کالسMapper
•تابعMapکالس باMapperشود می مشخص.
•Hadoopکند می استفاده جاوا ای داده انواع جای به خود ای داده انواع از.LongWritable
شبیهLong،Textجای بهStringوIntWritableجای بهIntegerشده استفاده مثال این در
پکیج در که اندorg.apache.hadoop.ioدارند اررق.
•که شود می ثبت صورتی در شده گیری اندازه دمایQualityشده ثبت(substring(92,93))
اعداد از یکی[01459]خطا شده ثبت انزمی و باشد(9999)نباشد.
•ازContextورودی به که شود می استفاده خروجی در نتایج نوشتن ایربReducerفرستاده
شود می.
- 11. کالسReducer
•ورودی ای داده انواعReducerخروجی ای داده انواع با مطابق بایستیMapperباشد.
•بدس ها آن ماکزیمم انتخاب و سالهر ایرب شده ثبت دماهای پیمایش با خروجی مقدارمی ت
آید.
- 13. اصلی کالس
•یک کالس اینJobفایل قالب در راJarکند توزیعکالستر در تا دهد می اررق.
•روی خروجی و ورودیمسیر کردن تعیین ایربHDFSتابع از)(addInputPathکالس
FileInputFormatایم کرده استفاده.
•توابع باsetMapperClass()وsetReducerClass()های کالسMapperوReducerکرده تعریف را
ایم.
•توابع باsetOutputKeyClass()وsetOutputValueClass()کلید-کرده مشخص را خروجی مقدار
ایم.
•متدwaitForCompletion()،Jobکند میصبر آن پایان زمان تا و کند می ثبت را.
•کرد وارد ترمینال در رازیر های دستور بایستی برنامه ایراج ایرب
1
.
• export HADOOP_CLASSPATH=hadoop-examples.jar
hadoop MaxTemperature input/ncdc/sample.txt output
1
Full Instruction at: https://github.com/tomwhite/hadoop-book
- 14. ای داده جریان
•MapReduceکه است کاری از واحد یکclientشامل که دهد انجام میخواهدورودی های داده،
برنامهMapReduceوپیکربندی اطالعاتاست.
•کارهر(Job)وظیفه دو به(Task)شود می شکسته:MapوReduce.
•توسط ها وظیفهYARNروی و شوند می زمانبندیnodeها(کالستر مستقل هایکامپیوتر)می اراج
شوند.
•وظیفههرMapای تکه(split)کند می پردازش را ورودی های داده از.
•غیر پردازش به نسبت پردازش زمان مدت همزمانی دلیل به باشیم داشته ورودی تکه زیادی تعداداگرهمان همروند
و کند می پیدا گیری چشم کاهش ها دادهLoad Balancingو افتد می اتفاقبهترnodeهای تکهتر سریع های
کنند می پردازش را بیشتری.
•زم شدن افزوده باعث ورودی های تکه مدیریت از ناشی اضافی بار باشد کوچک خیلی ورودی های تکهاگرکلی ان
شود می پردازش.
•HDFSهای تکه یا بلوک اندازه از128است مناسب ها کاربرد اغلب ایرب که کند می استفاده مگابایتی.
- 15. ای داده جریان
•Hadoopهای وظیفه حالت بهترین درMapروی را هاnodeاند گرفته اررق آن روی ورودی های داده که هایی
کند می پردازش.
•حالت این درLocalityورودی انتقال صرفکالستر ارزشمند باند پهنای و کند می پیدا افزایش ها دادهMap
شود نمی.
•از ها داده است ممکن مواقعی درnodeاز حتی یا ودیگرRackشوند خوانده دیگری( .بعد صفحه شکل)
- 17. ای داده جریان
•خروجیMapهمان دیسک رویnodeتوسط باید تنها اش نتایج چون شود می نوشتهReduce
شود می حذف آن از پس و شود پردازش.
•اگرnodeکه یMapبیفتد کار از دهد می انجام راHadoopاتوماتیک صورت بهnode
کند می جایگزین را دیگری.
•خالفبرMapهر در و آمد می وجود به ای داده تکههر ایرب کهnodeجداگانه صورت به
تمام خروجی ،شد می پردازشMapوظیفه یک به هاReduceشود می فرستاده.
•شده مرتب خروجیMapداخل هاnodeکه یReduceتابع به سپس و شود می ادغام کند می اراج را
Reduceشود می ارسالکاربر توسط شده تعریف.
- 19. ای داده جریان
•چند که وقتیReducerهای وظیفه ،داریمMapرا شان خروجیبندی بخشبه را بخشهر و کنند می
یکReducerفرستند می.
•وظیفه هیچ توان میReduceنداشت ی.خروجی حالت این درMapدهد می را نهایی جواب ها.
- 20. توابعCombiner
•کار زیادی تعداد وجودMapشود مواجه محدودیت با هاکالستر روی باند پهنای که شود می باعث.
•Hadoopتابع که دهد می را امکان اینکاربر بهCombinerتعریف ها آن کیبتر و خروجی چند گرفتن ایرب
کند.خروجیCombinerبهReduceشود می فرستاده.
•چونCombinerتعدادهر به آن اخوانیرف است سازی بهینه تابع یک(بیشتر یاصفر)روی تاثیریخروجی
Reduceندارد.
•تابعCombinerبین که ای داده انزمی تواند میMapperوReducerدهد کاهش را شود می بدل و رد ها.
- 21. تابع تعریفCombiner
•با درجه باالترین کردن پیدا اصلی کالس شده بازنویسی نمونه بعدی اسالید مثال درCombinerشده آورده
است.
•که جایی آن از کنید دقتCombinerبه شبیه مثال این درReducerکند می عمل(ماکزیمم آوردن بدست
مقدار چند)از نمونه یکReducerعنوان به راCombinerایم کرده معرفی.
- 23. StreamingدرHadoop
•HadoopیکAPIایربMapReduceتوابع که دهد می را اجازه این شما به که است کرده اهمرفMapو
Reduceبنویسید جاوا ازغیر های زبان در را.
•Hadoop Streamingاستاندارد استریم ازUNIXبین ارتباط ایربHadoopکند می استفاده شما نامهرب و.
کدهای نوشتن ایرب توان می کند پشتیبانی را استریم این که زبانیهر از اینربنابMapReduceکرد استفاده.
•Streamingاست مناسب متن پردازش های کاربرد ایرب.