Apa itu MapReduce di Hadoop? Data besar Architekstur

Apa itu MapReduce di Hadoop?

PetaKurangi adalah kerangka perangkat lunak dan model pemrograman yang digunakan untuk memproses data dalam jumlah besar. PetaKurangi Program ini bekerja dalam dua fase, yaitu Map dan Reduce. Tugas Map berkaitan dengan pemisahan dan pemetaan.ping dari data sementara tugas Reduce mengacak dan mengurangi data.

Hadoop mampu menjalankan program MapReduce yang ditulis dalam berbagai bahasa: Java, rubi, Python, dan C++Program Map Reduce dalam komputasi awan bersifat paralel, sehingga sangat berguna untuk melakukan analisis data skala besar dengan menggunakan beberapa mesin dalam kluster.

Masukan untuk setiap fase adalah nilai kunci berpasangan. Selain itu, setiap programmer perlu menentukan dua fungsi: fungsi peta ke mengurangi fungsi.

PetaKurangi Archikuliah di Big Data dijelaskan dengan Contoh

Seluruh proses tersebut melalui empat fase eksekusi yaitu pemisahan, pemetaanping, mengocok, dan mengurangi.

Sekarang dalam tutorial MapReduce ini, mari kita pahami dengan contoh MapReduceโ€“

Pertimbangkan Anda memiliki data input berikut untuk MapReduce Anda di Program data besar

Welcome to Hadoop Class
Hadoop is good
Hadoop is bad
PetaKurangi Architekstur
PetaKurangi Architekstur

Hasil akhir dari tugas MapReduce adalah

buruk 1
Kelas 1
baik 1
Hadoop 3
is 2
untuk 1
Selamat Datang 1

Data melewati fase-fase berikut MapReduce dalam Big Data

Pembagian Masukan:

Masukan ke pekerjaan MapReduce di Big Data dibagi menjadi bagian-bagian berukuran tetap yang disebut pemisahan masukan Pemisahan input adalah sebagian dari input yang digunakan oleh satu peta

Lokasiping

Ini adalah fase pertama dalam eksekusi program map-reduce. Pada fase ini, data di setiap split diteruskan ke sebuah map.ping fungsi untuk menghasilkan nilai keluaran. Dalam contoh kita, tugas pemetaanping Tahap selanjutnya adalah menghitung jumlah kemunculan setiap kata dari input yang telah dipisahkan (detail lebih lanjut tentang input-split diberikan di bawah) dan menyiapkan daftar dalam bentuk

Mengocok

Fase ini menggunakan output dari Map.ping fase. Tugasnya adalah mengkonsolidasikan catatan-catatan yang relevan dari Peta.ping keluaran fase. Dalam contoh kita, kata-kata yang sama dikelompokkan bersama dengan frekuensinya masing-masing.

Mengurangi

Pada fase ini, nilai output dari fase Shuffling digabungkan. Fase ini menggabungkan nilai dari fase Shuffling dan mengembalikan satu nilai output. Singkatnya, fase ini merangkum kumpulan data lengkap.

Dalam contoh kita, fase ini mengagregasi nilai-nilai dari fase Pengocokan, yaitu menghitung total kemunculan setiap kata.

PetaKurangi Architekstur dijelaskan secara rinci

  • Satu tugas peta dibuat untuk setiap pemisahan yang kemudian menjalankan fungsi peta untuk setiap catatan dalam pemisahan tersebut.
  • Melakukan beberapa pemisahan selalu bermanfaat karena waktu yang diperlukan untuk memproses suatu pemisahan lebih kecil dibandingkan dengan waktu yang diperlukan untuk memproses keseluruhan masukan. Ketika pemisahan lebih kecil, pemrosesan lebih baik dilakukan secara seimbang karena kita memproses pemisahan secara paralel.
  • Namun, ukuran belahan yang terlalu kecil juga tidak diinginkan. Ketika pemisahan terlalu kecil, beban berlebihan dalam mengelola pemisahan dan pembuatan tugas peta mulai mendominasi total waktu pelaksanaan pekerjaan.
  • Untuk sebagian besar pekerjaan, lebih baik membuat ukuran terpisah sama dengan ukuran blok HDFS (yaitu 64 MB, secara default).
  • Eksekusi tugas peta menghasilkan keluaran penulisan ke disk lokal pada node masing-masing dan bukan ke HDFS.
  • Alasan memilih disk lokal daripada HDFS adalah, untuk menghindari replikasi yang terjadi jika terjadi operasi penyimpanan HDFS.
  • Keluaran peta merupakan keluaran antara yang diproses dengan tugas reduksi untuk menghasilkan keluaran akhir.
  • Setelah pekerjaan selesai, keluaran peta dapat dibuang. Jadi, menyimpannya dalam HDFS dengan replikasi menjadi berlebihan.
  • Jika terjadi kegagalan simpul, sebelum keluaran peta digunakan oleh tugas pengurangan, Hadoop menjalankan kembali tugas peta pada simpul lain dan membuat ulang keluaran peta.
  • Mengurangi tugas tidak berfungsi pada konsep lokalitas data. Output dari setiap tugas peta diumpankan ke tugas pengurangan. Output peta ditransfer ke mesin tempat tugas pengurangan berjalan.
  • Pada mesin ini, output digabungkan dan kemudian diteruskan ke fungsi pengurangan yang ditentukan pengguna.
  • Berbeda dengan keluaran peta, keluaran pengurangan disimpan di dalamnya HDFS (replika pertama disimpan di node lokal dan replika lainnya disimpan di node off-rack). Jadi, menulis output pengurangan

Bagaimana MapReduce Mengorganisir Pekerjaan?

Sekarang dalam tutorial MapReduce ini, kita akan mempelajari cara kerja MapReduce

Hadoop membagi pekerjaan menjadi tugas-tugas. Ada dua jenis tugas:

  1. Memetakan tugas (Pembagian & Peta)ping)
  2. Kurangi tugas (Mengocok, Mengurangi)

seperti disebutkan di atas.

Proses eksekusi lengkap (eksekusi tugas Map dan Reduce, keduanya) dikendalikan oleh dua jenis entitas yang disebut a

  1. PekerjaantracKer: Bertindak seperti a menguasai (bertanggung jawab atas pelaksanaan lengkap pekerjaan yang diserahkan)
  2. Tugas Ganda Tracceri: Bertindak seperti budak, masing-masing dari mereka melakukan pekerjaan itu

Untuk setiap pekerjaan yang diserahkan untuk dieksekusi dalam sistem, ada satu PekerjaantracKer yang tinggal di Node nama dan ada tugas gandatracceri yang tinggal di simpul data.

Bagaimana Hadoop MapReduce Bekerja
Bagaimana Hadoop MapReduce Bekerja
  • Suatu pekerjaan dibagi menjadi beberapa tugas yang kemudian dijalankan ke beberapa simpul data dalam satu klaster.
  • Itu adalah tanggung jawab pekerjaan. tracker untuk mengoordinasikan aktivitas dengan menjadwalkan tugas untuk dijalankan pada node data yang berbeda.
  • Pelaksanaan tugas individu kemudian diawasi berdasarkan tugas. tracker, yang berada di setiap node data yang menjalankan bagian dari pekerjaan tersebut.
  • tugas tracTanggung jawab ker adalah mengirimkan laporan kemajuan pekerjaan. tracker.
  • Selain itu, tugas tracker secara berkala mengirimkan 'denyut jantung' sinyal ke Ayubtracagar dapat memberitahukannya tentang kondisi sistem saat ini.
  • Jadi pekerjaan tracker terus track dari keseluruhan kemajuan setiap pekerjaan. Jika tugas gagal, pekerjaan tersebut tracker dapat menjadwalkannya ulang pada tugas yang berbeda tracker.

Ringkaslah postingan ini dengan: