Teknologi Big Data Fundamental: Kelebihan Hadoop versi 2 dibanding Hadoop versi 1
Apa itu Apache Hadoop
1. Hadoop Distributed File System (HDFS), adalah file-system terdistribusi yang memfasilitasi penyimpanan data secara terdistribusi dalam kluster komputer.
2. Hadoop MapReduce, adalah sebuah sistem yang ditujukan untuk memproses data berukuran besar secara paralel.
3. Hadoop Common, adalah common utilitas yang digunakan untuk mendukung modul-modul Hadoop yang lainnya.
4. Hadoop YARN, adalah framework yang berperan dalam job scheduling dan resource management pada kluster Hadoop. Hadoop versi 1 tidak memiliki YARN.
2. Hadoop MapReduce, adalah sebuah sistem yang ditujukan untuk memproses data berukuran besar secara paralel.
3. Hadoop Common, adalah common utilitas yang digunakan untuk mendukung modul-modul Hadoop yang lainnya.
4. Hadoop YARN, adalah framework yang berperan dalam job scheduling dan resource management pada kluster Hadoop. Hadoop versi 1 tidak memiliki YARN.
Kelebihan Hadoop versi 2 dibanding Hadoop versi 1
YARN
Pada Hadoop versi 1, JobTracker adalah master daemon yang bekerja baik untuk Job resource management maupun untuk Jobs scheduling/monitoring. JobTracker bertanggung jawab atas keseluruhan siklus hidup (life cycle) dari suatu Job mulai dari scheduling hingga penyelesaian yang sukses (fungsi scheduling dan monitoring). JobTracker juga harus menjaga resource information pada tiap Datanode, sepeti informasi tentang jumlah unit Map dan Reduce yang tersedia pada DataNode-Datanode yang dimiliki HDFS (fungsi resource management). Jadi, dalam suatu kluster Hadoop berskala besar dengan ribuan Map Task dan Reduce Task yang berjalan dengan kontrol TaskTracker pada tiap DataNode, akan terjadi fenomena bottlenecks pada CPU dan Network. Arsitektur MapReduce versi 1 dapat diilustrasikan seperti pada Gambar 1.
Gambar 1. Arsitektur MapReduce 1 |
Sedangkan pada Hadoop versi 2, terdapat MapReduce versi 2 (MRv2) yang merupakan framework aplikasi yang bekerja dalam YARN, yang membagi dua fungsi utama JobTracker yakni resource management dan job scheduling/monitoring menjadi 2 komponen yang terpisah. ResourceManager bertugas mengatur pembagian sumber daya komputasi secara global kepada semua aplikasi yang sedang berjalan, sedangkan AplicationMaster berfungsi mengatur scheduling dan koordinasi pada tiap aplikasi yang sedang berjalan. YARN telah memberikan fungsi yang lebih baik dalam hal resource management, yang berimplikasi pada peningkatan efisiensi kluster Hadoop dan perbaikan performance aplikasi yang berjalan pada Hadoop. Feature YARN ini bukan hanya menghasilkan perbaikan pada pemrosesan data oleh MapReduce, tetapi juga telah memungkinkan penggunaan Hadoop untuk aplikasi pengolahaan data yang lain. Dengan kata lain, YARN dapat memfasilitasi aplikasi Big Data lain yang tidak menggunakan model pemrograman MapReduce, diantaranya: Spark, MPI, Giraph, HBase dan HAMA. Hadoop 2 telah menyediakan YARN API untuk membuat program dari framework non-MapReduce tersebut untuk dapat berjalan pada HDFS. Arsitektur YARN dapat diilustrasikan seperti pada Gambar 2, sedangkan siklus hidup (life cycle) dari MapReduce versi 2 (termasuk aplikasi-aplikasi Big Data lain) yang bekerja pada YARN dapat dijelaskan seperti pada Gambar 3.
Gambar 2. Arsitektur YARN |
Gambar 3. Job Life Cycle YARN |
Perlu dicatat, YARN dan MapReduce versi 2 (MRv2) adalah dua konsep yang berbeda. YARN adalah framework yang bertugas dalam resource management, berfungsi menyediakan infrastruktur dan API untuk memfasilitasi permintaan, alokasi, dan scheduling terhadap resources pada kluster Hadoop. YARN menyediakan daemon dan API yang diperlukan untuk mengembangkan berbagai jenis aplikasi terdistribusi generik, menangani dan mengatur permintaan resource/sumber daya (seperti memory dan CPU) dari tiap aplikasi tersebut, serta mengawasi eksekusinya. Sedangkan MRv2 adalah framework aplikasi yang berjalan didalam YARN.
Selain YARN, Hadoop versi 2 juga memiliki kelebihan dalam dua hal berikut dibanding Hadoop versi 1, yaitu:
1. HDFS Federation, adalah skalabilitas NameNode secara horisontal.
2. NameNode High Availability, yakni NameNode sudah bukan lagi Titik Tunggal penyebab gagal fungsi Hadoop.
2. NameNode High Availability, yakni NameNode sudah bukan lagi Titik Tunggal penyebab gagal fungsi Hadoop.
HDFS Federation
NameNode High Availability
Demikianlah, kelebihan yang dimiliki Hadoop versi 2 dibanding Hadoop versi 1 yang telah menjadikan Hadoop dapat menjalankan berbagai jenis aplikasi Big Data (tidak hanya MapReduce) secara lebih efisien dan berperforma lebih baik. Hal ini lah yang telah membuat Hadoop berkembang menjadi sebuah ekosistem framework dan aplikasi Big Data yang dikenal dengan istilah Hadoop Ecosystem.
Ref:
"Introduction to Hadoop 2.0 and Advantages of Hadoop 2.0 over 1.0", Edureka.co, Edureka.co 2016.
"Hadoop and MongoDB", MongoDB.com, MongoDB.com 2016.
"Introduction to Hadoop 2.0 and Advantages of Hadoop 2.0 over 1.0", Edureka.co, Edureka.co 2016.
"Hadoop and MongoDB", MongoDB.com, MongoDB.com 2016.
Comments