Teknologi Big Data Dengan Hadoop

Jika berbicara mengenai big data, rasanya kurang afdol jika tidak membahas tentang Hadoop. Ya, Hadoop….si gajah kuning berbelalai pendek. Sekilas ketika melihat logonya saya jadi teringat tentang tokoh utama dari sebuah majalah anak-anak saat saya kecil dulu. Jika anda paham tokoh yang saya maksud berarti masa kecilmu bahagia :D


Apa itu Hadoop?

Hadoop adalah software framework yang memungkinkan pemrosesan data berukuran besar secara terdistribusi dengan melibatkan berkluster-kluster komputer. Hadoop didesain untuk dapat bekerja secara efektif baik dalam skala terkecil yang hanya melibatkan satu server hingga skala besar yang memperkerjakan ribuan komputer dimana masing-masing komputer tersebut memfasilitasi komputasi dan penyimpanan data secara lokal.

Untuk menjamin High Availability, Hadoop tidak menggantungkannya pada hardware yang digunakan, tetapi framework Hadoop itu sendiri telah didesain untuk dapat mendeteksi dan menangani gagal fungsi (failure) pada level/layer aplikasi

Bagaimana? masih belum paham? oke…..definisi yang paling sederhana dan mudah dipahami mengenai Hadoop mungkin seperti ini

Hadoop adalah suatu software platform yang menghubungkan beberapa komputer sehingga dapat saling bekerja sama dan sinkron dalam menyimpan dan mengolah data sebagai satu kesatuan.

“Menghubungkan beberapa komputer….” bukannya saat ini semua komputer telah terhubung dalam jaringan? lalu apa bedanya?? Mungkin pertanyaan itu yang pertama kali muncul setelah membaca definisi hadoop diatas, tapi tenang…di sini ada jawabannya.

Bedanya adalah pada komputer yang kita gunakan belum tentu saling meringankan beban. Sebagai contoh kita memiliki satu file spreadsheet Excel dan sangat lambat karena melakukan perhitungan untuk ratusan ribu cell, dan perhitungan tersebut tidak bisa dibagi ke komputer lainnya. Tetapi kita bisa membagi file tersebut dengan menggunakan network sharing, bukan komputasinya.

Sedangkan pada Hadoop perhitungan atau proses komputasi itu bisa dibagi ke komputer lainnya tanpa banyak tumpang tindih sehingga hasil menjadi cepat. Bisa diibaratkan seperti gotong royong, semakin banyak komputer dihubungkan maka akan semakin cepat melakukan proses perhitungan. Ketika seluruh komputer Hadoop dihubungkan, kita seperti memiliki harddisk besar. Data akan disebar ke seluruh komputer yang ada, dan jika ada satu atau dua komputer yang mati data tetap akan terjaga dengan lengkap. Berikut adalah gambaran sederhana proses kerja Hadoop

Proses Kerja Hadoop

Dari penjelasan di atas terdapat 3 prinsip penting pada Hadoop, yaitu :

  1. Hadoop dapat menggabungkan banyak komputer menjadi satu kesatuan sistem.
  2. Sistem tersebut dapat membagi proses perhitungan atau komputasi yang biasanya memakan waktu yang sangat lama atau hampir tidak mungkin dilakukan oleh satu komputer. Secara teknis, proses ini biasanya memakai teknik map reduce dan dikoordinasikan oleh sesuatu yang disebut job tracker.
  3. Sistem tersebut dapat membagi beban penyimpanan ke berbagai komputer sehingga jika salah satu atau beberapa komputer mati, data tetap akan terjaga. Sistem ini disebut sebagai Hadoop Distributed File System (HDFS).

Map Reduce, Job Tracker, HDFS….apaan lagi tuh?? hehe…tenang, harap bersabar ini ujian. Pembahasan mengenai ketiga “benda asing” tersebut yang dikupas pada tulisan selanjutnya. Sementara untuk pembahasan mengenai pemahaman tentang Hadoop sendiri saya rasa cukup sampai di sini, tak perlu berlebihan karena segala sesuatu yang berlebihan tidak baik :v

Semoga tulisan ini bermanfaat, Salam…