Mining Data Twitter menggunakan Elasticsearch, Logstash dan Kibana
Tak dapat dipungkiri, sekarang
adalah era Big Data dimana data dapat ditemukan dimana-mana, dan setiap detik
terus bertambah dalam jumlah (Volume),
kecepatan (Velocity) dan jenisnya (Variety). Hal ini dikenal dengan 3V,
yang pertama kali diperkenalkan oleh Doug Laney pada tahun 2001 melalui laporan
penelitiannya [1].
Twitter merupakan media sosial yang
populer, setiap detik ada beribu-ribu tweet(istilah
pesan Twitter) yang diposting dan
membentuk Big Data. Melalui Twitter API kita dapat melakukan crawling data dari seluruh dunia secara
real-time mengenai suatu kata kunci. Dalam postingan ini saya akan membahas
cara melakukan data mining (penambangan data) Twitter menggunakan tools Big
Data yaitu Elasticsearch, Logstash dan Kibana.
Alur sistem dimulai dari
pengambilan data Twitter dari Twitter API, ditangkap oleh Logstash. Logstash
kemudian meneruskan data tersebut ke Elasticsearch yang merupakan tempat
penyimpanan data dan search engine
yang berdiri di atas Apache Lucene. Terakhir, Kibana bertugas menampilkan
visualisasi data Elasticsearch kepada pengguna.
Requirements
Saya menggunakan OS Linux Ubuntu,
percobaan dilakukan dengan versi 13.10 dan 14.04. Untuk membangun sistem ini, dibutuhkan
komponen pada server yaitu:
a. Java :Runtime Environment yang
dibutuhkan Logstash untuk beroperasi
b. Logstash :Bertugas
mengumpulkan dan memproses log yang masuk ke dalam sistem
c. Elasticsearch :Menyimpan,
mengindeks, dan mampu mencari log dalam library-nya.
d. Kibana :Web
interface untuk visualisasi , filtering dan analisis log yang disimpan oleh
Elasticsearch
f. Kopf :Plugin
Elasticsearch untuk konfigurasi cluster Elasticsearch
Instalasi
Awalnya semua komponen diinstall
pada server. Untuk mempermudah instalasi, atur menggunakan autentikasi sebagai root dengan mengetikkan perintah berikut
pada terminal:
sudo su su –c “zypper install jdk1.7*.rpm” zypper install update-alternatives update-alternatives --install /usr/bin/java java /usr/java/jdk1.7*/bin/java 1065 update-alternatives --install /usr/bin/javac javac /usr/java/jdk1.7*/bin/javac 1065 update-alternatives --install /usr/bin/jar jar /usr/java/jdk1.7*/bin/jar 1065 update-alternatives --install /usr/bin/javaws javaws /usr/java/jdk1.7*/bin/javaws 1065 update-alternatives --config java
Elasticsearch versi 1.5.0 diunduh pada website www.elastic.co, kemudian diextract ke direktori /opt dengan perintah berikut.
tar xvfx elasticsearch-1.5.0.tar.gz –C /opt
Setelah berhasil diekstrak, maka Elasticsearch dapat dieksekusi dengan menjalankan bin/elasticsearch pada background dengan menambahkan simbol “&” pada akhir perintah.
Untuk Kibana, pertama-tama unduh Kibana versi 4.0.1 pada website www.elastic.co kemudian diekstrak pada direktori /usr/local/kibana dengan perintah berikut.
tar xvfx kibana-4.0.1.tar.gz –C /usr/local/kibana
Kibana dapat dieksekusi dengan menjalankan .bin/kibana. Untuk menjalankan Kibana pada background, pada akhir perintah ditambahkan simbol “&”.
Unduh Logstash versi terbaru dalam bentuk file tar.gz dan mengekstraknya pada direktori /usr/local/logstash.
tar xvfx logstash-1.4.2.tar.gz –C /usr/local/logstash
Instalasi Kopf dilakukan di dalam direktori home Elasticsearch. Berikut ini langkah-langkah instalasinya.
cd /opt/elasticsearch-1.5.0 bin/plugin --install lmenezes/elasticsearch-kopf/1.4.5
Setelah semua komponen terinstal, crawling Twitter pun dapat dimulai.
Data telah ditangkap Logstash, diteruskan ke Elasticsearch dan ditampilkan ke Kibana dengan tampilan berikut.
Fitur interaktif Kibana ini dapat dikonfigurasikan sesuai kebutuhan, baik itu bar chart, pie chart, tabel, map, histogram, dan sebagainya.
[1] D.
Laney, “META Delta,” Appl. Deliv. Strateg., vol. 949, no. February 2001,
p. 4, 2001.
Komentar
Posting Komentar