Judul Artikel
|
Perbandingan
Performansi Database Mongodb Dan Mysql Dalam Aplikasi File Multimedia
Berbasis Web
|
Penulis
|
Mesri
Silalahi, Didi Wahyudi
|
Nama Jurnal
|
Computer
Based Information System Journal
|
Volume, dan
Tahun
|
Vol.
06 No. 01 (2018) : Maret
|
Link
|
|
Tahun
|
2018
|
Institusi
|
Universitas
Putera Batam, Indonesia
|
Reviewer
|
Aulia
Rahma Salsabilla (19312104)
|
A. Latar Belakang
Basis data merupakan bagian penting dari
sistem informasi yaitu sebagai sumber informasi serta sebagai sarana mencapai
sistem informasi yang efektif dan efisien. Teknologi basis data yang sangat
populer saat ini adalah Relational Database Management System (RDBMS) yang
berisi data-data yang terstruktur, dimana antara satu tabel dengan tabel yang
lainnya terhubung melalui primary key. RDBMS ini telah digunakan sejak tahun
1970an dikarenakan RDBMS memenuhi syarat-syarat penting seperti
confidentiality, integrity, dan availability. Terlebih lagi transaksi-transaksi
di RDBMS bersifat ACID (Atomic, Consistency, Isolation, dan Durability) yang
menjamin reliabelnya transaksi. Namun RDBMS menghadapi permasalahan performa pada
pemrosesan data tidak terstruktur yang bertambah secara eksponensial, seperti
dokumen, email, multimedia atau media sosial. Untuk mengatasi permasalahan
RDBMS, Carlo Strozzi pada tahun 1998 memperkenalkan istilah “NoSQL” yang
mengacu ke database nonrelasional. Dan pada tahun 2009 Eric Evans memperkenalkannya
kembali. Google, Amazon, Facebook dan LinkedIn adalah perusahaan-perusahaan
yang pertama kali menemukan keterbatasan teknologi database relasional sejalan
dengan kebutuhan aplikasi mereka. Kelebihan dari NoSQL adalah kemampuan untuk
menangani data yang tidak terstruktur secara efisien. Database nonrelasional
tidak menggunakan prinsip-prinsip RDBMS dan tidak menyimpan data di dalam
tabel, skemanya tidak tetap dan model datanya sangat sederhana. Beberapa
struktur data yang digunakan dalam berbagai database NoSQL adalah Key-Value
Store, Column-Family Store, Document Store, dan Graph Database.
B. Tujuan
Tujuan dalam penelitian ini adalah
merancang aplikasi multimedia berbasis web dengan basis data MongoDB, merancang
aplikasi ultimedia berbasis web dengan basis data MySQL, membandingkan
performaansi database MongoDB dan MySQL untuk aplikasi multimedia berbasis web.
C. Subjek
Selain database relasional (SQL), yang
menyimpan data terstruktur dalam tabel dengan skema yang ditentukan, ada
database non-relasional (NoSQL) dengan skema dinamis atau tidak terstruktur.
Studi ini akan membandingkan kinerja antara database NoSQL (MongoDB) dan
database SQL (MySQL) untuk penyimpanan file multimedia berbasis web.
Perbandingan kinerja adalah berdasarkan kecepatan eksekusi dan penggunaan
sumber daya komputer (CPU, memori, dan memori virtual).
D. Metedologi Penelitian
1. Analisis
Penggunaan
Pada aplikasi multimedia file storage
berbasis web, pengguna mengakses file-file multimedia dan admin mengunggah
file-file tersebut ke database. Karena penelitian ini membahas tentang
perbandingan performa antara dua jenis basis data yang berbeda, maka pengguna
dapat memilih untuk memainkan file baik dari MongoDB maupun MySQL jika file
tersebut tersedia. Dari sisi pengguna, perbedaan perangkat lunak server basis
data untuk penyimpanan file multimedia tidak berpengaruh terhadap proses
memainkan file multimedia yang dilakukan. Untuk menampilkan sebuah file
multimedia ke aplikasi berbasis web ini, terlebih dahulu admin harus mengunggah
file tersebut.
2. Spesifikasi
Kebutuhan Perangkat Lunak
Dari analisis penggunaan di atas, maka
dibutuhkan sebuah aplikasi yang sesuai dengan harapan. Aplikasi Multimedia File
Storage berbasis web menggunakan perangkat lunak yang sama dengan aplikasi web
lainnya. Hanya saja terdapat perbedaan basis data yang digunakan, dimana pada
aplikasi web yang ditempatkan di server hosting pada umumnya basis data yang
dipakai biasanya hanya MySQL, sedangkan penelitian ini juga menggunakan sebuah
basis data lain selain MySQL yaitu MongoDB. Kebutuhan Perangkat Lunak Server
Perangkat lunak server yang dibutuhkan untuk keperluan aplikasi ini adalah
sebuah web server dengan interpreter PHP, serta perangkat lunak basis data
MySQL dan MongoDB. Perangkat-perangkat lunak tersebut harus dijalankan pada
sistem operasi yang mampu menjalankannya seperti Windows atau Linux. Untuk
basis data MySQL, terdapat tambahan engine InnoDB. InnoDB juga menawarkan
reliabilitas yang lebih baik dan kemungkinan kerusakan data juga berkurang.
Sedangkan untuk interpreter PHP di server, penulis menggunakan ekstensi MySQLi
yang baru hadir di PHP versi 5.0. Selain itu penulis juga banyak menggunakan
definisi array dalam bentuk singkat (short syntax) yang cukup menggunakan tanda
[ dan ] yang sebelumnya array harus didefinisikan dalam bentuk array(). Aplikasi
Multimedia File Storage berbasis web ini juga menggunakan basis data MongoDB
melalui ekstensi mongo di PHP.
3. Kebutuhan
Perangkat Keras Server
Kebutuhan perangkat keras server juga
harus diperhatikan. Aplikasi Multimedia File Storage dan aplikasi-aplikasi
sejenis yang mengirimkan data yang banyak ke pengguna, setiap potongan data
(chunk) yang akan dikirim (stream) dibaca dari penyimpanan dan kemudian
disimpan sementara di memori dan baru akan dihapus dari memori setelah terkirim
dan kemudian aplikasi akan melakukan hal yang sama terhadap potongan data
berikutnya, demikian seterusnya. Dalam penelitian ini, besarnya chunk yang
dipakai dapat diubah (besar chunk standar yang dipakai MongoDB adalah 255 KB
atau 261120 bytes), jadi server harus mengalokasikan minimal memori sebesar
chunk untuk seorang pengguna. Banyaknya jumlah akses terhadap file multimedia
dari aplikasi ini akan meningkatkan kebutuhan memori secara signifikan. Ketika
terjadi banyak akses terhadap sebuah website di shared server, batasan alokasi
penggunaan CPU terhadap website tersebut akan terpakai semuanya sehingga
website tidak bisa diakses sementara waktu (suspended). Pada penelitian ini
konsumsi CPU menjadi sangat tinggi ketika admin mengunggah sebuah file dan
kemudian aplikasi akan memasukkan chunk demi chunk file tersebut ke basis data.
Jika file multimedia yang diunggah sangat besar, maka keadaan tersebut akan
berlangsung lama dan akan mengganggu akses terhadap server.
4. Kebutuhan
Perangkat Lunak dan Perangkat Keras Pengguna
Di sisi client, pengguna harus
menggunakan browser yang kompatibel dengan HTML 5 – misalnya Google Chrome atau
Mozilla Firefox terbaru – agar dapat memainkan file multimedia langsung dari
browser tanpa membutuhkan perangkat lunak tambahan. Dalam pembuatan website,
setidaknya ada 3 bahasa program yang digunakan yaitu HTML (Hypertext Markup
Language), CSS (Cascading Style Sheet), dan JavaScript. Kompatibilitas ketiga
bahasa tersebut berlainan pada berbagai browser, apalagi versi-versi dari
ketiganya terus meningkat seiring dengan perbaikan dan fiturfitur baru yang
ditambahkan.
5. Struktur
Data
Perancangan struktur data dalam
penelitian ini dibagi menjadi dua bagian karena penelitian ini menggunakan dua
buah basis data yang akan dibandingkan, yaitu MySQL dan MongoDB. Basis data
MySQL menggunakan struktur data relasional dan basis data MongoDB menggunakan
struktur data dokumen. Aplikasi ini membutuhkan penyimpanan untuk 3 hal di
bawah ini :
a. Penyimpanan
keterangan file atau meta data dari file di tabel file di MySQL sebagai pelengkap
tampilan di aplikasi.
b. Penyimpanan
data binary file multimedia di tabel file_data MySQL. Tabel ini adalah kumpulan
record yang berisi chunk data binary sebesar 255 KB (dapat diubah). Jadi sebuah
file berukuran 13.81 MB akan disimpan dalam 56 record di tabel ini jika
menggunakan chunk sebesar 255 KB.
c. Penyimpanan
data binary file multimedia di GridFS MongoDB. GridFS menggunakan 2 buah
koleksi yaitu koleksi files yang berisi metadata dari file multimedia dan
koleksi chunks yang berisi data binary. Di koleksi files, meta data yang
disimpan hanya nama file. Nama file ini harus sama dengan nama file di tabel
file MySQL. Jika tidak sama, maka aplikasi akan menganggap file tersebut tidak
ada di MongoDB.
6. Struktur
Data GridFS MongoDB
GridFS menggunakan struktur data standar
dengan menggunakan 2 buah koleksi, yaitu koleksi files dan koleksi chunks.
E. Review
Pada jurnal ini, penulis menjelaskan
tentang perbandingan performansi database mongodb dan mysql dalam aplikasi file
multimedia berbasis web.
Jenis operasi uji yang dilakukan adalah
Create (Insert), Read, dan Delete. Operasi Update tidak dilakukan karena data
yang tersimpan dalam basis data aplikasi ini adalah file binary yang tidak
mungkin diubah isinya dengan menggunakan perintah standard PHP. Operasi uji
yang dilakukan:
a. Operasi Create,
dalam perintah SQL disebut juga Insert. Operasi Insert dilakukan untuk
mengunggah file ke basis data. Ketika sebuah file diunggah, maka aplikasi ini
akan memecah file tersebut sesuai besarnya chunk. Setelah dipecah maka setiap
pecahan file akan dijadikan sebuah record tersendiri di basis data.
Dari tabel di atas terlihat bahwa
pemakaian Processor (CPU) dan memori untuk MongoDB lebih sedikit daripada
MySQL. Dan MongoDB juga rata-rata 3,6 kali lebih cepat daripada MySQL dalam penyimpanan
file berukuran kecil. Jadi dapat disimpulkan bahwa MongoDB lebih cepat dan
lebih irit dalam hal pemakaian sumber daya komputer daripada MySQL untuk
operasi INSERT atau CREATE data binary.
b. Operasi Read,
dilakukan dengan cara mengunduh banyak file secara bersamaan untuk
mensimulasikan penggunaan aplikasi secara bersamaan.
Pada pengujian operasi Read, penulis
menggunakan komputer terpisah dan secara bergantian mengunduh semua file
berukuran kecil, sedang dan besar (yang khusus digunakan untuk percobaan) dari
aplikasi Multimedia File Storage ini menggunakan download manager. Pemakaian
processor di server aplikasi tidak berbeda jauh untuk file berukuran kecil dan
sedang. Tetapi ketika mengunduh file berukuran besar, pemakaian processor MySQL
melonjak tinggi. Konsumsi memori MySQL untuk file berukuran sedang lebih
sedikit daripada MongoDB. Dan ketika melayani file berukuran sedang dan besar,
penggunaan memori virtual MySQL lebih besar.
c. Operasi Delete,
operasi ini digunakan untuk menghapus setiap chunk dari file multimedia
berukuran besar yang tersimpan di basis data. Semakin besar ukuran file, maka,
penghapusan data akan semakin lambat karena banyaknya chunk.
Dari percobaan operasi DELETE, pemakaian
sumber daya komputer berimbang antara MySQL dan MongoDB. Kecepatan juga tidak
begitu terasa berbeda (walaupun untuk file berukuran kecil MySQL lebih unggul).
Kecepatan terasa berbeda ketika menghapus file berukuran besar.
F. Kesimpulan
Kesimpulan pada jurnal ini adalah aplikasi
File Multimedia berbasis web yang dirancang menggunakan PHP dengan basis data
MongoDB dapat berjalan dengan efektif dan efisien. Aplikasi File Multimedia
berbasis web yang dirancang menggunakan PHP dengan basis data basis data MySQL
dapat berjalan dengan efektif dan efisien. Aplikasi File Multimedia berbasis
web menggunakan PHP, dengan basis data MongoDB lebih cepat dalam operasi CREATE
untuk semua ukuran file dan lebih cepat dalam operasi DELETE untuk file
berukuran besar, serta lebih irit dalam penggunaan sumber daya komputer server
untuk operasi READ.
G. Komentar
Menurut saya jurnal ini sudah baik dalam
menjelaskan materinya dan memaparkan metodologi apa yang digunakan dalam
aplikasi file multimedia berbasis web, dan jurnal ini menggunakan bahasa
indonesia jadi mudah dipahami.
H. Referensi
[1] E. Sutanta, Basis Data dalam
Tinjauan Konseptual. Yogyakarta: Andi, 2011.
[2] dan T. E. Patel, Tejal, “Relational
Database vs NoSQL,” J. Multidiscip. Eng. Sci. Technol. (University Bridg., vol.
2, no. 4, pp. 691–695, 2015.
[3] S. George, “NOSQL - NOTONLY SQL,”
Int. J. Enterp. Comput. Bus. Syst., vol. 2, no. 2, pp. 1–11, 2013.
[4] B. P. Pore, Supriya S dan Swalaya,
“Comparative Study of SQL & NoSQL Databases,” Int. J. Adv. Res. Comput.
Eng. Technol., vol. 4, no. 5, pp. 1747–1753, 2015.
[5] A. M. Bhugul, “Comparative Study of
SQL & NOSQL Databases,” Int. J. Sci. Res. Dev., vol. 3, no. 2, pp.
1496–1498, 2015.
[6] dan G. D. Ward, Patricia, “Database
Management Systems,” Walaa Bakry dan Alan Murphy. London: Thomson Learning, p.
266, 2006.
[7] dan M. S. A.S, Rosa, Rekayasa
Perangkat Lunak (Terstruktur dan Berorientasi Objek). Bandung: Informatika,
2015.
[8] dan N. B. Aghi, Rajat, Sumeet Mehta,
Rahul Chauhan, Siddhant Chaudhary, “A Comprehensive Comparison of SQL and
MongoDB Databases,” Int. J. Sci. Res. Publ., vol. 5, no. 2, pp. 1–3, 2015.
[9] dan R. A. Punia, Yogesh,
“Implementing CBIS JOURNAL - VOL. 06 NO. 01 (2018) : MARET P a g e | 78
http://ejournal.upbatam.ac.id/index.php/cbis Information System Using MongoDB
and Redis,” Int. J. Adv. Trends Comput. Sci. Eng., vol. 3, no. 2, pp. 16–20,
2014.
[10] R. J. . Dyer, MySQL in a Nutshell,
Second Edi. Andy Oram. Sebastopol: O’Reilly, 2008.
[11] dan P. P. Kaladi, Aparna,
“Performance Evaluation of Database Management Systems by The Analysis of DBMS
Time and Capacity,” Int. J. Mod. Eng. Res., vol. 2, no. 2, pp. 67–72, 2012.
[12] dan K. E. V. Savage, T M, An
Introduction to Digital Multimedia, 2nd ed. Manchester: Jones & Bartlett
Learning, 2014.
[13] dan K. N. Adelheid, Andrea, Buku
Pintar Menguasai PHP MySQL. Jakarta Selatan: Mediakita, 2012
Demikian review jurnal dari saya. Terima Kasih...
Slot Machines - Casino and Gaming Guide - JTG Hub
ReplyDeleteSlot machines. When it 경주 출장샵 comes to slot machines, there are dozens 인천광역 출장마사지 of machines that make 수원 출장안마 up most of our online 상주 출장안마 casinos. 속초 출장안마 With over 200 titles, we've