• Tidak ada hasil yang ditemukan

Implementasi Stored Routine Dalam Pengembangan Network Database Application

N/A
N/A
Protected

Academic year: 2021

Membagikan "Implementasi Stored Routine Dalam Pengembangan Network Database Application"

Copied!
5
0
0

Teks penuh

(1)

Implementasi Stored Routine Dalam Pengembangan

Network Database Application

Paskalis Andrianus Nani

Program Studi Teknik Informatika Universitas Katolik Widya Mandira Jl. Achmad Yani No.50-52 Kupang 85225 NTT

paskalisnani@gmail.com

Abstrak -- SQL Statement baik berupa Data Definition Language dan Data Manipulation Language adalah cara yang umum bagi aplikasi untuk memperoleh data untuk ditampilkan. Namun seiring dengan faktor performa jaringan, penggunaan adhoc query akan sangat membebani lalu lintas jaringan karena statement tersebut harus dieksekusi oleh server untuk mencari kesalahannya, baru setelah itu mengirimkan hasilnya ke client. Terdapat alternatif SQL Statement untuk dibungkus dalam Stored procedure untuk mengatasi masalah ini. Stored procedure menyimpan statement-statement SQL dalam sebuah berkas yang disimpan di database server, sehingga dari sisi performa eksekusi, utilitas jaringan, dan keamanan, stored procedure banyak dipakai sebagai solusi akses data.

Hasil penelitian ini membuktikan bahwa penggunaan stored procedure sangat efektif dalam mengurangi beban jaringan dibandingkan dengan penggunaan adhoc query. Permintaan query oleh pengguna dapat langsung diperoleh karena eksekusi tidak dilakukan dua kali, melainkan sekali saja di komputer server. Selain itu, jika ingin melakukan perombakan aplikasi, tidak perlu membuat query lagi karena query sebelumnya sudah tersimpan dalam database dan kita dapat mengatur siapa saja yang dapat mengakses stored procedure tersebut sehingga keamanan data dapat lebih terjamin.

Kata Kunci: Stored Routine, Network Database Application

PENDAHULUAN

Sistem informasi sekarang ini sudah menjadi suatu hal penting bagi sebuah perusahaan. Sistem informasi yang baik

pada sebuah perusahaan sangat

mempengaruhi kesuksesan perusahaan

tersebut. Model kesuksesan sistem informasi

diukur berdasarkan system quality,

information quality, use, user satisfaction, individual impact dan organization impact

(Jogiyanto, 2007). Sistem informasi

dibangun untuk mengelola data dan

informasi.

Data dan Informasi telah menjadi bagian vital dalam pertumbuhan bisnis. Saat ini data dan informasi pada umumnya disimpan dalam satu atau lebih database. Data dan informasi tersebut dikelola oleh

sistem khusus yang dikenal dengan Database Management System (DBMS).

DBMS tidak hanya berperan untuk menyimpan data ataupun informasi, tetapi juga dapat berperan besar dalam pengelolaan dan manipulasi data. DBMS seperti SQL Server, MySQL, PostgreSQL, ataupun Oracle, pada umumnya berkomunikasi

dengan antarmuka aplikasi dengan

menggunakan pendekatan SQL Statement. SQL Statement baik berupa Data Definition Language dan Data Manipulation Language adalah cara yang umum bagi aplikasi untuk memperoleh data untuk ditampilkan. Namun seiring dengan faktor performa jaringan, penggunaan adhoc query akan sangat membebani lalu lintas jaringan karena statement tersebut harus dieksekusi

Vol. 1 No. 1 hal. 31 - 35

(2)

oleh server untuk mencari kesalahannya, baru setelah itu mengirimkan hasilnya ke client. Terdapat alternatif SQL Statement untuk dibungkus dalam Stored procedure untuk mengatasi masalah ini. Stored procedure menyimpan statement-statement SQL dalam sebuah berkas yang disimpan di database server, sehingga dari sisi performa eksekusi, utilitas jaringan, dan keamanan, stored procedure banyak dipakai sebagai solusi akses data.

Penelitian ini dilakukan untuk

mengetahui sejauh mana efektifitas

penggunaan stored procedure dalam

mengurangi beban jaringan dalam proses komunikasi antara DBMS dan antarmuka aplikasi dengan pendekatan SQL Statement.

METODE

Metode yang akan digunakan dalam penelitian ini terdiri dari langkah-langkah berikut:

a. Tinjauan pustaka

Tinjauan pustakan dilakukan untuk mendapatkan berbagai referensi yang berkaitan dengan penelitian yang dilakukan.

b. Desain dan implementasi database

Pada tahapan ini dilakukan perancangan dan pembuatan database yang akan

digunakan serta rule yang akan

digunakan dalam pengembangan

network database application.

c. Implementasi stored procedure

Mengimplementasikan stored procedure pada database yang telah dibuat.

d. Membangun aplikasi (database interafce)

Membuat dua buah aplikasi yang akan terhubung dengan database yang sama. Bedanya, aplikasi yang pertama hanya akan memanggil stored procedure yang telah disimpan di database sedangkan aplikasi kedua tidak akan memanggil (menggunakan) stored procedure yang ada melainkan menggunakan adhoc query.

e. Uji coba sistem

Uji coba dilakukan dengan menjalankan kedua aplikasi yang telah dibangun di dua komputer client dan melihat aktifitas jaringan apakah beban jaringan

benar-benar dapat dikurangi dengan

mengimplementasikan stored procedure. Alat yang digunakan dalam penelitian ini adalah :

a. Sebuah komputer server

b. Dua buah komputer client dengan

spesifikasi minimum

c. Sebuah switch untuk menghubungkan

komputer server dan client

d. Kabel LAN

e. Konektor RJ-45

f. Perangkat lunak MySQL Server,

MySQL Connector ODBC dan MySQL GUI Tools

g. Perangkat lunak pemrograman visual

Borland Delphi 7

HASIL DAN PEMBAHASAN

Desain dan Implementasi Database Yang Digunakan

Kasus yang akan diambil dalam pengembangan sistem adalah pendataan mahasiswa. Terdapat empat buah tabel yang akan digunakan yaitu sebuah tabel yang berisi data mahasiswa, sebuah tabel yang berisi data program studi dan sebuah tabel yang berisi data jurusan serta sebuah tabel yang berisi data fakultas.

Berikut disajikan entity-relationship diagram dari basis data yang akan digunakan dalam pengembangan aplikasi:

(3)

Dari diagram di atas dapat dilihat bahwa mahasiswa dan program studi memiliki relasi many to one dimana banyak mahasiswa memiliki program studi yang sama. Begitu pula dengan relasi antara program studi dan jurusan serta jurusan dan fakultas, dimana sebuah jurusan dapat memiliki lebih dari satu program studi dan sebuah fakultas dapat memiliki lebih dari satu jurusan.

Berdasarkan diagram yang telah dipaparkan di atas, maka dibuatlah struktur tabel yang akan digunakan sebagai berikut:

Gambar 2. struktur tabel mahasiswa Tabel mahasiswa terdiri dari 19 field

dengan primary key adalah field

No_Registrasi dengan tipe data varchar dan lebar data maksimum 20.

Gambar 3. struktur tabel ref_program_studi Tabel ref_program_studi terdiri dari 4 field dengan primary key adalah field ID_Program_Studi dengan tipe data varchar dan lebar data maksimum 6. Tabel ini berfungsi untuk menyimpan data program studi.

Gambar 4. struktur tabel ref_jurusan Tabel ref_jurusan terdiri dari 3 field dengan primary key adalah field ID_Jurusan dengan tipe data varchar dan lebar data maksimum 4. Tabel ini berfungsi untuk menyimpan data jurusan.

Gambar 4. struktur tabel ref_fakultas Tabel ref_fakultas terdiri dari 2 field

dengan primary key adalah field

ID_Fakultas dengan tipe data varchar dan lebar data maksimum 2. Tabel ini berfungsi untuk menyimpan data fakultas.

Pembuatan Stored Procedure

Pada tahap ini, stored procedure mulai dibuat dan siap untuk digunakan atau dipanggil oleh aplikasi interface. Stored procedure yang akan dibuat adalah sebagai berikut:

a. stored procedure untuk menampilkan

data mahasiswa per program studi CREATEPROCEDURE `sp_mhsprodi`(IN `prodi`VARCHAR(6)) LANGUAGE SQL NOT DETERMINISTIC CONTAINS SQL SQL SECURITYDEFINER COMMENT '' BEGIN

select* from MahasiswawhereID_Progam_Studi =

prodi; END

Routine di atas berfungsi untuk

menampilkan data mahasiswa

berdasarkan program studi yang

ditentukan. Data mahasiswa akan

diseleksi berdasarkan parameter

masukan (prodi). Contoh cara

pemanggilan routine tersebut adalah sebagai berikut:

CALL sp_mhsprodi(“020301”);

Hasil pemanggilan routine di atas adalah data seluruh mahasiswa program studi Teknik Informatika.

b. stored procedure untuk menampilkan

data mahasiswa per fakultas

CREATEPROCEDURE `sp_mhsfak`(IN`fak` VARCHAR(2)) LANGUAGE SQL NOT DETERMINISTIC CONTAINS SQL SQL SECURITYDEFINER COMMENT '' BEGIN

select* from Mahasiswa,Program_Studi,Jurusan,

Fakultas

wheremahasiswa2.ID_Program_Studi =

Program_Studi.ID_Program_Studi

and Program_Studi.ID_Jurusan = Jurusan.ID_Jurusan

and Jurusan.ID_Fakultas= Fakultas.ID_Fakultas

and Fakultas.ID_Fakultas= fak; END

Routine di atas berfungsi untuk

menampilkan data mahasiswa

(4)

Data mahasiswa akan diseleksi berdasarkan parameter masukan (fak).

Contoh cara pemanggilan routine

tersebut adalah sebagai berikut: CALL sp_mhsfak(“02”);

Hasil pemanggilan routine di atas adalah data seluruh mahasiswa fakultas Teknik.

c. stored procedure untuk menambah data

mahasiswa

CREATEPROCEDURE `sp_insertmhs`(IN`noreg`VARCHAR(50),

IN`prodi` VARCHAR(50), IN`angk` INT, IN`status`

VARCHAR(50),IN`nm`VARCHAR(50), IN`jk`VARCHAR(50),

IN`tmpt`INT,IN`tgl` INT) LANGUAGESQL NOTDETERMINISTIC CONTAINSSQL SQLSECURITYDEFINER COMMENT'' BEGIN

insertintoMahasiswa

values(noreg,prodi,angk,status,nm,jk,tmpt,tgl); END

Routine di atas berfungsi untuk

menambah data mahasiswa. Data

mahasiswa akan ditambahkan

berdasarkan parameter masukan. Contoh cara pemanggilan routine tersebut adalah sebagai berikut:

CALL

sp_insertmhs(“23111999”,”020301”,2011,”A”,”Emerensiana Ngaga”,”P”,”Kupang”,”1986-03-02”);

Hasil pemanggilan routine di atas adalah data bertambahnya sebuah record untuk data mahasiswa atas nama Emerensiana

Ngaga dengan nomor registrasi

23111999.

d. stored procedure untuk meng-update

data mahasiswa

CREATEPROCEDURE `sp_updatemhs`(IN`angk`INT,

IN`status`VARCHAR(1)) LANGUAGESQL NOTDETERMINISTIC CONTAINSSQL SQLSECURITYDEFINER COMMENT'' BEGIN update Mahasiswa

set Angkatan= angk

where Status_Mahasiswa=status; END

Routine di atas berfungsi untuk

mengubah data mahasiswa. Sebuah field dari data mahasiswa akan diubah berdasarkan parameter masukan. Contoh cara pemanggilan routine tersebut adalah sebagai berikut:

CALL sp_updatemhs(2011,”A”);

Hasil pemanggilan routine di atas adalah

data berubahnya status mahasiswa

angkatan 2011 menjadi aktif.

Uji Coba dan Perbandingan Kinerja Aplikasi

Pada tahap ini, kedua aplikasi yang telah dibuat akan dipasang pada masing-masing komputer client. Pengujian akan dilakukan terhadap empat buah perintah SQL yang telah dijelaskan sebelumnya dan akan dilakukan dengan panjang kabel LAN yang berbeda-beda pula.

Berikut ini disajikan hasil pengujian yang dilakukan terhadap aplikasi dan dengan panjang kabel LAN yang bervariasi:

Tabel 1.

Hasil Pengujian menggunakan kabel LAN sepanjang 5 meter

NO SQL

Waktu Rata-Rata Yang Dibutuhkan Menggunakan Stored Procedure Tanpa Stored Procedure 1 Tampil data mahasiswa

berdasarkan program studi 3.45 detik 3.89 detik 2 Tampil data mahasiswa

berdasarkan fakultas 3.86 detik 4.12 detik 3 Insert data Mahasiswa 4.13 detik 5.01 detik 4 Update Data Mahasiswa 6.57 detik 8.34 detik

Tabel 2.

Hasil Pengujian menggunakan kabel LAN sepanjang 15 meter

NO SQL

Waktu Rata-Rata Yang Dibutuhkan Menggunakan Stored Procedure Tanpa Stored Procedure 1

Tampil data mahasiswa berdasarkan program studi

7.29 detik 7.89 detik 2 Tampil data mahasiswa

berdasarkan fakultas 8.82 detik 9.34 detik 3 Insert data Mahasiswa 9.62 detik 10.42 detik 4 Update Data Mahasiswa 11.71 detik 13.21 detik

Tabel 3.

Hasil Pengujian menggunakan kabel LAN sepanjang 20 meter

NO SQL

Waktu Rata-Rata Yang Dibutuhkan Menggunakan Stored Procedure Tanpa Stored Procedure 1

Tampil data mahasiswa berdasarkan program studi

9.27 detik 9.89 detik 2 Tampil data mahasiswa

berdasarkan fakultas 9.88 detik 10.34 detik 3 Insert data Mahasiswa 10.62 detik 11.17 detik 4 Update Data Mahasiswa 14.71 detik 16.41 detik

Berdasarkan hasil pengujian dapat dilihat bahwa panjang kabel LAN (jarak antara database server dan komputer client)

(5)

sangt mempengaruhi waktu atau lama proses eksekusi perintah SQL dan Penggunaan stored procedure dapat mereduksi waktu

yang dibutuhkan untuk mengeksekusi

perintah SQL.

KESIMPULAN DAN SARAN Kesimpulan

Berdasarkan hasil penelitian, dapat disimpulkan bahwa penggunaan stored procedure sangat efektif dalam mengurangi

beban jaringan dibandingkan dengan

penggunaan adhoc query. Permintaan query oleh pengguna dapat langsung diperoleh karena eksekusi tidak dilakukan dua kali, melainkan sekali saja di komputer server. Selain itu, jika ingin melakukan perombakan aplikasi, tidak perlu membuat query lagi karena query sebelumnya sudah tersimpan dalam database dan kita dapat mengatur siapa saja yang dapat mengakses stored procedure tersebut sehingga keamanan data dapat lebih terjamin.

Saran

Saran yang ingin penulis berikan adalah khusus bagi para system analyst dan

programmer, agar lebih memilih

menggunakan stored procedure daripada adhoc query dalam pengembangan aplikasi database khususnya yang berbasis network karena lebih efektif dan aman.

Pengujian hanya dilakukan terhadap dua buah aplikasi saja (dua orang client), oleh karena itu saran bagi peneli selanjutnya adalah agar memperhatikan jumlah client user karena hasil pengujian yang maksimal dapat diperoleh jika dilakukan secara multiuser (banyak transaksi atau permintaan dari server secara bersamaan).

DAFTAR PUSTAKA

Ani Thakar and Alex Szalay. 2008. The

Catalog Archive Server Database

Management System. Computing In Science And Engineering. 1521-9615 IEEE.

Fathansyah. 2001. Basis Data. Bandung : Informatika.

Hutabarat, Bernaridho. 2005. SQL Server 2000. Jakarta : Dian Rakyat.

J. Chen, D. J. DeWitt, F. Tian, and Y. Wang. 2006. NiagaraCQ: A Scalable Continuous Query System for Internet Databases. SIGMOD.

Jogiyanto, H.M. 2007. Model Kesuksesan Sistem Teknologi Informasi. Yogyakarta : Andi Offset.

Kadir, Abdul. 2001. Konsep Dan Tuntunan Praktis Basis Data. Yogyakarta : Andi Offset.

Kristanto, Harianto. 2004. Konsep Dan Perancangan Database. Yogyakarta : Andi Offset.

Kroenke, David M. 2004. Database

Processing Fundamental, Design &

Implementation. Ohio : Prentice Hall Melton, J. 2008. Understanding SQL Stored

Procedures: a complete guide to

SQL/PSM. IEEE Data Engineering

Bulletin.

Saputro, Wahju T. 2005. MySQL Untuk Pemula. Yogyakarta : Pena Media.

Saracco, C.M. 2006. Leveraging stored procedures through enterprise javabeans. IBM Research.

Shimin Chen, Phillip B. Gibbons, and Suman Nath. 2008. Stored Procedure For Distributed XML Databases. Technical Report : Intel Research Pittsburg.

Sidik, Betha Ir. 2005. MySQL Untuk

Pengguna, Administrator dan

Pengembang Aplikasi Web. Bandung : Informatika.

Simarmata, Janner. 2006. Basis Data. Yogyakarta : Andi Offset.

Uwe Röhm and Thanh-Mai Diep. 2009. A Study Of Stored Procedure For BLAST Searches. University Of Sydney, School Of Information Technologies, Australia. Yuswanto dan Subari. 2005. Mengolah

Database Dengan SQL Server 2000. Jakarta : Prestasi Pustaka.

Gambar

Gambar 1. entity-relationship diagram
Gambar 2. struktur tabel mahasiswa  Tabel mahasiswa terdiri dari 19 field

Referensi

Dokumen terkait

dibelajarkan melalui model pembelajaran kooperatif tipe Time Token berbantuan gambar berseri dengan kelompok yang dibelajarkan melalui pembelajaran konvensional pada

pada setiap kedalaman tanah. Kandungan bahan organik tertinggi terdapat pada horison teratas dan berangsur-angsur menurun seiring dengan kedalaman tanah, berbeda

Semakin lama kontak antara fasa air yang terdiri dari larutan umpan (U,Mo) dengan fasa padat yaitu zeolit maka efisiensi penyerapan uranium maupun molibdenum akan semakin besar,

Penelitian ini bertujuan untuk menguji hipotesis maka metode analisisnya menggunakan model analisis jalur (path analysis) yaitu untuk mengetahui pengaruhlangsung dan tidak

Penerapan aplikasi Teknologi Informasi yang tepat dalam sekolah dan dunia pendidikan merupakan salah satu faktor kunci penting untuk mengejar ketertinggalan dunia

Tulisan ini mengemukakan suatu perancangan kompensasi riak frekuensi rendah pada teknologi converter dc ke dc terkendali menggunakan pengendali proposional dan intergrator

• Pada kegiatan Interaksi dengan orangtua, secara mandiri siswa diminta untuk bersama orang tua mengamati cara masyarakat di lingkungan siswa dalam menyelesaikan masalah

Menggunakan analisis studi kasus, yang digali adalah entitas tunggal atau fenomena (kasus) dari suatu masa tertentu dan aktivitas (bisa berupa program, kejadian, proses,