Video: How to Analyse YouTube Data Using MapReduce | MapReduce Use Case | Hadoop Tutorials 2024
Cara HDFS telah disiapkan, ini memecah file berukuran sangat besar menjadi blok besar (misalnya berukuran 128MB) dan menyimpan tiga salinan dari blok-blok ini pada node yang berbeda dalam cluster. HDFS tidak memiliki kesadaran akan isi file-file ini.
Di YARN, ketika sebuah pekerjaan MapReduce dimulai, Resource Manager (pengelolaan sumber daya cluster dan fasilitas penjadwalan pekerjaan) menciptakan daemon Master Aplikasi untuk menjaga siklus hidup pekerjaan. (Di Hadoop 1, JobTracker memantau pekerjaan individual serta menangani penjadwalan pekerjaan dan pengelolaan sumber daya cluster.)
secara lokal - pada simpul budak tempat penyimpanannya. Sebelum melihat bagaimana data blok diproses, Anda perlu melihat lebih dekat bagaimana Hadoop menyimpan data. Di Hadoop, file terdiri dari catatan individu, yang pada akhirnya diproses satu per satu oleh tugas pemeta.
Misalnya, kumpulan data sampel berisi informasi tentang penerbangan lengkap di Amerika Serikat antara tahun 1987 dan 2008.
Anda memiliki satu file besar untuk setiap tahun, dan di dalam setiap file, masing-masing baris mewakili satu penerbangan. Dengan kata lain, satu baris mewakili satu record. Sekarang, ingatlah bahwa ukuran blok untuk cluster Hadoop adalah 64MB, yang berarti file data cahaya dipecah menjadi potongan dengan tepat 64MB.
Apakah kamu melihat masalahnya? Jika setiap tugas peta memproses semua catatan di blok data tertentu, apa yang terjadi pada catatan yang membatasi batas blok? Blok file persis 64MB (atau berapa pun ukuran blok yang Anda tetapkan), dan karena HDFS tidak memiliki konsep tentang apa yang ada di dalam blok file, file tidak dapat diukur saat rekaman mungkin tumpah ke blok lain.
Untuk mengatasi masalah ini, Hadoop menggunakan representasi logis dari data yang tersimpan dalam blok file, yang dikenal sebagai
input split . Ketika klien pekerjaan MapReduce menghitung pemecah masukan, angka tersebut menunjukkan di mana keseluruhan record pertama di blok dimulai dan di mana catatan terakhir di blok berakhir. Dalam kasus di mana rekaman terakhir dalam blok tidak lengkap, pemecahan masukan mencakup informasi lokasi untuk blok berikutnya dan byte offset data yang dibutuhkan untuk menyelesaikan rekaman.
Angka tersebut menunjukkan hubungan antara blok data dan pemecah masukan.
Anda dapat mengkonfigurasi daemon Application Master (atau JobTracker, jika Anda berada di Hadoop 1) untuk menghitung pemecah masukan alih-alih klien pekerjaan, yang akan lebih cepat untuk pekerjaan yang memproses sejumlah besar blok data.
Pengolahan data MapReduce didorong oleh konsep pemecah masukan ini. Jumlah pemecah masukan yang dihitung untuk aplikasi tertentu menentukan jumlah tugas mapper. Masing-masing tugas mapper ini ditugaskan, jika mungkin, ke simpul budak dimana pemecahan masukan disimpan. Manajer Sumber Daya (atau JobTracker, jika Anda berada di Hadoop 1) melakukan yang terbaik untuk memastikan bahwa pemecah masukan diproses secara lokal.