Map Reduce
Teori
MapReduce adalah sebuah model pemograman yang didesain untuk dapat melakukan
pemrosesan data dengan jumlah yang sangat besar dengan cara membagi pemrosesan tersebut
ke beberapa tugas yang indipenden satu sama lain.
Gambar 1. Alur Map Reduce Word Count
Berdasarkan definisi diatas dan Gambar 1, MapReduce dapat dibagi menjadi beberapa tahap:
1. Pemecahan data masukan (Splitting).
Pada proses ini data masukan yang diberikan oleh pengguna MapReduce (klien) akan dipecah
menjadi bagian-bagian yang lebih kecil. Pada kasus Hadoop MapReduce, dalam kondisi ideal,
data akan dipecah menjadi beberapa bongkahan berukuran maksimal 128MB.
2. Mapping.
Mapping adalah salah satu tahap terpenting dari MapReduce. Pada fase Mapping, bongkahan
data yang telah dipecah akan di proses untuk menghasilkan intermediary key-value pairs. Pada
contoh wordcount (Gambar 1) diatas, data yang mengandung “Dear Bear River” akan diproses
sehingga menghasilkan pasangan key-value Dear:1, Bear:1, dan River:1. Dalam fase Mapping,
bisa jadi ada satu atau lebih mesin pekerja (worker) yang melakukan proses terhadap beberapa
bongkahan data yang berbeda. Semakin banyak jumlah mesin atau tingkatan parallelisme yang
digunakan, maka durasi pemrosesan seluruh data dapat berjalan jauh lebih cepat.
3. Pengacakan atau Shuffling.
Fase mapping bisa berjalan di satu atau banyak mesin. Akibatnya, pasangan key-value yang
dihasilkan oleh sebuah mapper bisa tersebar di berbagai mesin. Namun, jika pengolahan yang
ingin dilakukan adalah perhitungan dengan menggunakan key yang sama, maka data dengan
key yang sama harus berada pada mesin yang sama pada fase reduce. Oleh karena itu, sebelum
fase reduce, fase shuffling bertugas untuk mengumpulkan satu atau lebih key yang berbeda
disebuah mesin tertentu agar aggregasi dapat dilakukan dengan mudah. Pada contoh diatas,
seluruh kata Bear yang dihasilkan fase mapping akan berada dalam sebuah mesin yang sama.
Begitu juga dengan kata-kata lain.
4. Reducing.
Fase reducing bertugas untuk melakukan aggregasi terhadap seluruh pasangan intermediary
key-value dengan key yang sama. Pada gambar diatas, pasangan key-value Bear:1 dan Bear:1
akan diaggregasi oleh reducer sehingga pada akhirnya reducer akan menghasilkan keluaran
Bear:2 seperti pada contoh kasus wordcount.
Langkah – Langkah
1. Jalankan Hadoop
2. Buat Direktori
3. Copy File
Copy kan file txt dari direktori asal ke direktori Hadoop yang telah ditentukan pada
tahapan kedua
4. Verifikasi File
5. Verifikasi Content
6. Jalankan Algoritma Map Reduce
• hadoop jar C:/[Link] wordcount /input_dir /output_dir
• hadoop dfs -cat /output_dir/*
Referensi
• [Link]
8f80f22cc54f
• [Link]
Platform