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.