Video: Hadoop Processing Frameworks 2024
Pada terasnya, MapReduce adalah model pengaturcaraan untuk memproses set data yang disimpan dalam cara yang tersebar di sebilangan nod hamba cluster hod. Konsep utama di sini ialah membahagi dan menakluk. Khususnya, anda ingin memecah data besar yang ditetapkan ke dalam banyak bahagian yang lebih kecil dan memprosesnya selari dengan algoritma yang sama.
Dengan Sistem Fail Teragih Hadoop (HDFS), fail-fail tersebut telah dibahagikan kepada kepingan bersaiz gigitan. MapReduce adalah apa yang anda gunakan untuk memproses semua kepingan.
MapReduce aplikasi mempunyai beberapa fasa, seperti yang dinyatakan dalam senarai ini:
-
Tentukan set data yang tepat untuk memproses dari blok data. Ini melibatkan pengiraan di mana rekod diproses terletak dalam blok data.
-
Jalankan algoritma yang ditentukan terhadap setiap rekod dalam set data sehingga semua rekod diproses.
Contoh individu aplikasi yang dijalankan terhadap blok data dalam set data dikenali sebagai tugas mapper. (Ini adalah bahagian pemetaan MapReduce.)
-
Secara tempatan melakukan pengurangan interim output setiap mapper.
(Output digabungkan secara sementara, dalam erti kata lain.) Fasa ini adalah pilihan kerana, dalam beberapa kes biasa, tidak diinginkan.
-
Berdasarkan keperluan partitioning, sekelompok partisi data yang terpakai dari setiap set hasil pemetaan.
-
Rebus set hasil dari pemetaan ke set keputusan tunggal - Mengurangkan bahagian MapReduce.
Contoh individu aplikasi yang dijalankan terhadap data output mapper dikenali sebagai tugas pengurangan . (Seperti yang pelik kerana ia mungkin kelihatan, kerana "Mengurangkan" adalah sebahagian daripada nama MapReduce, fasa ini boleh menjadi pilihan; aplikasi tanpa reducer dikenali sebagai peta sahaja-pekerjaan , yang boleh berguna apabila tidak ada perlu menggabungkan set hasil daripada tugas peta.)