برنامج MapReduce التعليميدليل الدراسة

Published on 2023-04-20 00:10:05 · 中文 · English · Español · हिंदीName · 日本語 · Русский язык · 中文繁體

MapReduce هو نموذج برمجة يعمل خلف كواليس Hadoop ويوفر قابلية التوسع وحلا بسيطا لمعالجة البيانات. يشرح هذا البرنامج التعليمي ما يفعله MapReduce وكيف يحلل البيانات الضخمة.
MapReduce هو نموذج برمجة لكتابة التطبيقات التي يمكنها معالجة البيانات الضخمة بالتوازي على عقد متعددة. يوفر MapReduce إمكانات تحليلية لتحليل كميات كبيرة من البيانات المعقدة.

ما هي البيانات الضخمة؟

البيانات الضخمة هي مجموعة من مجموعات البيانات الكبيرة التي لا يمكن معالجتها باستخدام تقنيات الحوسبة التقليدية. على سبيل المثال ، تقع كمية البيانات التي يحتاجها Facebook أو Youtube لجمعها وإدارتها كل يوم تحت مظلة البيانات الضخمة. ومع ذلك ، فإن البيانات الضخمة لا تتعلق فقط بالحجم والحجم ، ولكن أيضا حول واحد أو أكثر مما يلي - السرعة والتنوع والحجم والتعقيد.

لماذا ماب ريدكت؟

عادة ما تحتوي أنظمة المؤسسات التقليدية على خادم مركزي لتخزين البيانات ومعالجتها. يصور الرسم البياني التالي رسما تخطيطيا لنظام المؤسسة التقليدي. من المؤكد أن النموذج التقليدي غير مناسب للتعامل مع كميات هائلة من البيانات القابلة للتطوير ، ولا يمكن لخوادم قواعد البيانات القياسية استيعابها. بالإضافة إلى ذلك ، تخلق الأنظمة المركزية اختناقات مفرطة عند معالجة ملفات متعددة في نفس الوقت.
传统企业系统视图
قامت Google بحل عنق الزجاجة هذا باستخدام خوارزمية تسمى MapReduce. يقسم MapReduce المهمة إلى أجزاء صغيرة ويوزعها على أجهزة كمبيوتر متعددة. ثم يتم تجميع النتائج معا ودمجها لتشكيل مجموعة بيانات نتيجة.
中央系统

كيف يعمل MapReduce ؟

تتكون خوارزمية MapReduce من مهمتين مهمتين ، الخريطة والتقليل.
تأخذ مهمة الخريطة مجموعة واحدة من البيانات وتحولها إلى مجموعة أخرى من البيانات، حيث يتم تقسيم العناصر الفردية إلى مجموعات (أزواج المفتاح-القيمة). تأخذ مهمة التقليل مخرجات الخريطة كمدخلات وتجمع مجموعات البيانات هذه (أزواج القيمة الرئيسية) في مجموعة أصغر من المجموعات.
يتم تنفيذ مهمة التقليل دائما بعد مهمة الخريطة.
الآن دعونا نلقي نظرة على كل مرحلة ونحاول فهم مدى أهميتها.
Phases مرحلة الإدخال - هنا لدينا قارئ سجلات يترجم كل سجل في ملف الإدخال ويرسل البيانات التي تم تحليلها إلى مخطط الخرائط في شكل أزواج من القيم الرئيسية. Map-Map هي وظيفة معرفة من قبل المستخدم تأخذ سلسلة من أزواج القيمة الرئيسية وتعالج كل زوج من قيم المفتاح لإنتاج صفر أو أكثر من أزواج القيمة الرئيسية. مفتاح وسيط- تسمى أزواج قيمة المفتاح التي تم إنشاؤها بواسطة مخطط الخرائط المفاتيح الوسيطة. Combiner-Combiner هو مبسط توطين يقوم بتجميع البيانات المتشابهة من مرحلة التعيين في مجموعات يمكن التعرف عليها. يأخذ المفتاح الأوسط لمخطط الخرائط كإدخال ويطبق التعليمات البرمجية المعرفة من قبل المستخدم لتجميع القيم ضمن نطاق صغير من مصممي الخرائط. إنه ليس جزءا من خوارزمية MapReduce الرئيسية. إنه اختياري. تبدأ مهام التبديل العشوائي والفرز والتقليل بخطوتي التبديل العشوائي والفرز. يقوم بتنزيل أزواج القيمة الرئيسية المجمعة إلى الجهاز المحلي الذي يقوم بتشغيل Reducer. يتم فرز أزواج المفاتيح والقيم الفردية في قائمة أكبر من البيانات. تجمع قوائم البيانات بين المفاتيح المكافئة لتكرار قيمها بسهولة في مهمة Reducer. المخفض - يأخذ المخفض بيانات زوج المفتاح والقيمة المجمعة كمدخلات ويقوم بتشغيل وظيفة المخفض على كل منها. هنا ، يمكن تجميع البيانات وتصفيتها ودمجها بعدة طرق ، ويلزم إجراء معالجة مكثفة. عند اكتمال التنفيذ ، فإنه يوفر صفرا أو أكثر من أزواج القيمة الرئيسية للخطوة الأخيرة. مرحلة الإخراج - في مرحلة الإخراج ، لدينا منسق إخراج يحول أزواج قيمة المفتاح النهائية من وظيفة Reduce ويكتبها في ملف باستخدام كاتب التسجيلات.
دعنا نحاول فهم مهمتي Map &f Reduce بمساعدة رسم تخطيطي صغير-
MapReduce Work

خريطةتقليل - مثال

لنأخذ مثالا واقعيا لفهم قوة MapReduce. يتلقى تويتر حوالي 500 مليون تغريدة يوميا ، أو ما يقرب من 3000 تغريدة في الثانية. يوضح الرسم التخطيطي التالي كيفية إدارة Tweeter لتغريداته بمساعدة MapReduce.
MapReduce 示例
كما هو موضح في الشكل ، تقوم خوارزمية MapReduce بما يلي-
Tokenize - ضع علامة على التغريدات كتعيينات علامات واكتبها على أزواج المفاتيح والقيمة. تصفية - تصفية الكلمات غير المرغوب فيها من خريطة العلامة وكتابة الخريطة التي تمت تصفيتها كأزواج من المفاتيح والقيم. العد - كل كلمة تولد عداد رمز مميز. العدادات المجمعة - تعد مجموعة من قيم العداد في وحدات صغيرة يمكن التحكم فيها.