Kamis, 04 Februari 2010

Implementasi Sistem Database Terdistribusi Pada MySQL

Secara definisi replikasi memiliki pengertian sebagai suatu proses mencopy atau mentransfer data dari suatu database ke database lain yang tersimpan pada komputer berbeda.

Pada umumnya MySQL dipergunakan secara massal sebagai Database yang cukup handal dalam menangani sistem database terpusat, seperti kebanyakan sistem database yang digunakan untuk web site, content management system, dan lain-lain. Bahkan hampir seluruh penyedia layanan hosting menyertakan dukungan produk MySQL untuk kelengkapan service-nya.
Penggunaan MySQL untuk mendukung proses replikasi database pada saat artikel ini ditulis masih sangat jarang ditemui. Implementasi sistem database terdistribusi kebanyakan masih berkiblat pada software-software dengan bandrol yang tinggi seperti Oracle, SQL Server, IBM DB2 dan lain sebagainya.

MySQL dalam hal ini tentunya tidak mau ketinggalan. Mulai versi 5.0 MySQL sudah mendukung sistem replikasi yang mana sebuah database server yang berfungsi sebagai master dapat tereplikasi datanya ke dalam satu atau lebih database server yang difungsikan sebagai slave.

Database terdistribusi merupakan sebuah database yang berada dibawah kontrol DBMS sentral dimana tempat penyimpanan tidak terattach ke suatu cpu tetapi mungkin disimpan di multiple komputer dalam lokasi fisik yang sama atau disebarkan melalui jaringan komputer yang saling terkoneksi.

Kumpulan dari data dapat didistribusikan ke multiple lokasi fisik. database terdistribusi merupakan database yang didistribusikan ke partisi-partisi/ fragmen2 terpisah. setiap partisi dari database tersebut mungkin di replikasi (seperti RAID).
Disamping replikasi database, terdapat masih banyak lagi desain teknologi untuk database terdistribusi. contohnya autonomy lokal, sinkronisasi dan asinkronisasi database terdistribusi.
Kelebihan :
  1. merefleksikan struktur organisasi : setiap fragmen dilokasikan didepartemen yang berelasi
  2. otonomi lokal : setiap departemen dapat mengontrol data
  3. ketersediaan : kesalahan dalam satu fragmen tidak akan mempengaruhi database keseluruhan
  4. performansi : adanya balancing database didalam server
  5. modularitas : sistem dapat dimodifikasi tanpa mempengaruhi modul lain
Kelemahan :
  1. kompleksitas : adanya pekerjaan ekstra untuk memaintain multi sistem yang terpisah
  2. ekonomis : semakin tinggi kompleksitas, infrastruktur semakin ekstensif.
  3. keamanan harus terjamin

Tidak ada komentar:

Posting Komentar