POLITEKNOSAINS, Vol. XV, No 1, Maret 2016
ISSN 1829-6181
PERBANDINGAN KINERJA DATABASE SERVER MYSQL DAN SQL SERVER (STUDI KASUS DATABASE SERVER POLITAMA SURAKARTA) Agus Haryawan Jurusan Teknik Elektro, Politeknik Pratama Mulia Surakarta email:
[email protected]
A B S T RACT There are various kinds of database server application, including MySQL and SQL Server. Each has advantages and disadvantages. Politama server uses SQL Server as its database server application. Program used to access this server is created with desktop applications. Up to this time applications can run smoothly. However, if the server is used to serve as many data requests at the same time, servers are often slow to respond. One solution to overcome this problem is to use an alternative database server application such as MySQL. Before it is implemented, we try to examine the response speed between SQL Server and MySQL. Comparisons were made using two computers with identical specifications. SQL Server and MySQL installed on each computer. Then, an application is created to access both the database server application. The tested instructions are SELECT, INSERT and DELETE. The results showed that MySQL applications provide better performance on all SQL commands. Access time to MySQL 1.85 times faster in SELECT command and 18.25 times faster at INSERT command KRS table records. The difference of access time increase as the number of record increase. Keywords: database, MySQL, SQL Server, comparison
PENDAHULUAN Unjuk kerja sebuah database server sangatlah penting terutama untuk kantor dengan jumlah data yang besar. Politeknik Pratama Mulia Surakarta memiliki jumlah mahasiswa yang banyak, Pengelolaan data mahasiswa menggunakan sistem komputer berbasis jaringan. Data dan aktivitas mahasiswa dikelola dengan sebuah komputer server dengan aplikasi database server. Aplikasi database server yang dipakai adalah Microsoft SQL Server. Server ini terhubung ke seluruh komputer yang ada di kampus Politama dan dapat diakses oleh karyawan, dosen atau pun mahasiswa.
Perbandingan Kinerja Database Server…
Seiring dengan meningkatnya jumlah data tiap semester, terjadinya penurunan unjuk kerja database server. Akses server menjadi terasa semakin lambat. Dari hasil polling mahasiswa menunjukkan adanya keluhan mahasiswa sewaktu mengakses data nilai. Hal ini disebabkan tiap semester terjadi penambahan data transaksi KRS dan nilai mahasiswa. Salah satu cara untuk mengatasi hal ini adalah dengan implementasi aplikasi database server alternatif dan open source. Dalam hal ini dipilih MySQL sebagai alternatif tersebut. Namun sebelum implementasi lebih lanjut, diperlukan penelitian yang menyangkut perbandingan unjuk kerja kedua aplikasi database server tersebut. Penulis melakukan penelitian untuk mengetahui perbandingan unjuk kerja aplikasi
43
POLITEKNOSAINS, Vol. XV, No 1, Maret 2016
database server SQL Server dan MySQL. Hasil penelitian diharapkan dapat menjadi pertimbangan bagi pengelola dan administrator server untuk memilih aplikasi alternatif selain SQL Server. Penelitian menggunakan data mahasiswa dan aktivitas KRS mahasiswa Politama sehingga hasilnya lebih relevan dengan masalah yang dikaji.
TINJAUAN PUSTAKA Penelitian [1] membandingkan unjuk kerja database server MySQL dan SQL Server dengan menggunakan aplikasi PHP. Data diakses dari client dengan format XML. Hasil penelitian menunjukkan SQL Server memiliki unjuk kerja yang lebih bagus daripada MySQL, kecuali pada perintah INSERT. Penelitian ini hanya menggunakan aplikasi web dan tidak menggunakan aplikasi desktop. Penelitian [2] menggunakan aplikasi desktop C# .NET. Hasil menunjukkan MySQL memiliki unjuk kerja yang lebih sedikit bagus dibandingkan dengan SQL Server. Sedangkan penelitian [3] menunjukkan bahwa aplikasi RDBMS masih memiliki unjuk kerja yang lebih bagus dibandingkan dengan aplikasi object-oriented database. Penelitian ini melanjutkan penelitian [1] untuk aplikasi berbasis desktop dan penelitian [2] dengan aplikasi berbasis Microsoft Visual Basic. Hasil penelitian ini diharapkan dapat menjadi pembanding terhadap berbagai jenis aplikasi yang mengakses MySQL maupun SQL Server. Database Server Database server adalah sebuah program komputer yang menyediakan layanan pengelolaan basis data dan melayani komputer atau program aplikasi basis data yang menggunakan model client-server. Istilah ini juga merujuk kepada sebuah komputer (umumnya merupakan server) yang didedikasikan untuk menjalankan program yang
Perbandingan Kinerja Database Server…
ISSN 1829-6181
bersangkutan. Sistem manajemen basis data (DBMS) pada umumnya menyediakan fungsifungsi server basis data, dan beberapa DBMS (seperti halnya MySQL atau Microsoft SQL Server) sangat bergantung kepada model clientserver untuk mengakses basis datanya. SQL Server SQL Server merupakan produk hasil kerja sama antara Microsoft dengan Sybase untuk memproduksi sebuah perangkat lunak penyimpan data (database) yang bekerja pada sistem operasi OS/2. Sistem operasi OS/2 merupakan sistem operasi baru kerja sama antara Microsoft dengan IBM. Sistem operasi OS/2 mengenal bentuk-bentuk perintah DOS, sekaligus memiliki keunggulan yaitu multitasking. SQL Server versi 1.0 diluncurkan pertama kali pada tahun 1989 kemudian pada tahun 1990 diluncurkan SQL Server versi 1.1. Adapun fitur yang menonjol pada versi 1.1 ini ialah dukungan untuk platform baru dari sisi client yang dikenal sebagai Windows 3.1. Kemudian pada tahun 1991 diluncurkan SQL Server versi 1.11 yang memiliki fasilitas perawatan database. Dan pada tahun 1992 SQL versi 4.2 dirilis dan berisi tool administrasi database berbasis GUI-Window. Di tahun 1995 SQL Server versi 6.0 diluncurkan dengan fitur penting, seperti replikasi, kursor scrollbar dan sejumlah tool manajemen baru yaitu Enterprise Manager. Selanjutnya versi 6.5 dirilis di tahun 1996 dilanjutkan versi 7.0 di tahun 1999 dan SQL Server 2000 yang diluncurkan pada tahun 2000.SQL Server 2005 diluncurkan di tahun 2005yang memiliki fitur penting, yaitu dari sisi penulisan program. Di sini dimungkinkan penulisan Stored Procedure, Trigger dan yang lainnya dengan menggunakan bahasa pemrograman VB.Net 2005. MySQL MySQL pertama dirancang oleh seorang programmer database yang bernama Michael Widenius. MySQL database server adalah
44
POLITEKNOSAINS, Vol. XV, No 1, Maret 2016
RDBMS (Relational Database Management System) yang dapat menangani data yang bervolume besar. Meskipun dapat menampung data yang besar tetapi MySQL ini tidak membutuhkan resource yang besar. MySQL adalah program database yang multiuser serta cepat dalam mengirim maupun menerima data. MySQL merupakan system management database yang open source , yaitu perangkat lunak ini bersifat free atau bebas digunakan oleh perorangan atau instansi tanpa harus membeli atau membayar pada pembuatnya. Kemudian unjuk kerja MySQL sangatlah tinggi namun simpel. Dan database MySQL mengerti bahasa SQL (Structured Query Language). SQL merupakan bahasa terstruktur yang khusus digunakan untuk mengolah database. MySQL dapat diakses melalui protocol ODBC (Open Database Connectivity) yang merupakan buatan Microsoft. Ini yang membuat MySQL dapat digunakan pada banyak perangkat lunak. Pada awalnya MySQL hanya bekerja pada platform Unix atau Linux saja. Namun dengan perkembangan MySQL sekarang dapat berjalan di berbagai sistem operasi yang lain seperti Windows, Solaris dan yang lain-lain. Semua klien dapat mengakses server dalam satu waktu, tanpa harus menunggu yang lain untuk mengakses database tersebut. Inilah yang dimaksud dengan multiuser dan MySQL merekam semua data user di dalam sistemnya ke bentuk tabel user.
METODE PENELITIAN Alat Penelitian Penelitian ini menggunakan 3 buah perangkat komputer, masing-masing 2 buah komputer server dengan spesifikasi identik dan 1 buah komputer client. Perangkat lunak menggunakan sistem operasi Microsoft Windows Server 2003 untuk aplikasi SQL Server dan Ubuntu 14.04 untuk aplikasi MySQL Server. Sedangkan
Perbandingan Kinerja Database Server…
ISSN 1829-6181
komputer client menggunakan sistem operasi Microsoft Windows 7. Topologi jaringan menggunakan jaringan kabel dengan 1 buah switch dan 3 buah kabel UTP straight. Langkah-Langkah Penelitian Sistem yang sedang berjalan atau yang saat ini dipakai untuk server Politama adalah topologi star dengan server bersistem operasi Microsoft Window 2003. Sedangkan aplikasi database server menggunakan Microsoft SQL Server 2005. Agar tidak mengganggu sistem yang sedang berjalan, peneliti menggunakan topologi jaringan sendiri dan database diimpor dari server Politama. Langkah-langkah penelitian dilakukan melalui tahapan sebagai berikut: Merancang Topologi Jaringan
Meng-install Sistem Operasi Komputer untuk penelitian menggunakan sistem operasi Linux Ubuntu v14.04 untuk aplikasi MySQL dan Windows Server 2003 untuk aplikasi SQL Server. Sistem operasi ini disesuaikan dengan kondisi sistem yang sedang berjalan atau sistem yang dipakai untuk server Politama saat ini.
45
POLITEKNOSAINS, Vol. XV, No 1, Maret 2016
ISSN 1829-6181
Meng-install Aplikasi Database Server Database server menggunakan MySQL versi 5.6 dan SQL Server 2005.
Merancang Perintah SQL Untuk di Uji Perintah SQL yang diamati adalah sebagai berikut: perintah delete (sebagian atau seluruh baris dalam tabel) perintah select (sebagian atau seluruh baris dalam tabel) perintah insert (sebagian atau seluruh baris dalam tabel) Mengambil Data Pengamatan Data pengamatan diambil langsung dengan meng-eksekusi perintah-perintah yang diamati, dan mencatat hasil yang ditampilkan pada aplikasi database client. Mengolah Data Pengamatan Data hasil pengamatan diolah menjadi data dalam bentuk angka dan grafik sehingga diperoleh perbandingan yang nyata di antara kedua aplikasi database server.
HASIL DAN PEMBAHASAN
t(detik)
20 15 10 5 0
MHS
KRS
SQL server
0,45
18
MySQL
0,21
1,18
Gambar 1. Perbandingan eksekusi perintah delete semua record pada tabel mhs dan krs
Delete Where
t (sekon)
Meng-install Program SQL Client Uji coba perintah SQL dari komputer client menggunakan aplikasi yang sama sehingga tidak terjadi bias waktu yang disebabkan oleh jenis aplikasi di komputer client.
Perintah Delete All
5 4,5 4 3,5 3 2,5 2 1,5 1 0,5 0
MHS
KRS
MySQL
0,1
0,4
SQL Server
0,77
4,61
Gambar 2. Perbandingan eksekusi perintah delete dengan kriteria pada tabel mahasiswa dan krs
Dari hasil pengamatan dan pengolahan data, diperoleh hasil-hasil penelitian dalam bentuk grafik sebagai berikut:
Perbandingan Kinerja Database Server…
46
POLITEKNOSAINS, Vol. XV, No 1, Maret 2016
ISSN 1829-6181
Insert All
5 4,5 4 3,5 3 2,5 2 1,5 1 0,5 0
60 50
t (sekon)
t(sekon)
Select All
40 30 20
10 0 MHS
SQL Server MySQL
MHS
KRS
4,51
SQL Server
20
56,77
1,18
MySQL
0,3
3,11
KRS
0,77 0,11
Gambar 3. Perbandingan waktu eksekusi perintah select all pada tabel mahasiswa dan krs
Gambar 5. Perbandingan waktu eksekusi perintah insert pada tabel mahasiswa dan krs
Select Where
Insert pada Table MHS
0,8
30
0,7
25
20
t (sekon)
t (sekon)
0,6 0,5
15 10
0,4
5
0,3
0
SQL Server
MySQL
1 Baris
0,4
0,11
KRS
190 Baris
0,25
0,12
SQL Server
0,75
5000 Baris
7,05
0,7
MySQL
0,4
10000 Baris
24
0,81
0,2 0,1 0
Gambar 4. Perbandingan waktu eksekusi perintah select dengan kriteria pada tabel mahasiswa dan krs
Gambar 6. Perbandingan waktu eksekusi perintah select dengan kriteria pada tabel mahasiswa dan krs
Perintah insert diuji pada database table MHS dan KRS yang dimiliki oleh Politeknik Pratama Mulia Surakarta. Table MHS memiliki 7043 baris data dan tabel KRS memiliki 241477 baris
Perbandingan Kinerja Database Server…
47
POLITEKNOSAINS, Vol. XV, No 1, Maret 2016
data. Didapatkan hasil bahwa untuk perintah insert pada aplikasi MySQL untuk meng-insert sebanyak 1 baris ke tabel MHS dibutuhkan waktu 0,11 detik dan untuk aplikasi SQL Server pada tabel MHS sebanyak 1 baris dibutuhkan waktu 0,40 detik. Kemudian meng-insert 190 baris pada aplikasi MySQL yang masih menggunakan tabel yang sama yaitu MHS membutuhkan waktu 0,12 detik sedangkan pada aplikasi SQL Server membutuhkan waktu 0,25 detik dengan perintah yang sama dan pada tabel yang sama juga yaitu MHS. Selanjutnya meng-insert 5000 baris pada tabel MHS untuk aplikasi MySQL membutuhkan waktu 0,70 detik yang mana untuk aplikasi SQL Server membutuhkan waktu 7,05 detik pada tabel yang sama yaitu MHS. Lalu untuk meng-insert sebanyak 10000 baris pada tabel MHS di aplikasi MySQL memerlukan waktu 0,81 detik dan 24 detik pada aplikasi SQL Server untuk perintah dan pada tabel yang sama. Pada perintah insert di atas menggunakan perintah insert where lalu untuk perintah insert all atau perintah insert yang berkombinasi dengan perintah select. Untuk perintah all ini pada aplikasi MySQL untuk tabel MHS memerlukan waktu 0,30 detik dan pada aplikasi SQL Server untuk tabel juga perintah yang sama memerlukan waktu 20 detik. Dan pada tabel KRS untuk aplikasi MySQL memerlukan waktu 3,11 detik dan 56,77 detik pada aplikasi SQL Server dengan perintah dan pada tabel yang sama. Tabel MHS memiliki 7043 baris data dan untuk tabel KRS memiliki 241477 baris data. Perintah delete ini diuji pada tabel MHS dan KRS. Pada perintah delete where atau menghapus data pada bagian tertentu saja, untuk aplikasi SQL Server memerlukan waktu 0,77 detik pada tabel MHS. Dan untuk aplikasi MySQL memerlukan waktu 0,10 detik pada tabel dan perintah yang sama. Sedangkan pada tabel KRS, aplikasi SQL Server memerlukan waktu sebanyak 10 detik dan aplikasi MySQL membutuhkan waktu 0,40 detik saja untuk
Perbandingan Kinerja Database Server…
ISSN 1829-6181
mengeksekusi perintah delete where tersebut pada tabel KRS. Selain perintah delete where di atas juga diuji perintah delete all atau menghapus semua data. Pada tabel MHS aplikasi MySQL memerlukan waktu 0,21 detik dan aplikasi SQL Server membutuhkan waktu 0,45 detik. Sedangkan untuk tabel KRS aplikasi MySQL memerlukan waktu 4,61 detik dan 18 detik pada aplikasi SQL Server dalam mengeksekusi perintah delete all ini. Untuk perintah select ini penulis melakukan pengujian pada 2 perintah. Yang pertama perintah select where untuk aplikasi SQL Server pada tabel KRS memerlukan waktu 0,75 detik sedangkan pada aplikasi MySQL membutuhkan waktu 0,40 detik pada tabel yang sama yaitu KRS. Yang kedua perintah select all atau perintah memilih seluruh data. Pada tabel MHS untuk aplikasi MySQL memerlukan waktu 0,20 detik dan 0,77 detik pada aplikasi SQL Server untuk perintah yang sama yaitu select all. Sedangkan pada tabel KRS aplikasi MySQL memerlukan waktu 1,18 detik yang mana pada aplikasi SQL Server membutuhkan waktu lebih panjang yaitu 4,51 detik dalam mengeksekusi perintah select all ini.
KESIMPULAN Hasil penelitian menunjukkan bahwa: Untuk tabel krs, perbandingan terendah ada pada perintah SELECT dengan kriteria yang mana waktu akses MySQL sekitar 1,85 kali lebih cepat daripada SQL Server. Perbandingan tertinggi ada pada perintah insert dengan data seluruh record tabel krs yang mana waktu akses MySQL 18,25 kali lebih cepat daripada SQL Server. MySQL memberikan unjuk kerja yang lebih baik pada semua perintah SQL. Selisih waktu akses semakin lebar seiring dengan jumlah record yang diakses.
48
POLITEKNOSAINS, Vol. XV, No 1, Maret 2016
ISSN 1829-6181
DAFTAR PUSTAKA [1] Amlanjyoti Saikia, Sherin Joy, Dhondup Dolma, Roseline Mary. R, Comparative Performance Analysis of MySQL and SQL Server Relational Database Management Systems in Windows Environment, IJARCCE Vol. 4 Issue 3, March 2015 [2] Youssef Bassil, A Comparative Study on the Performance of the Top DBMS Systems, JCSCR Vil. 1 No. 1 Pages 20-31, February 2012 [3] S. Kulshrestha and S. Sachdeva, Performance Comparison for Data Storage - Db4o and MySQL Databases, Department of Computer Science and Engineering, Jaypee Institute of Information Technology, Noida, India, 2014 [4] Lee J. (2013, November 30). Oracle vs. MySQL vs. SQL Server: A Comparison of Popular RDBMS [Online]. Available: https:// blog.udemy.com/ oracle-vs-mysql-vs-sql-server/ [5] A.K. Dwivedi, C.S. Lamba, S. Shukla, Performance Analysis of Column Oriented Database versus Row Oriented Database, International Journal of Computer Applications (0975 – 8887), Vol. 50- No.14, July 2012. [6] Jeffrey A. Hoffer, Mary Prescott, Heikki Topi, Modern Database Management, 9th ed, Prentice Hall, 2008. [7] MS SQL Server 2008, http://www.microsoft .com/sqlserver/en/us/default.aspx
Perbandingan Kinerja Database Server…
49