Disini
saya akan menjelaskan tentang Distributed Database (DDB) atau Database
Terdistribusi dari beberapa sumber yg saya baca. Database terdistribusi adalah
sebuah database logic yang tersimpan secara fisik pada beberapa
komputer yang terdapat pada beberapa lokasi dengan terkoneksi pada sebuah
jaringan. Jaringan tersebut harus bisa menyediakan akses bagi user untuk
melakukan sharing data. Terdapat dua macam sifat dari database terdistribusi
yaitu Heterogenous dan Homogenous.Homogenous artinya suatu database
terdistribusi dimana data di distribusikan pada beberapa komputer dengan
menggunakan DBMS(database management system) yang sama. DBMS digunakan pada
database terdistribusi untuk melakukan koordinasi data pada beberapa node.
SedangkanHeterogenous adalah kebalikan dari Homogenous dimana data di
sebarkan dengan menggunakan DBMS yang berbeda.
Tujuan
utama dari database terdistribusi menyediakan kemudahan untuk mengakses data
bagi user pada banyak lokasi yang berjauhan. Untuk mencapai tujuan ini system
dari database terdistribusi harus menyediakan apa yang di sebut location
transparency yang artinya seorang user dalam mengakses data tidak akan
terbatas pada tempat, di manapun dia berada user dapat mengakases data. Tujuan
kedua dari database terdistribusi adalah local autonomy, yaitu kemampuan
untuk mengatur database local dan mengoperasikannya secara sendiri –
sendiri jika terjadi error atau kerusakan pada koneksi antar komputer.
Ada
dua macam teknologi yang di gunakan untuk membangun sebuah database
terditribusi. Yang pertama adalah synchronous distributed database technology
dimana data yang terhubung pada suatu jaringan akan selalu ter-update sehingga
user pada beberapa tempat dapat mengakses data. Sedangkan teknologi yang
lain yaitu asynchronous distributed database technology di mana
system akan menyediakan suatu kopi dari replikasi data pada beberapa node
sehingga local server dapat mengakses data tanpa harus keluar dari jaringan
lokal. Metode yang biasa di gunakan yaitu Replication serta
circular Replication.
Replikasi
database
Adapun salah satu cara untuk mendistribusikan
database adalah dengan replikasi. Ada 5 keuntungan dari replikasi data yaitu :
1. Reliability jika sebuah
sistem yang menyimpan suatu database mengalami kerusakan maka sistem lain dapat
menemukan kopi dari database yang di maksud pada node yang lain yang tidak
mengalami kerusakan system karena database di simpan pada beberapa node.
2. Fast response setiap situs mempunyai kopi dari
database sehingga proses query data dapat berjalan lebih cepat.
3. Node decoupling setiap
transaksi data bisa di proses tanpa koordinasi antar jaringan sehingga jika
sebuah node sibuk atau mengalami kesalahan maka akan ada sistem tersendiri yang
menangani koordinas antar data.
4. Reduced network trafic at
prime time kemampuan sistem untuk memindahkan transaksi database pada jaringan
yang sedang tidak sibuk atau berfungsi dengan tidak sebagaimana mestinya.
Circular replication
Circular
replication mengatasi kelemahan dalam replikasi data. Bila dalam replikasi
biasa replikasi data hanya berjalan pada satu arah, maka pada circular
replication replikasi data akan berlangsung secara circular .
Dalam
Circular Replication, juga di sebut
replikasi multi master, replikasi data tidak hanya berjalan satu arah, tapi ke
semua simpul sehingga database pada semua simpul akan tetap sama. Tapi
replikasi tidak akan terjadi pada simpul yang melakukan replikasi itu sendiri,
hal ini di tangani oleh sintaks ‘replicate-same-server = 0’ pada file
konfigurasi mysql.
Hal – hal yang penting dalam pengaturan circular
replication :
• Server-id : pada masing – masing simpul,
server-id harus unik
• Replicate-do-db : bagi server slave
perintah ini digunakan untuk mendapatkan database yang di replikasi
• Binlog-do-db : bagi master perintah
ini di gunakan untuk mengirim database yang di replikasikan pada slave.
• replicate-same-server-id : di gunakan
bagi semua node sebagai tanda untuk tidak mereplikasi database pada diri
mereka sendiri
• auto_increment_increment : mengontrol
nilai iterasi pada setiap pelaksanaan nilai AUTO_INCREMENT
• auto_increment_offset : nilai awal dari
nilai kolom AUTO_INCREMENT
• master-host : Nomor IP dari master
• master-user : user yang di buat pada
master yang di gunakan oleh slave untuk melakukan replikasi
• master-passsword : password yang
mengijinkan slave untuk melakukan replikasi data.
Hmmmm... kira-kira seperti itulah gambaran dasar
dari sistem Database Terdistribusi. Yang menjadi tantangan adalah ketika salah
satu sistem down, bagaimana sistem tersebut dapat saling menggantikan
atau membackup database yang sedang down tanpa mennyebabkan duplikasi data yang
sama
Keuntungan Database
Terdistribusi
Pengawasan distribusi dan pengambilan data
Jika beberpa site yg berbeda dihubungkan seorang
pemakai yg berada pada satu site dapat mengakses data pada site lain.
Contoh : sistem distribusi pada sebuah bank
memungkinkan seorang pemakai pada salah satu cabang dapat mengakses data cabang
lain.
Reliability dan availability
Sistem distribusi dapat terus menerus berfungsi
dalam menghadapi kegagalan dari site sendiri atau mata rantai komunikasi antar
site.
Kecepatan pemrosesan query
Contoh : jika site-site gagal dalam sebuah sistem
terdistribusi site lain dapat melanjutkan operasi jika data telah direplikasi
pada beberapa site.
Otonomi lokal
Pendistribusian sistem mengijinkan sekelompok
individu dalam sebuah perusahaan utk melatih pengawasan lokal melalui data
mereka sendiri. Dengan kemampuan ini dapat mengurangi ketergantungan pada pusat
pemrosesan.
Efisiensi dan fleksibe
Data dalam sistem distribusi dapat disimpan dekat
dgn titik diman data tersebut dipergunakan. Data dapat secara dinamik bergerak
atau disain atau salinan dapat dihapus.
Kerugian Database
Terdistribusi
Harga software mahal
Hal ini disebabkan sangat sulit utk membuat
sistem database distribusi.
Kemungkinan kesalahan lbh besar
Site-site beroperasi secara paralel sehingga lbh
sulit utk menjamin kebenaran dan algoritma. Ada kesalahan mungkin tak dapat
diketahui.
Biaya pemrosesan tinggi
Perubahan pesan dan penambahan perhitungan
dibutuhkan utk mencapai koordinasi antar site.
Sekian dulu teman-teman semoga artikel ini bisa
bermanfaat buat kita semua.
Tidak ada komentar:
Posting Komentar