Tujuan utama Hadoop . ini Tutorial adalah untuk menjelaskan setiap aspek dari Apache Hadoop Framework. Pada dasarnya, tutorial ini dirancang sedemikian rupa sehingga mudah untuk Mempelajari Hadoop dari dasar.
Dalam artikel ini, kami akan berusaha menjawab pertanyaan seperti apa itu Big data Hadoop, Apa kebutuhan Hadoop, apa sejarah Hadoop, dan terakhir kelebihan dan kekurangan framework Apache Hadoop.
Harapan kami adalah setelah membaca artikel ini, Anda akan memiliki pemahaman yang jelas tentang apa itu Hadoop Framework.
Apa itu Hadoop?
Ini adalah kerangka kerja perangkat lunak sumber terbuka untuk penyimpanan terdistribusi &pemrosesan sejumlah besar kumpulan data. Sumber terbuka berarti tersedia secara bebas dan bahkan kami dapat mengubah kode sumbernya sesuai kebutuhan Anda.
Ini juga memungkinkan untuk menjalankan aplikasi pada sistem dengan ribuan node. Sistem file terdistribusinya memiliki penyediaan kecepatan transfer data yang cepat antar node. Ini juga memungkinkan sistem untuk terus beroperasi jika terjadi kegagalan node.
Hadoop menyediakan-
- Lapisan Penyimpanan – HDFS
- Mesin pemrosesan batch – MapReduce
- Lapisan Manajemen Sumber Daya – BENANG
Hadoop – Sejarah
Pada tahun 2003, Google meluncurkan proyek Nutch untuk menangani miliaran pencarian. Juga untuk mengindeks jutaan halaman web. Pada Oktober 2003 Google menerbitkan GFS (Google File System), dari kertas itulah Hadoop berasal.
Pada tahun 2004, Google merilis makalah dengan MapReduce . Dan pada tahun 2005, Nutch menggunakan GFS dan MapReduce untuk melakukan operasi.
Pada tahun 2006, Ilmuwan komputer Doug Cutting dan Mike Cafarella menciptakan Hadoop. Pada bulan Februari 2006 Doug Cutting bergabung dengan Yahoo . Ini menyediakan sumber daya dan tim khusus untuk mengubah Hadoop menjadi sistem yang berjalan pada skala web. Pada tahun 2007, Yahoo mulai menggunakan Hadoop pada 100 node cluster.
Pada bulan Januari 2008, Hadoop membuat proyek tingkat atas sendiri di Apache, mengkonfirmasi keberhasilannya. Banyak perusahaan lain yang menggunakan Hadoop selain Yahoo!, seperti New York Times dan Facebook.
Pada bulan April 2008, Hadoop memecahkan rekor dunia untuk menjadi sistem tercepat untuk menyortir satu terabyte data. Berjalan di cluster 910-node, Diurutkan satu terabyte dalam 209 detik.
Pada bulan Desember 2011, Apache Hadoop merilis versi 1.0. Pada bulan Agustus 2013, versi 2.0.6 telah tersedia. Kemudian pada bulan Juni 2017, Apache Hadoop 3.0.0-alpha4 tersedia. ASF (Apache Software Foundation) mengelola dan memelihara kerangka kerja dan ekosistem teknologi Hadoop.
Mengapa Hadoop?
Seperti yang telah kita pelajari Pendahuluan, Sekarang kita akan mempelajari apa yang dibutuhkan Hadoop?
Ini muncul sebagai solusi untuk “Big Data ” masalah-
a. Penyimpanan untuk Data Besar – HDFS Memecahkan masalah ini. Ini menyimpan Big Data dengan Cara Terdistribusi. HDFS juga menyimpan setiap file sebagai blok. Blok adalah unit data terkecil dalam sistem file.
Misalkan Anda memiliki data 512MB. Dan Anda telah mengonfigurasi HDFS sedemikian rupa sehingga akan membuat 128Mb blok data. Jadi HDFS membagi data menjadi 4 blok (512/128=4) dan menyimpannya di berbagai DataNodes. Ini juga mereplikasi blok data pada node data yang berbeda.
Oleh karena itu, menyimpan data besar bukanlah suatu tantangan.
b. Skalabilitas – Ini juga memecahkan masalah Scaling. Ini terutama berfokus pada penskalaan horizontal daripada penskalaan vertikal. Anda dapat menambahkan node data tambahan ke cluster HDFS jika diperlukan. Alih-alih meningkatkan sumber daya node data Anda.
Oleh karena itu meningkatkan kinerja secara dramatis.
c. Menyimpan berbagai data – HDFS memecahkan masalah ini. HDFS dapat menyimpan semua jenis data (terstruktur, semi terstruktur atau tidak terstruktur). Ini juga mengikuti menulis sekali dan membaca banyak model .
Karena itu, Anda dapat menulis jenis data apa pun sekali dan Anda dapat membacanya beberapa kali untuk menemukan wawasan.
d. Kecepatan Pemrosesan Data – Ini adalah masalah utama dari data besar. Untuk mengatasi masalah ini, pindahkan komputasi ke data alih-alih data ke komputasi. Prinsip ini adalah Lokalitas data .
Komponen Inti Hadoop
Sekarang kita akan mempelajari komponen inti Apache Hadoop secara detail. Ini memiliki 3 komponen inti-
- HDFS
- Pengurangan Peta
- BENANG(Negosiator Sumber Daya Lain)
Mari kita bahas komponen inti ini satu per satu.
a. HDFS
Sistem file terdistribusi Hadoop (HDFS) adalah sistem penyimpanan utama Hadoop. HDFS menyimpan file yang sangat besar yang berjalan pada sekelompok perangkat keras komoditas. Ini mengikuti prinsip menyimpan lebih sedikit jumlah file besar daripada sejumlah besar file kecil.
Menyimpan data dengan andal bahkan jika terjadi kegagalan perangkat keras. Ini memberikan akses throughput tinggi ke aplikasi dengan mengakses secara paralel.
Komponen HDFS:
- NameNode – Ia bekerja sebagai Master di cluster. Namenode menyimpan meta-data . Sejumlah blok, replika, dan detail lainnya. Meta-data hadir dalam memori di master. NameNode memelihara dan juga mengelola node slave, dan memberikan tugas kepada mereka. Ini harus diterapkan pada perangkat keras yang andal karena merupakan inti dari HDFS.
- DataNode – Ini berfungsi sebagai Budak di cluster. Di HDFS, DataNode bertanggung jawab untuk menyimpan data aktual di HDFS. DataNode melakukan operasi baca dan tulis sesuai permintaan untuk klien. DataNodes juga dapat diterapkan pada perangkat keras komoditas.
b. Pengurangan Peta
MapReduce adalah lapisan pemrosesan data Hadoop. Ini memproses data terstruktur dan tidak terstruktur besar yang disimpan dalam HDFS. MapReduce juga memproses sejumlah besar data secara paralel.
Ini dilakukan dengan membagi pekerjaan (pekerjaan yang diserahkan) menjadi satu set tugas independen (sub-pekerjaan). MapReduce bekerja dengan memecah pemrosesan menjadi beberapa fase:Map dan Reduce.
- Peta – Ini adalah fase pertama pemrosesan, di mana kami menentukan semua kode logika kompleks.
- Kurangi – Ini adalah pemrosesan tahap kedua. Di sini kami menentukan pemrosesan ringan seperti agregasi/penjumlahan.
c. BENANG
YARN menyediakan manajemen sumber daya. Ini adalah sistem operasi Hadoop. Ini bertanggung jawab untuk mengelola dan memantau beban kerja, juga menerapkan kontrol keamanan. Apache YARN juga merupakan platform pusat untuk menghadirkan alat tata kelola data di seluruh cluster.
YARN memungkinkan beberapa mesin pemrosesan data seperti streaming waktu nyata, pemrosesan batch, dll.
Komponen BENANG:
- Manajer Sumber Daya – Ini adalah komponen tingkat cluster dan berjalan pada mesin Master. Ini mengelola sumber daya dan menjadwalkan aplikasi yang berjalan di atas YARN. Ini memiliki dua komponen:Penjadwal &Manajer Aplikasi.
- Pengelola Node – Ini adalah komponen tingkat simpul. Ini berjalan pada setiap mesin budak. Itu terus berkomunikasi dengan Manajer Sumber Daya untuk tetap up-to-date
Kelebihan Hadoop
Sekarang mari kita bahas berbagai keunggulan Hadoop untuk mengatasi masalah big data.
- Skalabilitas – Dengan menambahkan node, kami dapat dengan mudah mengembangkan sistem kami untuk menangani lebih banyak data.
- Fleksibilitas – Dalam framework ini, Anda tidak perlu memproses data terlebih dahulu sebelum menyimpannya. Anda dapat menyimpan data sebanyak yang Anda inginkan dan memutuskan cara menggunakannya nanti.
- Berbiaya rendah – Kerangka kerja sumber terbuka gratis dan berjalan pada perangkat keras komoditas berbiaya rendah.
- Toleransi kesalahan – Jika node turun, maka pekerjaan secara otomatis dialihkan ke node lain.
- Kekuatan komputasi – Ini model komputasi terdistribusi memproses data besar dengan cepat. Semakin banyak node komputasi yang Anda gunakan, semakin banyak kekuatan pemrosesan yang Anda miliki.
Kekurangan Hadoop
Beberapa Kerugian dari Apache Hadoop Framework diberikan di bawah ini-
- Masalah keamanan – Ini dapat menjadi tantangan dalam mengelola aplikasi yang kompleks. Jika pengguna tidak tahu cara mengaktifkan platform yang mengelola platform, maka data Anda bisa menjadi risiko besar. Karena, tingkat penyimpanan dan jaringan Hadoop tidak memiliki enkripsi, yang menjadi perhatian utama.
- Rentan secara alami – Kerangka kerja ini ditulis hampir di java, bahasa yang paling banyak digunakan. Java sangat dieksploitasi oleh penjahat dunia maya. Akibatnya, terlibat dalam berbagai pelanggaran keamanan.
- Tidak cocok untuk data kecil – Karena, itu tidak cocok untuk data kecil. Oleh karena itu, ia tidak memiliki kemampuan untuk secara efisien mendukung pembacaan acak file kecil.
- Potensi masalah stabilitas – Karena ini adalah kerangka kerja sumber terbuka. Artinya, banyak pengembang yang terus mengerjakan proyek tersebut. Sementara perbaikan terus-menerus dilakukan, Ini memiliki masalah stabilitas. Untuk menghindari masalah ini, organisasi harus menjalankan versi stabil terbaru.
Kesimpulan
Kesimpulannya, kita dapat mengatakan bahwa ini adalah alat data besar yang paling populer dan kuat. Ini menyimpan sejumlah besar data secara terdistribusi.
Dan kemudian memproses data secara paralel pada sekelompok node. Ini juga menyediakan lapisan penyimpanan paling andal di dunia- HDFS. Mesin pemrosesan batch MapReduce dan lapisan manajemen Sumber Daya- BENANG.
Oleh karena itu, daemon ini memastikan fungsionalitas Hadoop.