MapReduce هو نموذج برمجة للتعبير عن الحسابات الموزعة على كميات هائلة من البيانات وإطار عمل تنفيذي لمعالجة البيانات على نطاق واسع على مجموعات من خوادم السلع. تم تطويره في الأصل بواسطة Google وتم بناؤه على مبادئ معروفة في المعالجة المتوازية والموزعة يعود تاريخها إلى عدة عقود. ومنذ ذلك الحين ، تمتعت MapReduce بتبني واسع النطاق عبر تطبيق مفتوح المصدر يسمى Hadoop ، الذي قاد تطويره Yahoo (الآن مشروع Apache). اليوم، نشأ نظام بيئي حيوي للبرامج حول Hadoop ، مع نشاط كبير في كل من الصناعة والأوساط الأكاديمية. يدور هذا الكتاب حول الأساليب القابلة للتطوير لمعالجة كميات كبيرة من النصوص باستخدامMapReduce
بالنظر إلى هذا التركيز ، من المنطقي أن نبدأ بالسؤال الأساسي:
لماذا ا؟ هناك العديد من الإجابات على هذا السؤال ، لكننا نركز على اثنين. أولاً ، “البيانات الضخمة” هي حقيقة من حقائق العالم ، وبالتالي فهي قضية يجب أن تتعامل معها أنظمة العالم الحقيقي. ثانيًا ، عبر مجموعة كبيرة من تطبيقات معالجة النصوص ، يتم ترجمة المزيد من البيانات إلى خوارزميات أكثر فعالية ، وبالتالي فمن المنطقي الاستفادة من الوفرة كميات البيانات التي تحيط بنا. يتم تعريف مجتمعات المعلومات الحديثة من خلال مستودعات ضخمة من البيانات ، سواء العامة والخاصة. لذلك ، يجب أن يكون أي تطبيق عملي قادرًا على الارتقاء إلى مجموعات البيانات من اهتمام. بالنسبة للكثيرين ، هذا يعني الارتقاء إلى مستوى الويب ، أو على الأقل مشاجرة غير تافهة- نشوئها. أي منظمة مبنية على جمع وتحليل ومراقبة وتصفية ، يجب أن يعالج البحث أو تنظيم محتوى الويب مشاكل البيانات الكبيرة: “مقياس الويب” يعتبر التوقف عملياً مرادفًا للمعالجة كثيفة البيانات