Video: Hadoop Processing Frameworks 2024
MapReduce adalah paradigma pengaturcaraan yang direka untuk membolehkan pemprosesan diedarkan selari set besar data, mengubahnya menjadi set tuple, dan kemudian menggabungkan dan mengurangkan tuple tersebut menjadi set tuple yang lebih kecil. Dalam istilah awam, MapReduce direka untuk mengambil data besar dan menggunakan pengkomputeran diedarkan selari untuk menjadikan data besar menjadi sedikit atau data berukuran biasa.
Pemprosesan diedarkan selari merujuk kepada rangka kerja yang kuat di mana jisim data yang banyak diproses dengan cepat dengan mengedarkan tugas pemprosesan di seluruh kelompok pelayan komoditi. Berkenaan dengan MapReduce, tupel merujuk kepada pasangan nilai utama dengan mana data dikumpulkan, disusun, dan diproses.
MapReduce pekerjaan kerja melalui peta dan mengurangkan urutan operasi proses merentas set pelayan yang diedarkan. Dalam tugas peta , anda mewakilkan data anda kepada pasangan nilai utama, mengubahnya, dan menyaringnya. Kemudian anda memberikan data kepada nod untuk diproses.
Dalam mengurangkan tugas , anda mengagregatkan data itu ke kumpulan data yang lebih kecil. Data dari langkah mengurangkan diubah menjadi format nilai utama standard - di mana kekunci bertindak sebagai pengenal rekod dan nilai adalah nilai yang dikenalpasti oleh kunci. Nodus pengkomputeran kelompok memproses peta dan mengurangkan tugas yang ditentukan oleh pengguna. Kerja ini dilakukan mengikut dua langkah berikut:
-
Peta data.
Data yang masuk mesti terlebih dahulu didelegasikan ke dalam pasangan nilai utama dan dibahagikan kepada serpihan, yang kemudiannya ditugaskan untuk memetakan tugas. Setiap kelompok pengkomputeran - kumpulan nod yang bersambung antara satu sama lain dan melakukan tugas pengkomputeran bersama - diberikan beberapa tugas peta, yang kemudiannya diedarkan di antara nodnya.
Apabila memproses pasangan nilai utama, pasangan nilai utama perantara dijana. Pasangan nilai utama perantaraan disusun mengikut nilai utama mereka, dan senarai ini dibahagikan kepada satu set serpihan baru. Apa sahaja yang anda perolehi untuk serpihan baru ini, ia akan sama dengan bilangan tugas yang dikurangkan.
-
Kurangkan data.
Setiap tugas yang mengurangkan mempunyai serpihan yang diberikan kepadanya. Tugas mengurangkan hanya memproses serpihan dan menghasilkan output, yang juga pasangan kunci-nilai. Mengurangkan tugas juga diagihkan di kalangan nod yang berbeza dalam kelompok. Selepas tugas selesai, output akhir ditulis ke sistem fail.
pasangan tersebut ke dalam set data yang lebih kecil melalui operasi pengagregatan
- operasi yang menggabungkan beberapa nilai dari dataset ke satu nilai tunggal.Gambarajah senibina MapReduce boleh didapati di sini. Jika data anda tidak dipinjamkan dan diproses melalui kekunci, nilai, dan pengagregatan, maka peta dan mengurangkan
umumnya tidak sesuai untuk keperluan anda. Jika anda menggunakan MapReduce sebagai sebahagian daripada penyelesaian Hadoop, output akhir ditulis ke
Sistem Fail Hadoop (HDFS). HDFS adalah sistem fail yang merangkumi kelompok pelayan komoditi yang digunakan untuk menyimpan data besar. HDFS membuat pengendalian dan penyimpanan data yang besar secara fleksibel dengan mendistribusikan tugas penyimpanan di seluruh kelompok pelayan komoditi murah.