Implementasi Konsep Homogenous Distributed

advertisement
IMPLEMENTASI KONSEP HOMOGENOUS DISTRIBUTED DATABASE SYSTEM
ORACLE XE 10g PADA PROTOTYPE SISTEM INFORMASI BMT
M. Didik R. Wahyudi1) Sigit Nugroho 2)
1,2
Teknik Informatika FST UIN Sunan Kalijaga
Email : [email protected]
ABSTRACT
Oracle is one of the DBMS and one version is Oracle 10g XE is licensed free of charge. Oracle 10g
XE has limited data storage capacity of 4 GB. Limitations of the storage capacity can be increased
by using the concept of homogenous Distributed Database System.
Homogenous Distributed Database System Concepts is a distributed database system that involves
a lot of the same DBMS in building a database in an information system.
Topology distributed database that will be used is partialy Connected Network. The hope, the
limited data storage capacity can be increased with the concept of homogenous Distributed
Database System. This concept will be simulated in a BMT saving and loan Information System
Keywords : Distributed databases, Homogenous Distributed Databas System, Partially Connected
Network, BMT saving and loan information
PENDAHULUAN
Semakin
majunya
teknologi
informasi, dalam hal ini adalah teknologi
basis data dan jaringan komputer, membuat
suatu organisasi makin mudah untuk lebih
meningkatkan
produktifitas
kinerjanya.
Khususnya bagi organisasi yang mempunyai
cabang - cabang yang tersebar di beberapa
tempat, kendala jarak dan waktu bisa teratasi.
Pengembangan sistem basis data adalah suatu
keinginan untuk menyatukan data operasional
dari suatu organisasi dan pengaksesan data
yang terkontrol. Integrasi data dan kontrol
data telah diimplementasikan pada bentuk
data tersentralisasi,
Sistem basis data tersentralisasi
mempunyai beberapa kelemahan, seperti
putusnya koneksi antar komputer cabang
(client database) dengan server basis data
utama, akibat putusnya koneksi jaringan
komputer. Atau ketika server basis data utama
sedang down, masalah yang akan timbul
adalah ketidaktersediaan data untuk beberapa
waktu. Desain sistem basis data tersentralisasi
juga mempunyai kelemahan lain seperti
proses query dari semua client yang
dibebankan pada satu server.
Salah satu solusi untuk mengatasi
masalah-masalah tersebut adalah dengan
mengimplementasikan desain sistem basis
data terdistribusi. Sistem ini mendistribusikan
keseluruhan atau sebagian data ke beberapa
server basis data.
Basis data terdistribusi memiliki dua
metode, yaitu: Homogenous Distributed
Database
System
dan
Heterogenous
Distributed Database System. Homogenous
Distributed Database System adalah suatu
sistem yang menjalankan tipe DBMS yang
sejenis di setiap unit distribusi data atau
dengan kata lain keterhubungan DBMS
tersebut dengan DBMS yang sama.
Sedangkan
Heterogenous
Distributed
Database System adalah suatu sistem yang
menjalankan tipe DBMS yang berbeda di
setiap unit distribusi datanya, baik secara
relational DBMS ataupun non relational
DBMS. Misalkan di suatu unit memakai
DBMS Oracle, dan di unit lain memakai
DBMS MYSQL, akan tetapi DBMS tersebut
tetap saling terhubung.
Dari permasalahan tersebut di atas,
penulis bermaksud untuk membangun sebuah
arsitektur basis data menggunakan konsep
Homogenous Distributed Database System
dengan menggunakan DBMS Oracle XE 10g.
Dan melalui penelitian ini akan membuktikan,
bahwa dengan resource yang terbatas sebuah
arsitektur basis data masih memiliki performa
yang handal pada masing – masing server.
Konsep Basis data dan DBMS (Database
Management System)
Database atau basis data adalah
kumpulan data yang disimpan secara
sistematis di dalam komputer dan dapat
dimanipulasi atau diolah menggunakan
perangkat lunak (program aplikasi) untuk
menghasilkan informasi. Pendefinisian basis
data meliputi spesifikasi berupa tipe data,
struktur, dan juga batasan-batasan data yang
akan disimpan. Basis data merupakan aspek
yang sangat penting dalam sistem informasi
dimana basis data merupakan gudang
penyimpanan data yang akan diolah lebih
lanjut. Basis data menjadi penting karena
dapat menghidari duplikasi data, hubungan
antar data yang tidak jelas, organisasi data,
dan juga update data yang rumit (Oracle,
2006).
Basis data adalah sekumpulan
informasi terutama informasi yang saling
berhubungan dan terorganisir (Powell, 2005).
Basis data merupakan salah satu
komponen yang penting dalam sistem
informasi, karena berisi basis penyedia
informasi bagi para pemakainya. Basis data
tersimpan di simpanan luar komputer dan
digunakan oleh suatu perangkat lunak untuk
memanipulasinya. Basis data merupakan
penyedia informasi bagi para pengguna.
Dalam sistem informasi, basis data diterapkan
sebagai Database System (Sistem Basis Data).
DBMS Oracle
Oracle merupakan salah satu dari
sekian banyak jenis DBMS yang ada saat ini,
untuk DBMS Oracle sendiri cukup banyak
versinya, salah satunya yakni Oracle XE 10g
yang ditujukan untuk keperluan pengelolaan
data pada instansi atau perusahan kecil sampai
menengah yang berlisensi freeware / gratis.
Tetapi terdapat keterbatasan dari Oracle XE
10g ini, yaitu kapasitas database dibatasi
hanya dengan ukuran 4 GB. Pada instansi /
perusahaan yang menggunakan Oracle XE
dan memiliki kebutuhan penyimpanan data
besar maka ukuran seperti itu masih belum
mencukupi.
Basis data terdistribusi
Terdapat dua macam sifat dari
database terdistribusi yaitu Heterogenous dan
Homogenous. Dapat dilihat padaa gambar
berikut ini :
Gambar 1: Sifat dari database terdistribusi
1. Homogenous artinya suatu database
terdistribusi di mana data didistribusikan
pada
beberapa komputer dengan
menggunakan
DBMS
(database
management system) yang sama. DBMS
digunakan pada database terdistribusi
untuk melakukan koordinasi data pada
beberapa node.
2. Heterogenous adalah kebalikan dari
Homogenous dimana data di sebarkan
dengan menggunakan DBMS yang
berbeda.
Karakteristik database terdistribusi
1.
Kumpulan data yang digunakan
bersama secara logic tersebar pada
sejumlah komputer yang berbeda
2.
Komputer
yang
dihubungkan
menggunakan jaringan komunikasi.
3.
Data pada masing-masing situs dapat
menangani aplikasi-aplikasi lokal
secara otonom.
4.
Data pada masing situs di bawah
kendali satu DBMS.
5.
Masing-masing DBMS berpartisipasi
dalam sedikitnya satu aplikasi global.
Replikasi Basis Data
Replikasi adalah suatu teknik untuk
melakukan copy dan pendistribusian data dan
objek-objek database dari satu database ke
database lain yang lokasinya terpisah secara
fisik. Dengan menggunakan teknik replikasi,
data dapat didistribusikan ke lokasi yang
berbeda melalui koneksi jaringan lokal
maupun internet.
Konsep Aplikasi Berbasis Web
PHP (Personal Home Page)
PHP ( Personal Home Page )
merupakan suatu bahasa perogaman yang
digunakan sebagai bahasa script server-side
dalam pengembangan web yang disisipkan
pada dokumen HTML. Pada awalnya PHP
digunakan untuk mencatat jumlah dan
mengetahui siapa saja homepagenya.
Kemudian ditulis ulang menggunakan bahasa
C dan lahir PHP / F1 pada tahun 1996.
(Nugroho, 2004).
HTML (Hyper Text Markup Language)
HTML merupakan akronim Hyper
Text Markup Language. Adalah suatu
dokumen yang berisi file teks murni yang
dapat dibuat dengan sembarang editor text,
dan disajikan dalam browser web
surfer.(Imam Heryanto, dkk, 2010).
Javascript
JavaScript
pertama
kali
dikembangkan oleh Brendan Eich dari
Netscape dibawah nama Mocha, yang
nantinya
namanya
diganti
menjadi
LiveScript, dan akhirnya menjadi JavaScript.
Navigator sebelumnya telah mendukung
Java untuk lebih bisa dimanfaatkan para
programmer
yang
non-Java.
Maka
dikembangkanlah bahasa pemrograman
bernama LiveScript untuk mengakomodasi
hal tersebut. Bahasa pemrograman inilah
yang akhirnya berkembang dan diberi nama
JavaScript, walaupun tidak ada hubungan
bahasa antara Java dengan JavaScript..
(Imam Heryanto, dkk, 2010).
METODOLOGI PENELITIAN
Metode penelitian basis data yang
digunakan adalah metode Homogenous
Distributed Database System.
Implementasi
Homogenous
Distributed
Database
System
dalam
penelitian ini menggunakan perangkat lunak
basis data Oracle XE 10g, 5 (lima) buah
laptop sebagai perangkat keras utama, tiga
buah laptop telah ter-Install Oracle XE 10g
dan XAMPP 1.7.3 yang berfungsi sebagai
database Server dan webserver, dan dua
laptop sisanya berfungsi sebagai pengolah
data
pada
server
cabang.
Pengimplementasian
Homogenous
Distributed Database System diilustrasikan
pada prototipe sistem informasi simpan
pinjam BMT berbasis web dengan bahasa
pemrograman PHP. Diilustrasikan dengan
contoh satu database server pusat, dan dua
database server cabang, dimana server pusat
berfungsi sebagai penampung data (backup)
yang tersebar pada setiap server cabang
secara real-time.
Penelitian ini ditekankan pada
penerapan konsep basis data terdistribusi
Homogenous Distributed Database System
yang
diilustrasi pada Prototipe Sistem
Informasi Simpan Pinjam BMT. Tujuannya
untuk membuktikan apakah metode ini dapat
membantu meningkatkan kapasitas Oracle
XE 10g yang terbatas hanya 4 GB ruang
penyimpanan data.
Gambar 2 : Gambaran Umum implementasi Homogenous Distributed Database System
Basis data yang dimiliki pada
prototipe sistem informasi simpan pinjam ini
terletak dibeberapa site, yaitu diantaranya,
untuk basis data utama (master) terletak pada
setiap DB Server Cabang dan basis data
cadangan (slave) / backup terletak pada DB
NO
1
2
Server
Pusat.
Untuk
setiap
cabangnya telah diatur memiliki tabel
sequences dengan id yang berbeda – beda
untuk menghindari duplikasi data yang sama.
Lihat tabel 1 di bawah ini :
Tabel 1 : Sequences Data Table untuk setiap Server Cabang
Sequences
Keterangan
110000001
ID auto_increment untuk setiap tabel
data pada DB Server Cabang 1
120000001
ID auto_increment untuk setiap tabel
data pada DB Server Cabang 2
Konfigurasi Database Link
Konfigurasi
Database
Link
merupakan salah satu proses yang harus
dilakukan untuk merancang sebuah sistem
data yang terdistribusi, karena Database Link
sendiri berfungsi sebagai penghubung antara
skema basis data yang terbentuk, dalam hal
ini adalah penghubung antara skema db
server cabang dan skema db server cadangan
yang terletak di pusat. Pada contoh kasus
untuk penelitian ini sendiri, database link
dibangun atau dibentuk pada db server
cadangan dan hal tersebut dilakukan secara
otomatis ketika terjadi proses penambahan db
server cabang.
Ilustrasi Sistem Informasi Simpan Pinjam
BMT
Penerapan
pendistribusian
data
dengan konsep Homogenous Distributed
Database System pada penelitian ini sendiri
diilustrasikan dengan sistem informasi
simpan pinjam BMT berbasis web
menggunakan DBMS Oracle XE 10g. Untuk
contoh kasus dalam penelitian ini membahas
bagaimana proses pendistribusian data yang
berada pada setiap db server cabang dan
proses duplikasi data (backup) hingga berada
di db server cadangan, sebagaimana telah
dijelaskan pada gambar 2.
HASIL DAN PEMBAHASAN
Skema implementasi yang dibangun
atau dirancang dalam penelitian ini dapat
dilihat pada gambar 3 berikut ini :
Gambar 3 : Skema Implementasi Homogenous Distributed Database System
Rancangan Basis Data
Tabel Basisdata Cabang (Master) dan Pusat (Slave)
No
1
2
3
4
5
6
Tabel 2 : Daftar Tabel Basisdata Master dan Slave
Tabel Master (Server Cabang)
Tabel Slave (Server Pusat)
BMT_NASABAH_C
BMT_NASABAH
BMT_SIMPANAN_C
BMT_SIMPANAN
BMT_PINJAMAN_C
BMT_PINJAMAN
BMT_SETORAN_C
BMT_SETORAN
BMT_AMBIL_C
BMT_AMBIL
BMT_ANGSURAN_C
BMT_ANGSURAN
Relasi Tabel DB Server Cabang
Gambar 4 : Relasi Antar Tabel Pada Database Server Cabang
Relasi Tabel DB Server Pusat
Relasi antar tabel DB Server Pusat
atau DB Server Backup yang dibangun pada
pengimplementasian konsep Homogenous
Distributed Database System yang diterapkan
untuk prototipe Sistem Informasi Simpan
Pinjam BMT dalam penelitian ini sendiri
dapat dilihat pada gambar 5 berikut ini :
Gambar 5: Relasi Antar Tabel Pada Database Server Pusat
Rancangan Sistem Server Cabang
Berikut adalah perancangan sistem
server cabang dalam penerapan konsep
Homogenous Distributed Database System
pada Prototipe Sistem Informasi Simpan
Pinjam BMT.
Menejemen Nasabah
(Lihat Data Nasabah)
<<include>>
Laporan Simpanan,
Pinjaman
Direktur Cabang
BMT
Menejemen Teller
Cabang (CRUD)
<<include>>
LOGIN
<<include>>
Gambar 6 : Skema Prilaku User Sistem untuk Direktur BMT Cabang
Menejemen Nasabah
(Tambah Data Nasabah)
<<include>>
LOGIN
Transaksi Nasabah
(Simpanan, Pinjaman,
Setoran, Angsuran,
Ambil)
Teller Cabang
BMT
<<include>>
Gambar 7 : Skema Prilaku User Sistem untuk Teller BMT Cabang
LOGIN
Turn On/Turn Off
koneksi basis data
Pada Sistem
<<include>>
Super User Cabang
BMT
Gambar 8 : Skema Prilaku User Sistem untuk Superuser BMT Cabang
Rancangan Sistem Server Pusat
Menejemen BMT
Cabang
<<include>
>
Data Nasabah
Setiap Cabang
Admin BMT
Pusat
<<include>
>
LOGIN
<<include>
>
Menejemen Laporan
(Simpanan,
Pinjaman) Setiap
CabangPrilaku User Sistem untuk Admin BMT Pusat
Gambar 9 : Skema
Dari skema prilaku user pada gambar
di atas, sudah dapat digambarkan, bahwa
Sistem yang ada pada Server Pusat memiliki
beberapa prilaku user.
Alur Sinkronasi Data
Database Server Cabang 1
Jalur Sinkronasi Data & Backup
Jarul Sinkronasi data & Backup
Jalur Sinkronasi data & Backup
Koneksi Jaringan
Database Server Pusat (Backup)
Database Server Cabang 2
Gambar 10 : Skema Alur Sinkronasi Data dari Server BMT Cabang ke Server BMT Pusat.
Dari skema alur sinkronasi data di
atas dapat terlihat bahwa data yang berada
pada masing – masing Database Server
Cabang melakukan backup data. Untuk
contoh kasus dalam penelitian ini, proses dari
backup data dilakukan dengan cara selalu
No
1
2
3
4
5
6
meng-update tabel mirror / backup yang ada
pada database server pusat. Berikut tabel –
tabel basis data pada database server cabang
yang memiliki tabel backup pada database
server pusat. Dapat dilihat pada table 3 di
bawah ini:
Tabel 3 : Daftar Tabel Basisdata Master dan Slave
Tabel Master (Server Cabang)
Tabel Slave (Server Pusat)
BMT_NASABAH_C
BMT_NASABAH
BMT_SIMPANAN_C
BMT_SIMPANAN
BMT_PINJAMAN_C
BMT_PINJAMAN
BMT_SETORAN_C
BMT_SETORAN
BMT_AMBIL_C
BMT_AMBIL
BMT_ANGSURAN_C
BMT_ANGSURAN
Proses
sinkronasi
data
pada
penelitian ini menggunakan metode Table
Margin, yaitu dengan mencocokkan isi data
dari setiap tabel basis data yang akan dimargin. Dimana setiap data tabel master
selalu melakukan pencocokan data ke tabel
slave. Perlu diketahui metode sinkronasi data
dengan Table Margin hanya dapat
menjalankan manipulasi data ketika proses
(insert dan update) data saja, untuk delete
tidak dijelaskan dalam penelitian ini. Berikut
potongan query data salah satu tabel mater
yang melakukan proses sinkronasi ke tabel
slave dengan metode table margin. Gambar
11 dibawah ini adalah contoh penggunaan
query yang menggunaan konsep table margin.
Gambar 11 : Kode SQL pemakaian konsep table margin
KESIMPULAN DAN SARAN
Kesimpulan
Berdasarkan
hasil
analisa
dan
pembahasan, diperoleh kesimpulan yakni :
implementasi
arsitektur
basis
data
terdistribusi dengan konsep Homogenous
Distributed Database System menggunakan
Oracle XE 10g pada prototipe sistem
informasi simpan pinjam BMT ini dapat
mendistribusikan keseluruhan data ke server
basis
data
pusat
sebagai
server
cadangan/backup melalui sinkronasi data
yang dilakukan secara real time, serta
membantu juga mengoptimalkan kapasitas
Oracle XE 10g yang memiliki keterbatasan
ruang penyimpanan yaitu hanya 4 giga byte.
Saran
1.
Pada penelitian ini sistem informasi
simpan pinjam yang dibangun belum
begitu komplek, untuk pengembangan
selanjutnya penulis menyarankan agar
dibangun sebuah sistem informasi
simpan pinjam yang sudah komplek.
Contoh kasus dalam penelitian ini,
sistem informasi simpan pinjam yang
dibangun hanya membahas data
simpan pinjam nasabah.
2.
Untuk sinkronasi data pada penelitian
ini hanya bisa menangani proses (insert
dan update) data saja, untuk
pengembangan selanjutnya penulis
menyarankan agar semua proses
manipulasi data baik itu insert, update,
maupun delete data bisa diatasi.
DAFTAR PUSTAKA
Abdul Kadir, 2003, Konsep dan Tuntunan
Praktis Basis Data, Penerbit Andi,
Yogyakarta.
Coy, Steven P, Security Implication of the
Choice of Distributed Database
Management
System
Model:
Relational Vs Object Oriented.
University of Maryland.
DeWitt , David J dan Jim Gray, 1992,
Parallel Database Systems : The
Future of High
Performance
Database Processing. University Of
Wisconsin.
Fathansyah, 2002, Basis Data, Penerbit
Informatika, Bandung.
Hadiwinoto,
Christian,
Basis
Data
Terdistribusi (Distributed Database)
http://wargabasdat2009.wordpress.com
/2009/06/09/basis-data-terdistribusidistributed-database/, 30 Mei 2013.
Heryanto, Imam, 2003, Pemrograman
PL/SQL
ORACLE,
Penerbit
Informatika, Bandung.
Heryanto, Imam, dkk., 2010, Modul
Pemrograman WEB (HTML, PHP
&
MySql),
Penerbit
Modula,
Bandung.
Ibrahim , Hamidah,
Deriving Global
Integritas and Local Rules For
Distributed Database, Universitas
Putra
Malaysia
Fakultas
Ilmu
Komputer dan Teknologi Informasi,
43400 UPM Serdang.
Jogiyanto.H.M., 2005, Analisis Dan Desain
Sistem
Informasi
Pendekatan
Terstruktur Teori dan Praktek
Bisnis, Penerbit Andi, Yogyakarta.
Lin, Jun Lin, dkk A Survey of Distributed
Database Checkpointin, Southerm
Methodist University.
Marlinda, Linda, 2004, Sistem Basis Data,
Penerbit Andi, Yogyakarta.
Mitchell, Carolyn, 2004, Components of a
Distributed Database, Norfolk State
University.
Nugroho, Bunafit, 2004, PHP dan MySQL
: dengan editor Dreamweaver MX,
Penerbit Andi, Yogyakarta.
Oracle,
2006,
Oracle
Database
Administrator’s Guide, 10g Release
2 (10.2) B14231-02. USA: Oracle
Powell, Gavin, 2006, Beginning Database
Design, Wiley Publishing, Inc.
Indianapolis.
Download