Nurasto.com Website

My digital scrapbook

Apa sih Hadoop?

on under Software and Web Development12 Comments

Saya baru kali pertama mendengar mengenai Hadoop dan saya mencari apa itu Hadoop. Ketika membuka website Apache Hadoop, saya terbengong – bengong dengan situs yang tidak neko – neko seolah pengunjungnya tahu mau apa mereka di situ. Saya mencoba menjabarkan dengan bahasa non teknis mengenai Apache Hadoop sesuai dengan ilmu yang saya dapat dari situs hadoop atau tempat lain.

Apache Hadoop merupakan framework, yang dibangun di atas bahasa Java, untuk komputasi dan pemprosesan dataset yang besar (bahkan sangat besar) secara terdistribusi. Hadoop diberi nama setelah inovator Hadoop, Doug Cutting, mendengar panggilan anaknya ke mainan gajah yang berwarna kuning.

Framework Hadoop terdiri dari tiga yaitu Hadoop Common, Hadoop Distributed File System (HDFS), dan Hadoop Map Reduce. HDFS dan MapReduce inspirasinya datang dariĀ  paper yang diterbitkan Google mengenai File System dan Map Reduce..

HDFS adalah media penyimpanan dari file yang telah dibagi – bagi berdasarkan blocks dan block – block ini bisa terdapat pada lokasi yang berbeda dan dilakukan replikasi dengan urutan block yang mungkin tidak sama per node. HDFS bisa bersifat single node atau multiple node. HDFS bukan native File System seperti layaknya EXT3, EXT4, FAT atau NTFS. HDFS ada pada layer di atasnya.

Map Reduce adalah framework untuk software dan programming yang dapat digunakan untuk mengakses data yang terdapat pada node dan memanipulasinya sesuai kebutuhan. Map Reduce ini dapat didayagunakan dengan menggunakan bahasa pemograman Java.

Framework Map Reduce termasuk kompleks dan harus menggunakan bahasa Java sehingga proyek – proyek yang berkaitan dengan Hadoop bermunculan seperti Hive dan Pig. Dengan Hive atau Pig kita bisa menggunakan bahasa tingkat tinggi yang telah disediakan masing – masing tools. Pig menggunakan Pig Latin yang berupa data flow programming sedangkan Hive menggunakan Query yang mirip SQL.

Kemudian ada utiliti lain yaitu Scoop yang dikembangkan oleh Cloudera, perusahaan yang berisi personel yang pernah bekerja di google, yahoo, facebook, dan lainnya. Scoop memudahkan kita untuk transformasi data – data dari RDBMS ke dalam HDFS.

Kemudian ada database yang menggunakan framework Hadoop yaitu HBASE yang diinspirasi dari Big Tablenya Google.

Banyak sekali proyek – proyek yang menggunakan Apache Hadoop untuk melakukan komputasi data besar. Hadoop sangat cocok untuk data yang sifatnya satu kali tulis, banyak dibaca seperti melakukan data mining pada web log dan tidak menutup pada kemungkinan lain untuk melakukan OLAP.

Oh ya, apabila bertanya – tanya mengenai tandingan Hadoop, ada diluar sana namanya HPCC dan ditulis dengan bahasa C++ dimana prosesnya akan jauh lebih cepat dengan Hadoop yang ditulis dengan bahasa Java yang harus berjalan di atas virtual machine.

Saya masih awal mempelajari hadoop, saya buka diskusi mengenai Hadoop dan teknologi yang berhubungan dengannya karena sepertinya sangat dibutuhkan proses pembuatan pelaporan yang sangat banyak, selain itu juga Hadoop ini open source sehingga nyaris gratis digunakan.

Update

Untuk lebih memahami Hadoop bisa melihat video berikut, saya ambil dari youtube, yang kebetulan ada iklannya ketika saya melihat suatu video