Gambar, source: Wikimedia. License: Common Creative |
Suatu (mesin) client akan mengakses data tak-terstruktur dan semi-terstruktur dari berbagai sumber data misalnya file-fie log, feed dari media sosial, atau tempat penyimpanan data internal. Kemudian akan memecahnya menjadi beberapa bagian yang pada gilirannya akan di-load ke sistem file yang dibuat dengan beberapa node yang berjalan di atas suatu hardware. Sistem file default untuk menyimpan di Hadoop adalah Hadoop Distributed File System (HDFS). Sistem file seperti HDFS ini sangat canggih dalam menyimpan volume data tak-terstruktur dan semi-struktur dalam jumlah yang sangat besar karena data semacam itu tidak perlu diatur ke dalam bentuk kolom dan baris relasional (seperti dalam dbms). Masing-masing bagian di-replikasi beberapa kali dan di-load ke sistem file sehingga bila ada node yang gagal, node yang lain memiliki replikasi data yang berisi node yang gagal tersebut. Name Node akan bertindak sebagai fasilitator, yang mengkomunikasikan kembali ke client tentang informasi misalnya node mana saja yang bisa digunakan, di cluster mana data tertentu itu sedang diproses, dan node mana saja yang gagal.
Setelah data di-load ke cluster, data tersebut siap dianalisa melalui framework MapReduce. Client akan mengirimkan tugas/fungsi ‘Map’, yang pada umumnya adalah suatu query yang ditulis dalam bahasa pemrograman Java, ke salah satu node di dalam cluster yang disebut dengan ‘Job Tracker’. Job Tracker ini kemudian mengacu ke ‘Name Node’ untuk menentukan data mana yang perlu diakses untuk menyelesaikan job tersebut dan di cluster mana data tersebut berada. Setelah ditentukan, Job Tracker akan mengirimkan query ke node yang relevan. Daripada mengirimkan kembali semua data ke mesin yang menjadi pusat untuk pemrosesan, kemudian pemrosesan akan terjadi pada tiap-tiap node secara bersamaan atau secara parallel. Inilah karakteristik utama dari Hadoop.
Katika tiap-tiap node telah selesai memproses pekerjaan yang diberikan, node tersebut akan menyimpan hasil-hasilnya. Client akan memulai pekerjaan “Reduce” melalui Job Tracker dimana hasil-hasil fase (fungai) map yang disimpan secara lokal pada masing-masing node akan disatukan untuk menentukan ‘jawaban/hasil’ dari queri awal, dan kemudian di-load ke node yang lain di cluster tersebut. Client akan mengakses hasil-hasil tersebut yang kemudian bisa di-load ke salah satu dari berbagai macam sistem analisa. Pekerjaan MapReduce kemudian sudah selesai sampai disini.
Setelah fase MapReduce selesai, data yang sudah diproses tersebut siap untuk dilanjutkan ke analisa lebih lanjut yang dilakukan oleh para data scientist atau orang lain yang memiliki keahliaan dalam bidang analisa data. Data scientist bisa mengolah dan menganalisa data dengan menggunakan tool software apapun misalnya mencari insights/wawasan dan pola-pola yang tersembunyi atau menggunakannya sebagai fondasi dalam membuat aplikasi analytics yang akan digunakan oleh user. Data tersebut juga bisa di-model-kan dan dipindahkan dari cluster-cluster Hadoop ke dalam database relasional, data warehouse, dan berbagai sistem IT tradisional lainnya untuk dilakukan analisa lebih lanjut dan/atau untuk mendukung pemrosessan transaksional.
Link terkait Big Data:
- Pengenalan Singkat Tentang Big Data Analytics
- Beberapa Contoh Nilai/Manfaat Bisnis Ketika Menerapkan Analytics Big Data Dalam Bisnis
- Pengertian Big Data
- 6 Ukuran Data Baru Yang Mungkin Belum Anda Ketahui di Era Big Data
- Big Data Analytics: Perlu atau Tidak Perusahaan Menerapkannya?
- Faktor Kunci Dalam Keberhasilan Investasi Big Data Analytics
- Beberapa Contoh Problem Bisnis Yang Menjadi Perhatian Dalam Big Data Analytics
- MapReduce - Teknologi dalam Big Data
- Hadoop - Teknologi dalam Big Data dan Cara Kerjanya
- 10 Fakta Tentang Hadoop Yang Bertentangan Dengan Anggapan Banyak Orang
Comments
Post a Comment