Abstrak
Saat ini internet telah menguasai dunia, jutaan data dipertukarkan setiap harinya baik melalui aplikasi
web/mobile maupun penggunaan internet yang melibatkan benda-benda di sekitar kita untuk dapat
saling berkomunikasi satu sama lain (saat ini dikenal dengan sebutan Internet of Things/IoT). IoT
membutuhkan suatu database dengan performa yang baik untuk digunakan sebagai media penyimpanan
datanya. Performa yang baik itu seperti proses penyimpanan data yang cepat dan tingkat availability
yang tinggi. Saat ini terdapat dua jenis database, yaitu Relational Database dan Not Only SQL (NoSQL)
Database. NoSQL Database merupakan jenis yang tepat untuk digunakan sebagai media penyimpanan
data pada sistem IoT karena memiliki tingkat availability yang lebih baik daripada Relational Database.
Dari sekian banyak NoSQL Database, penulis memilih HBase dan Cassandra untuk dibandingkan
performanya dalam penelitian ini, karena keduanya merupakan database terbaik pada model
penyimpanan Column-based. Penulis menguji Throughput, Latency, Runtime, CPU Usage dan Memory
Usage menggunakan JMeter dan YCSB untuk membandingkan performa dari kedua database tersebut.
Hasilnya menunjukkan bahwa Cassandra memiliki nilai Throughput, Latency dan Runtime yang lebih
baik daripada HBase. Sedangkan HBase memiliki nilai CPU Usage, Memory Usage yang lebih baik
daripada Cassandra.
Kata kunci: database, nosql, HBase, Cassandra, YCSB, jmeter
Abstract
Nowadays, internet has dominated the world, millions of data is exchanged daily either through
web/mobile apps or internet use involving the objects around us to be able to communicate each another
(currently known as Internet of Things/IoT). IoT requires a database with a good performance to be
used as its storage media. Good performance it is like fast inserting data process and high level of
availability. There are two types of databases at this time, Relational Database and Not Only SQL
(NoSQL) Database. NoSQL Database is the proper type to be used as data storage media on IoT system
because it has better scalability and availability level than Relational Databases. Of the many NoSQL
Database, the author chooses HBase and Cassandra to compare their performance in this research,
because both are the best in database Column-based storage model. The authors test the Throughput,
Latency, Runtime CPU Usage, and Memory Usage using JMeter and YCSB to compare the performance
of both these databases. The results suggest that Cassandra has Throughput, Latency and Runtime that
is better than HBase. Meanwhile, HBase has CPU Usage and Memory Usage better than Cassandra.
Keywords: database, nosql, HBase, Cassandra, YCSB, jmeter
Gambar 4 Perbandingan Hasil Pengujian Runtime Gambar 5 Perbandingan Hasil Pengujian Memory
Usage
Dari Gambar 4 di atas dapat dilihat bahwa
Cassandra memiliki Runtime yang lebih kecil Gambar 5 di atas merupakan perbandingan
daripada HBase pada seluruh skenario pengujian hasil pengujian Memory Usage antara HBase
menggunakan 1, 2, 3 dan 4 node. Jadi dapat dan Cassandra pada saat memasukkan 50.000,
disimpulkan bahwa Cassandra memiliki 100.000, 250.000 dan 500.000 baris data.
performa Runtime yang lebih baik daripada Berdasarkan grafik di atas dapat dilihat
HBase dalam memasukkan data. bahwa HBase memiliki Memory Usage yang
lebih kecil daripada Cassandra pada seluruh
skenario pengujian menggunakan 1, 2, 3 dan 4
node. Jadi dapat disimpulkan bahwa HBase
memiliki performa Memory Usage yang lebih
baik daripada Cassandra dalam memasukkan
data, karena semakin kecil nilai Memory Usage
berarti semakin sedikit resource RAM yang
diigunakan oleh suatu sistem database dalam
proses memasukkan data.
daripada Cassandra karena memiliki Usage (32,06 : 49,33). Dari hasil di atas,
persentase Memory Usage yang lebih kecil dapat disimpulkan bahwa Cassandra
pada seluruh skenario pengujian. Hal ini merupakan sistem database yang paling
disebabkan karena, meskipun HBase baik untuk digunakan sebagai media
menjalankan jumlah aplikasi yang lebih penyimpanan data sensor IoT karena
banyak (Hadoop, Zookeeper dan HBase itu memiliki performa transaksi data yang lebih
sendiri) tapi aplikasi-aplikasi tersebut baik daripada HBase, karena suatu sistem
menggunakan resource memori yang lebih IoT membutuhkan kecepatan yang baik
sedikit dibandingkan dengan Cassandra dalam proses transaksi datanya.
yang (meskipun hanya menjalankan satu 2. Jumlah node database server yang
aplikasi yaitu Cassandra itu sendiri) digunakan serta banyak baris data yang
menggunakan resource memori yang lebih dimasukkan merupakan faktor-faktor yang
banyak. mempengaruhi performa sistem database
• Berdasarkan hasil perbandingan CPU HBase maupun Cassandra. Apabila jumlah
Usage antara HBase dan Cassandra, HBase node yang digunakan semakin banyak dan
menggunakan resource yang lebih kecil jumlah data yang dimasukkan semakin
daripada Cassandra pada arsitektur besar, maka nilai Throughput akan semakin
terdistribusi. Sedangkan Cassandra kecil dan nilai Latency akan semakin besar,
menggunakan resource yang lebih kecil sehingga akan menyebabkan nilai Runtime
daripada HBase pada arsitektur Standalone akan semakin besar atau proses transaksi
mode. Pada HBase, perbedaan antara data membutuhkan waktu yang semakin
arsitektur terdistribusi dengan Standalone lama.
mode terdapat pada penggunaan
Zookeeper-nya. Pada Standalone mode, DAFTAR PUSTAKA
HBase tidak perlu menggunakan bantuan Abramova, V., Bernardino, J. dan Furtado, P.
aplikasi Apache Zookeeper native untuk (2014) “Testing Cloud Benchmark
mengkoordinir node-node database server- Scalability with Cassandra,” 2014 IEEE
nya, melainkan cukup dengan World Congress on Services, hal. 434–441.
mengaktifkan fitur doi: 10.1109/SERVICES.2014.81.
HBASE_MANAGES_ZK pada file hbase-
env.sh dalam direktori konfigurasi HBase. Cassandra, A. (2017) Apache Cassandra,
Jadi, dapat disimpulkan bahwa penggunaan Online. Tersedia pada:
fitur Zookeeper bawaan HBase, http://Cassandra.Apache.org/ (Diakses: 18
menggunakan resource prosesor yang lebih April 2017).
banyak daripada penggunaan aplikasi Cisco (2017) Internet of Things (IoT) - Cisco,
Apache Zookeeper native. Online. Tersedia pada:
http://www.cisco.com/c/en/us/solutions/int
4. KESIMPULAN ernet-of-things/overview.html (Diakses: 5
Berdasarkan dari pembahasan hasil Maret 2017).
pengujian performa pada database Apache Elmasri, R. dan Navathe, S. B. . (2011)
HBase dan Apache Cassandra, maka dapat Fundamentals of Database Systems. 6 ed.
ditarik kesimpulan bahwa: Addison-Wesley.
1. Apache Cassandra memiliki performa
transaksi data yang lebih baik daripada HBase, A. (2017) Apache HBase – Powered By
Apache HBase dengan perbandingan rata- Apache HBase, Online. Tersedia pada:
rata performa sebagai berikut, Cassandra : https://HBase.Apache.org/poweredbyHBas
HBase, Throughput (1051,74 : 821,57), e.html (Diakses: 18 April 2017).
Latency (1,22 : 2,76) dan Runtime (4,44 : JMeter, A. (2017) Apache JMeter - Apache
10,64). Sedangkan Apache HBase JMeterTM, Online. Tersedia pada:
menggunakan resource hardware yang http://JMeter.Apache.org/ (Diakses: 5
lebih hemat daripada Apache Cassandra Maret 2017).
dengan perbandingan rata-rata performa
Kuhlenkamp, J., Klems, M. dan Röss, O. (2014)
sebagai berikut, HBase : Cassandra,
“Benchmarking Scalability and Elasticity
Memory Usage (57,15 : 74,41) dan CPU