Penerapan Basis Data Terpartisi dalam Rancang Bangun Sistem Penggajian-Pengupahan dengan Model Jaringan Client-Server. Oleh : Yulis Dwi Anto (04410100036) Pembimbing : 1) Januar Wibowo,S.T. , M.M 2) Tegar Heru Susilo, S.kom SEKOLAH TINGGI MANAJEMEN INFORMATIKA & TEKNIK KOMPUTER SURABAYA 2011 Latar Belakang • Memanajemen data transaksi seperti upah dan gaji karyawan dgn kuantitas besar seperti 3000 transaksi data perhari terasa berat. • Berharap adanya program 1 klik untuk 1 proses dengan spreadsheet sulit diwujudkan. • Perlunya suatu solusi untuk melakukan 1 klik untuk satu proses. Permasalahan • Pertimbangan model jaringan yang memenuhi kebutuhan integritas data dalam workgroup dan keamanannya serta privasi data. • Model Client-server dipilih untuk memenuhi kebutuhan solusi tersebut. • Model Client-server menyebabkan data berkumpul di server sehingga beban respon server akan semakin berat dengan semakin banyaknya klien yang bekerja dalam waktu bersamaan. Permasalahan • Solusi membutuhkan strategi yang lebih baik untuk memanajemen data pada server terutama untuk kecepatan proses scanning di server. • Pertimbangan penggunaan pemartisian basis data untuk proses scanning dengan jumlah data yang besar di server dengan pertimbangan mempersingkat waktu respon server untuk tiap request dari klien. • Uji coba keefektifan pemartisian basis data untuk efesiensi waktu respon server. Definisi Pemartisian • Menurut Sam R. Alapati “Partition is a way of logically dividing a large table into smaller chunks to facilitate query processing. DML operations, and database manegement. All the partitions share the same logical definition, column definition, and constraints.” (Alapati , Sam R, 2008 :280). Definisi Pemartisian • “Partitioning takes this notion a step further, by enabling you to distribute portions of individual tables across a file system according to rules which you can set largely as needed. In effect, different portions of a table are stored as separate tables in different locations.” • (MySQL,2011:http://dev.mysql.com/doc/ref man/5.1/en/partitioning-overview.html). Keuntungan pemartisian • Pemartisian(horisontal) memungkinkan untuk menyimpan lebih banyak data ke dalam satu tabel dari pada sebuah disk atau file sistem partisi(hal ini berhubungan dengan kuota sebuah tabel ). • Data yang hilang sia-sia akan lebih mudah untuk diperbaiki dengan melakukan penghapusan partisi dimana data tersebut hilang. Contoh penghapusan partisi ialah ; ALTER TABLE employees DROP PARTITION p0; • Untuk mengembalikan pertisi ; ALTER TABLE ADD PARTITION (PARTITION p4 VALUES LESS THAN (2000)); Keuntungan pemartisian • Penggunaan where clause akan terbantu meningkat performanya karena apabila where clause yang diberikan tepat pada atau pada satu atau beberapa area partisi maka sistem tidak akan perlu mencari pada partisi-partisi lainnya (partition pruning ). • Kueri yang mengandung fungsi agregate seperti SUM() atau COUNT() akan dengan mudah dapat di parallelized(bahwasanya penjumlahan yang dilakukan bisa dilakukan secara berkesinambungan dari satu partisi ke partisi lainya ). Keuntungan pemartisian • Memperoleh sistem jelajah kueri yang lebih baik dengan melakukan penyebaran data scanning dan data seeking pada beberapa segmen data . Pemartisian Basis Data didalam OLTP • Pemartisian basis data seharusnya tidak diterapkan pada sistem OLTP karena keuntungan-keuntungan dari pemartisian basis data tidak akan berdampak banyak, menurutnya pada sistem OLTP tidak didapati proses data scanning pada skala besar karena desain OLTP memang tidak memperkenankan adanya desain dengan index data berskala besar. Merujuk pada Thomas Kyte(2010:565) Pearson Product Moment • Menurut Eddy Herjanto (2009:200) , koefisien korelasi merupakan ukuran relatif tingkat hubungan yang terdapat diantara variabel dependen dan variabel independen. Korelasi Pearson Product Moment merupakan koefisien korelasi yang banyak digunakan dalam penelitian. Koefisien korelasi antara variabel X dan variabel Y dilambangkan dengan rxy atau r saja dapat dihitung dengan rumus sebagai berikut; Desain Permartisian • Model Pemartisian Context Diagram Sistem DFD Level 0 CDM Tabel2 Transaksional PDM Tabel2 Transkasional (1) PDM Tabel2 Transaksional (2) Solusi • Klien (OLTP) Solusi • Server (Berdimensi Waktu) Implementasi Pemartisian • Struktur Tabel Master_gaji. Implementasi Pemartisian • Struktur Tabel Master_THR. Implementasi Pemartisian Evaluasi • Evaluasi kecepatan respon kueri server dari klien dilakukan untuk mengetahui tingkat efektifitas pemartisian basis data yang telah dilakukan. Pengujian dilakukan pada server dengan spesifikasi berikut ; - Prosessor Intel 2140 dengan kecepatan clock 1,6 GHz . - RAM 1 GB • Pengujian ini dilakukan atas data pada server dengan klien yang berada pada komputer sama dengan server atau kueri dilakukan pada local host • Lingkungan sumber daya memori komputer uji coba dikondisikan konstan Kueri di Uji Kueri di Uji Kueri di Uji Kueri di Uji Kueri di Uji Karakteristik Kueri di Uji Hasil Pengujian • Semua hasil pengujian penyelesaian kueri berikut ini ialah satuan waktu detik. • Variabel independen ialah jumlah dan variabel dependen ialah penyelesaian kueri. waktu dalam partisi waktu Hasil Uji 12 Partisi Hasil Uji 9 Partisi Hasil Uji 6 Partisi Hasil Uji 3 Partisi Hasil Uji Tanpa Partisi r Korelasi Uji • Rata-rata r Korelasi ialah : -0.705 Kesimpulan • Dari hasil perhitungan analisa korelasi di atas didapatkan bahwa pada semua kueri menunjukkan angka negatif yang artinya antara jumlah partisi dengan waktu kueri ialah saling mempengaruhi secara terbalik/negatif. Artinya semakin banyak(detail) jumlah partisi dalam tabel basis data maka kecenderungan waktu untuk menyelesaikan kueri select pada tabel basis data tersebut ialah semakin kecil. Atau dapat dikatakan bahwa dengan detailnya pemartisian basis data terdapat rata-rata 70.5% kecenderungan meningkatkan kecepatan dalam menyelesaikan kueri select. Kesimpulan • Pemartisian basis data tidak banyak membantu dalam memperkecil waktu kueri select jika karakteristik kueri ialah spesifik dalam jarak dan memiliki jumlah data scan yang kecil seperti halnya kueri ke 3 sehingga hubungan korelasi antara jumlah partisi dengan waktu kueri ialah relatif kecil yang diwakili dengan angka r = -0.378. Daftar Rujukan • Alapati, Sam R., 2008 , Expert Oracle Database 11g Administration, Apress. • Herjanto, Eddy, 2009, Sains Manajemen, Grasindo. • Kyte, Thomas, 2010, Expert Oracle Database Architecture: Oracle Database Programming 9i, 10g, and 11g Techniques and Solutions , Apress. • MySQL, Documentation Library, 2011, MySQL 5.1 Reference Manual, 08 Februari 2011. <http://dev.mysql.com/doc/refman/5.1/en/partitio ning-overview.html>