Sabtu, 16 Januari 2016

Arsitektur Umum dari Big Data


Penjelasan dari gambar Arsitektur Umum dari Big Data

1.          Data source adalah sumber data untuk big Data. Data umumnya dipompa masuk Big Data dengan menggunakan API ataupun dengan operasional file system seperti transfer file. Ada dua jenis data source yaitu streaming data source dan bulk data source. Contoh streaming data source misalnya adalah tweets dari twitter API. Sedangkan Bulk data misalnya adalah file teks biasa yang sangat besar seperti file log dari suatu aplikasi ataupun file yang berisi data yang di dump dari database.
2.                  Data aggregator adalah tool atau software yang mengumpulkan dan manyalurkan data dari sumber ke beberapa jenis pengolahan data di Big data. Ada dua jenis data aggregator berdasarkan cara kerjanya. Jenis pertama adalah Pull-based data aggregator. Jenis ini mengumpulkan data dan memberikan data tersebut kepada siapa saja yang meminta tanpa registrasi sebelumnya, mirip seperti Java Messaging Queue. Contohnya adalah Apache KafkaRabbitMQ. Jenis kedua adalah Push-based data aggregator. Jenis kedua ini mengumpulkan data dan mengirim data ke sistem lain yang sudah di set terhubung dan menerima data dari data aggregator. Sistem yang mau mendapatkan data harus ‘terdaftar’ di data aggregator dulu dan biasanya diperlukan effort lebih jika ada sistem baru yg ingin mendapatkan data dari data aggregator jenis ini dibanding jenis yang pertama. Contoh Push-Based Data Aggregator adalah Apache Flume dan Spring-XD.
3.                  Realtime streaming Processor adalah salah satu sistem pengolahan di Big Data yang umum ditemukan. Fungsinya adalah untuk menganalisis data yang bersifat realtime dan streaming. Contohnya adalah menghitung hashtag yang muncul di semua tweet di twitter. Sifat dari pemrosesan ini haruslah ringan, dan cepat. Oleh karena itu analisis data secara kompleks jarang sekali dilakukan. Output dari pemrosesan ini adalah gambaran umum dari data yang didapatkan dan tidak terlalu detil. Outputnyapun sebaiknya disimpan di datastore sehingga bisa digunakan oleh aplikasi  yang membutuhkan. Untuk hasil analisis data yang sangat detil bisa di lihat di Non-realtime processor. Contoh tool yang digunakan di realtime streaming misalnya adalah Apache StormApache Spark Streaming dan Spring-XD.  Meskipun hasilnya tidak detil, tetapi pemrosesan ini diperlukan mengingat pemrosesan secara bulk / non-realtime membutuhkan waktu yang cukup lama. Dengan demikian user bisa melihat secara garis besar data yang diolah meskipun tidak detil sembari menunggu pemrosesan non realtime selesai.
4.  Hadoop disini yang saya maksud adalah HDFS. Disini hadoop lebih ditekankan sebagai tempat penyimpanan data yang sangat besar. Hadoop menjadi tempat semua data sehingga bisa dianalisis oleh berbagai tools untuk berbagai kepentingan sehingga bisa didapatkan hasil yang cukup detil dan bisa memenuhi kebutuhan dari user.
5.    Non-realtime processor adalah proses pemrosesan data di Big Data untuk data besar yang terdapat di HDFS. pemrosesan ini menggunakan berbagai jenis tool sesuai kebutuhan. sebuah data bisa dianalisis lebih dari satu tools. Contoh tool yang sering digunakan antara lain Hive dan Pig untuk Map Reduce, Apache Mahout dan Apache Spark untuk machine learning dan artificial intelligence. Hasil dari pemrosesan ini dimasukkan ke dalam data store untuk kemudian bisa di lihat di level aplikasi. Sistem pemrosesan ini umumnya memerlukan waktu yang relatif lebih lama mengingat data yang diproses relatif sangat besar.
6.                  Data store adalah tools untuk menyimpan data hasil pemrosesan baik realtime maupun on-realtime. Datastore disini bisa berupa RDBMS ataupun jenis NoSQL lainnya. RDBMS sangat jarang digunakan sebagai data store mengingat keterbatasan dalam sisi ukuran yang bisa ditampung tanpa kehilangan kinerja. Datastore yang umumnya dipakai adalah NoSQL yang berbasis Document (mis. MongoDB), Column-oriented seperti HBase dan Cassandra, dan juga key-value pair seperti couchDB. Beberapa data store yang jarang kedengaran juga dipakai seperti misalnya Voldemort dan Druid.
7.                  Apps adalah aplikasi yang berinteraksi langsung dengan user. Aplikasi disini mengakses data yang berada di data store untuk kemudian disajikan kepada user. Jenis aplikasi disini sangat bervariasi bisa berupa web, desktop ataupun mobile. Pada umumnya aplikasi disini hanyalah untuk melakukan visualisasi dari data yang sudah dianalisis sebelumnya. insert data tidak saya temui untuk jenis aplikasi ini. Karena memang ditujukan untuk user, maka data yang disajikan harus sesuai dengan kebutuhan user.

2 komentar:

  1. Website paling ternama dan paling terpercaya di Asia
    Sistem pelayanan 24 Jam Non-Stop bersama dengan CS Berpengalaman respon tercepat
    Memiliki 9 Jenis game yang sangat digemari oleh seluruh peminat poker / domino
    Link Alternatif :
    arena-domino.club
    arena-domino.vip
    100% Memuaskan ^-^

    BalasHapus
  2. JOIN NOW !!!
    Dan Dapatkan Bonus yang menggiurkan dari dewalotto.club
    Dengan Modal 20.000 anda dapat bermain banyak Games 1 ID
    BURUAN DAFTAR!
    dewa-lotto.name
    dewa-lotto.cc
    dewa-lotto.vip

    BalasHapus