Apa itu Hadoop?
Apache Hadoop adalah kerangka perisian sumber terbuka yang digunakan untuk mengembangkan aplikasi pemprosesan data yang dijalankan dalam lingkungan pengkomputeran terdistribusi.
Aplikasi yang dibina menggunakan HADOOP dijalankan pada set data besar yang diedarkan di sekumpulan komputer komoditi. Komputer komoditi murah dan banyak didapati. Ini sangat berguna untuk mencapai kuasa pengiraan yang lebih besar dengan kos rendah.
Mirip dengan data yang berada di sistem fail tempatan dari sistem komputer peribadi, di Hadoop, data berada dalam sistem fail terdistribusi yang disebut sebagai sistem Fail Terdistribusi Hadoop . Model pemprosesan didasarkan pada konsep 'Data Locality' di mana logik komputasi dihantar ke node kluster (pelayan) yang mengandungi data. Logik komputasi ini tidak lain, hanyalah versi program yang disusun yang ditulis dalam bahasa peringkat tinggi seperti Java. Program seperti itu, memproses data yang disimpan di Hadoop HDFS.
Adakah awak tahu? Kluster komputer terdiri daripada sekumpulan beberapa unit pemprosesan (storan cakera + pemproses) yang saling terhubung satu sama lain dan bertindak sebagai satu sistem.
Dalam tutorial ini, anda akan belajar,
- Hadoop EcoSystem dan Komponen
- Senibina Hadoop
- Ciri-ciri 'Hadoop'
- Topologi Rangkaian Dalam Hadoop
Hadoop EcoSystem dan Komponen
Gambar rajah di bawah menunjukkan pelbagai komponen dalam ekosistem Hadoop-
Apache Hadoop terdiri daripada dua sub-projek -
- Hadoop MapReduce: MapReduce adalah model komputasi dan kerangka perisian untuk menulis aplikasi yang dijalankan di Hadoop. Program MapReduce ini mampu memproses data yang sangat besar secara selari pada kelompok nod pengiraan yang besar.
- HDFS ( Sistem Fail Terdistribusi Hadoop ): HDFS mengurus bahagian penyimpanan aplikasi Hadoop. Aplikasi MapReduce menggunakan data dari HDFS. HDFS membuat banyak replika blok data dan menyebarkannya pada node pengkomputeran dalam kluster. Pengedaran ini memungkinkan pengiraan yang boleh dipercayai dan sangat pantas.
Walaupun Hadoop terkenal dengan MapReduce dan sistem fail tersebarnya - HDFS, istilah ini juga digunakan untuk keluarga projek berkaitan yang berada di bawah payung pengkomputeran diedarkan dan pemprosesan data berskala besar. Projek lain yang berkaitan dengan Hadoop di Apache termasuk Hive, HBase, Mahout, Sqoop, Flume, dan ZooKeeper.
Senibina Hadoop
Hadoop mempunyai Master-Slave Architecture untuk penyimpanan data dan pengedaran data yang diedarkan menggunakan kaedah MapReduce dan HDFS.
NamaNod:
NameNode mewakili setiap fail dan direktori yang digunakan di ruang nama
DataNode:
DataNode membantu anda menguruskan keadaan nod HDFS dan membolehkan anda berinteraksi dengan blok
MasterNode:
Node induk membolehkan anda melakukan pemprosesan data selari menggunakan Hadoop MapReduce.
Node hamba:
Node hamba adalah mesin tambahan dalam kluster Hadoop yang membolehkan anda menyimpan data untuk melakukan pengiraan yang kompleks. Lebih-lebih lagi, semua nod hamba dilengkapi dengan Task Tracker dan DataNode. Ini membolehkan anda menyegerakkan proses dengan NameNode dan Job Tracker masing-masing.
Di Hadoop, sistem master atau hamba dapat disiapkan di cloud atau di premis
Ciri-ciri 'Hadoop'
• Sesuai untuk Analisis Data Besar
Oleh kerana Big Data cenderung diedarkan dan tidak tersusun secara semula jadi, kluster HADOOP sangat sesuai untuk analisis Big Data. Oleh kerana memproses logik (bukan data sebenar) yang mengalir ke node pengkomputeran, kurang lebar jalur rangkaian yang digunakan. Konsep ini disebut sebagai konsep lokaliti data yang membantu meningkatkan kecekapan aplikasi berasaskan Hadoop.
• Skalabiliti
Kluster HADOOP dapat dengan mudah diperkecil sehingga tahap tertentu dengan menambahkan node kluster tambahan dan dengan itu memungkinkan pertumbuhan Big Data. Juga, penskalaan tidak memerlukan pengubahsuaian pada logik aplikasi.
• Toleransi Kesalahan
Ekosistem HADOOP mempunyai ketentuan untuk meniru data input ke node kluster lain. Dengan cara itu, sekiranya berlaku kegagalan cluster node, pemprosesan data masih dapat dilanjutkan dengan menggunakan data yang tersimpan pada node cluster yang lain.
Topologi Rangkaian Dalam Hadoop
Topologi (Pengaturan) rangkaian, mempengaruhi prestasi kluster Hadoop apabila ukuran kluster Hadoop bertambah. Selain persembahan, seseorang juga perlu mengambil berat tentang ketersediaan dan pengendalian kegagalan yang tinggi. Untuk mencapai Hadoop ini, pembentukan kluster menggunakan topologi rangkaian.
Biasanya, lebar jalur rangkaian adalah faktor penting untuk dipertimbangkan semasa membentuk rangkaian apa pun. Namun, kerana mengukur lebar jalur mungkin sukar, di Hadoop, jaringan diwakili sebagai pokok dan jarak antara nod pokok ini (jumlah hop) dianggap sebagai faktor penting dalam pembentukan kluster Hadoop. Di sini, jarak antara dua nod sama dengan jumlah jarak mereka ke nenek moyang mereka yang terdekat.
Kluster Hadoop terdiri daripada pusat data, rak dan simpul yang sebenarnya melaksanakan tugas. Di sini, pusat data terdiri daripada rak dan rak terdiri daripada nod. Lebar jalur rangkaian yang tersedia untuk proses berbeza-beza bergantung pada lokasi proses. Maksudnya, lebar jalur yang tersedia semakin berkurang ketika kita pergi dari-
- Proses pada nod yang sama
- Nod berbeza pada rak yang sama
- Nod pada rak berbeza dari pusat data yang sama
- Nod di pusat data yang berbeza