Pertanyaan:
Cari
salah satu distributed relational database management sistem (DRDMS) –oracle, ibm db/2, sql server,
mySQL, dll – dan buat tulisan bagaimana mereka men support database
terdistribusi (fragmentasi vertikal, horisontal, replikasi, sinkronisasi, dll)
dalam DRDMS tersebut.
Jawaban:
Database
Terdistribusi bisa
diartikan sebagai kumpulan dari data-data dengan berbagai bagian yang ditangani
DBMS (Data Base Management System) secara terpisah dan berjalan pada
sistem komputer. Semua komputer saling terhubung dan setiapsistem mempunyai hak
kemampuan memproses untuk melayani permintaan lokal. Setiap sistem berpartisi
pasibaik dalam melaksanakan satu atau lebih permintaan.Beberapa permintaan
memerlukan data tidak hanya dari satu tempat melainkan beberapa tempat atau
lebih.Database asli yang terdistribusi itu sendiri tidak terlihat oleh
user dan transparansi dari data tersebut dapat ditunjukkan dalam berbagai cara.
Distribusi
data dalam DBMS ada 2 bentuk :
a. Data partitioning
(data yang terpisah-pisah)
b. Data replication
(replikasi data)
Kedua
bentuk distribusi data di atas merupakan transparan artinya tampak nyata oleh
user dalam system distribusi database. Pada database terdistribusi
(distributed database), data disimpan pada beberapa tempat (site),
setiap tempat diatur dengan suatu DBMS (Database Management System) yang
dapat berjalan secara independent. Berikut adalah contoh arsitektur dari DBMS
itu sendiri.
a.
Client-Server
b.
Collaboration Server
c. Fragmentasi
d.
Replikasi
Relational Database Management System
(RDMS) yaitu sistem pengelolaan database yang bersifat transparan terhadap
penggunanya, menggunakan jaringan computer sebagai proses terdistribusi
databasenya, dan dibuat secara terdistribusi.
Basis data Oracle adalah basis data relasional yang terdiri dari kumpulan
data dalam suatu sistem manajemen basis data RDBMS. Perusahaan perangkat lunak Oracle memasarkan jenis basis data ini
untuk bermacam-macam aplikasi yang bisa berjalan pada banyak jenis dan merk perangkat keras komputer (platform).
Basis data Oracle ini pertama kali
dikembangkan oleh Larry Ellison, Bob Miner dan Ed Oates lewat perusahaan konsultasinya bernama Software Development Laboratories
(SDL) pada tahun 1977. Pada tahun 1983, perusahaan ini berubah nama menjadi
Oracle Corporation sampai sekarang. Oracle memiliki beberapa pendukung RDBMS,
diantaranya replikasi dan fragmentasi.
Di oracle, Istilah
replikasi dikenal sebagai suatu operasi dimana bisa menyalin dan memelihara
obyek-obyek database dalam sejumlah database yang dimiliki suatu sistem
distribusi. Karena replikasi tergantung pada teknologi basis data distribusi,
database replikasi menawarkan keuntungan aplikasi yang tidak tersedia pada
lingkungan yang murni database terdistribusi. Biasanya, replikasi dipakai untuk
meningkatkan kinerja database lokal dan melindungi aplikasi akibat akses
alternatif ke database. Contohnya, suatu aplikasi biasanya mengakses database
lokal daripada mengakses data pada server remote untuk meminimalkan jaringan
traffic dan untuk menghasilkan kinerja yang maksimal. Selanjutnya, aplikasi
tersebut bisa terus berfungsi jika server lokal mengalami kegagalan, tetapi
server lainnya yang telah mereplikasi data tetap berfungsi.
Solusi replikasi
dari Oracle di antaranya adalah Oracle Stream dan Advanced Replication.
Advanced Replication meliputi Multimaster, Materialized View, dan hybrid
(antara Multimaster replication dan materialized view). Istilah Materialized
View (MV) dipakai Oracle sejak versi 9i. Di versi 8i ke bawah di sebut sebagai snapshot.
MV merupakan View yang dimaterialisasi. View konvensional tidak menyimpan data,
hanya menyimpan definisi (nama kolom, table) sementara data secara fisik masih
ada di tabel source-nya. MV dengan database link biasanya digunakan untuk
replikasi (replication) dan
distribusi data (distributed Database).
Sementara MV dengan multi join (ke banyak tabel) digunakan untuk data warehouse.
Ada banyak jenis
fragmentasi database Oracle. Ada yang berbahaya dan ada juga yang tidak. Salah
satu contohnya adalah Tablespace Freespace Fragmentasi (TFF), yaitu salah satu
jenis fragmentasi termudah untuk mendeteksi dan dapat digunakan untuk membuat
laporan dan grafik sederhana. Ada dua jenis dasar TFF, Bubble dan Honeycombs.
Bubbles adalah freespace yang berdiri sendiri, sedangkan Honeycombs adalah
gabungan beberapa freespace Bubbles yang saling berdekatan.
Setiap perubahan yang ada pada
suatu server database akan berpengaruh pada server database yang lain, yang
terhubung pada suatu system database terdistribusi. Mekanisme sinkronisasi
menggunakan Oracle mirip
seperti Firebird yaitu sebagai berikut :
1.
Menggunakan suatu stored procedure. Fitur ini digunakan untuk
menangani proses sinkronisasi.
2.
Menggunakan trigger. Hal ini digunakan apabila skema yang ada pada
kedua buah tabel yang berbeda database tersebut sama, dan proses sinkronisasi
dilakukan secara realtime, maka dapat digunakan database trigger. Database
trigger ini akan memproses segala perubahan data yang terjadi pada suatu tabel.
3.
Menggunakan paket DBMS_COMPARISON, digunakan utnk menyediakan
fungsi – fungsi dan prosedur – prosedur yang digunakan untuk sinkronisasi data.
Prosedur ini memungkinkan pendeteksian perbedaan data pada dua buah tabel, dan
melakukan proses replikasi apabila diinginkan.
Langkah- langkah fragmentasi pada oracle :
1.
Siapkan 2 atau
lebih komputer yang akan dihubungkan.
2.
Masuk ke menu
database homepage.
3.
Login sebagai
sys pada masing-masing computer.
4.
Buat user pada
computer 1, klik menu administration-database user-create.
5.
Set privilege
yang memungkinkan seperti create table, create view, create database link.
6.
Logout user sys,
masuk kembali dengan user yang telah dibuat.
7.
Klik menu object browser-create-database
link untuk mmembuat database link (database link adalah link untuk koneksi ke
computer remote). Isikan parameter - parameter berikut untuk konfigurasi:
Pada computer 1:
Database
link name : kekomp2
Connect
to schema : komp2
Password
: password komp2
Remote
hostname : alamat IP computer 2
Remote
host port : 1521
Service
name : ORCL
Pada
computer 2:
Database
link name : kekomp1
Connect
to schema : komp1
Password : password komp1
Remote
hostname : alamat IP computer 1
Remote
host port : 1521
Service
name : ORCL
8. Kemudian
klik button next - create - test – finish.
9. Database
telah siap di fragmentasi.
Oracle menyediakan suatu
mekanisme untuk melakukan sinkronisasi data pada database terdistribusi. Setiap perubahan yang ada pada suatu
server database akan berpengaruh kepada server database yang lain, yang terhubung pada suatu sistem
database terdistribusi.
Mekanisme-mekanisme yang bisa dilakukan untuk proses sinkronisasi pada
database oracle antara lain adalah :
1. Menggunakan suatu stored
procedure.
Oracle menyediakan suatu fitur
stored procedure yang dapat digunakan untuk menangani proses sinkronisasi. Stored procedure ini
dapat dibuat oleh database developer sesuai dengan kebutuhan
data dan proses sinkronisasi yang berjalan pada dua buah server yang berbeda tersebut
2. Menggunakan trigger
Apabila skema yang ada pada kedua
buah table yang berbeda database tersebut sama, dan proses sinkronisasi
dilakukan secara realtime, maka dapat digunakan database trigger. Database trigger ini akan memproses segala
perubahan data (insert, update, delete) yang terjadi pada suatu
table, sehingga secara realtime akan berpengaruh pada table yang lain.
3. Menggunakan oracle replication
Oracle menyediakan suatu fitur
replikasi database. Replikasi merupakan suatu proses untuk membuat duplikat atau replika dari suatu
table data yang ada pada database.
4. Menggunakan oracle stream dan
golden gate
Oracle stream merupakan suatu
fitur yang ada pada oracle yang memungkinkan seorang user untuk mengontrol informasi, penyebaran
data, transaksi, dan event di dalam suatu aliran data antara
database yang satu dengan database yang lain.
5. Menggunakan paket DBMS_COMPARISON
pada oracle
Merupakan suatu paket yang
disediakan oleh database oracle, untuk menyediakan fungsi-fungsi dan
prosedur-prosedur yang digunakan untuk sinkronisasi data. Prosedur ini memungkinkan pendeteksian perbedaan
data pada dua buah table, dan melakukan proses replikasi
apabila diinginkan.
Kesimpulan:
kesimpulannya adalah Database terdistribusi membantu
mendukung teknologi dalam replikasi
dan fragmentasi antar database,
dimana perusahaan menggunakan database terdistribusi
karena terdapat beberapa factor, yaitu perbedaan fungi database, dikarenakan
jarak perusahaan yang jauh antara pusat dan cabang, serta perbedaan dalam
aplikasi yang dipergunakan.
Sumber Referensi
Citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1...
distributed relational database management sistem (DRDMS) , support database terdistribusi dalam DRDMS