Database Replication
Konsep Dasar Replication
Replikasi adalah suatu teknik untuk melakukan copy dan pendistribusian data dan objek-objek database dari satu database ke database lain dan melaksanakan sinkronisasi antara database sehingga konsistensi data dapat terjamin. Dengan menggunakan teknik replikasi ini, data dapat didistribusikan ke lokasi yang berbeda melalui koneksi jaringan lokal maupun internet. Replikasi juga memungkinkan untuk mendukung kinerja aplikasi, penyebaran data fisik sesuai dengan penggunaannya, seperti pemrosesan transaksi online dan DSS (Desiscion Support System) atau pemrosessan database terdistribusi melalui beberapa server.
Selain itu ada yang menyebutkan bahwa Replikasi adalah proses menyalin dan memelihara objek database dalam beberapa database yang membentuk suatu sistem database terdistribusi. Replikasi dapat meningkatkan kinerja dan melindungi ketersediaan aplikasi karena data pilihan alternatif akses ada. Sebagai contoh, sebuah aplikasi biasanya dapat mengakses database lokal daripada server jauh untuk meminimalkan lalu lintas jaringan dan mencapai kinerja maksimum. Selanjutnya, aplikasi dapat terus berfungsi jika server lokal mengalami kegagalan, tetapi server lain dengan data direplikasi tetap dapat diakses.
Dengan replication dasar, replika data memberikan akses read-only ke tabel data yang berasal dari sebuah situs (master) primer. Aplikasi dapat query data dari replika data lokal untuk menghindari akses jaringan terlepas dari ketersediaan jaringan.Namun, aplikasi di seluruh sistem harus mengakses data pada situs utama ketika pembaruan diperlukan.
Keuntungan replication tergantung dari jenis replikasi tetapi pada umumnya replikasi mendukung ketersediaan data setiap waktu dan dimanapun diperlukan. Adapun keuntungan lainnya adalah :
- Memungkinkan beberapa lokasi menyimpan data yang sama. Hal ini sangat berguna pada saat lokasi-lokasi tersebut membutuhkan data yang sama atau memerlukan server yang terpisah dalam pembuatan aplikasi laporan.
- Aplikasi transaksi online terpisah dari aplikasi pembacaan seperti proses analisis database secara online, data smarts atau data warehouse.
- Memungkinkan otonomi yang besar. Pengguna dapat bekerja dengan meng-copy data pada saat tidak terkoneksi kemudian melakukan perubahan untuk dibuat database baru pada saat terkoneksi.
- Data dapat ditampilkan seperti layaknya melihat data tersebut dengan menggunakan aplikasi berbasis Web.
- Meningkatkan kinerja pembacaan.
- Membawa data mendekati lokasi individu atau kelompok pengguna. Hal ini akan membantu mengurangi masalah karena modifikasi data dan pemrosesan query yang dilakukan oleh banyak pengguna karena data dapat didistribusikan melalui jaringan dan data dapat dibagi berdasarkan kebutuhan masing-masing unit atau pengguna.
- Penggunaan replikasi sebagai bagian dari strategi standby server.
Jenis-jenis Replicatiom
1. Snapshot replication
Mendistribusikan data yang dapat dilihat pada saat tertentu tanpa melakukan update. Biasanya digunakan pada saat memerlukan tampilan data seperti : daftar harga, katalog, data yang digunakan untuk pengambilan keputusan. Data-data ini sifatnya hanya ‘read only’. Replikasi ini membantu pada saat :
• data sebagian besar statis dan tidak sering berubah
• dapat menerima copy data yang telah melewati batas waktu yang ditentukan
• datanya sedikit
2. Merge replication
Merge replication memungkinkan pengguna bekerja dan merubah data sesuai dengan wewenangnya. Pada saat server tidak dikoneksikan ke seluruh lokasi dalam topologi, replikasi merubah ke nilai data yang sama.
3. Transactional Replication
Pengguna mendapatkan salinan lengkap dari database awal dan kemudian mendapatkan update periodik sebagai perubahan data.
Multi-master replikasi, dimana modifikasi dapat ditenderkan ke server database, dan kemudian mengalir melalui ke server database jauh, sering disukai. Namun, menetapkan biaya jauh lebih besar dan keruwetan yang mungkin membuatnya tidak layak dalam beberapa keadaan. Sengketa universal yang ada dalam multi-master replikasi transaksional menghindari ketidakkonsistenan atau resolusi. Kebanyakan sistem replikasi sinkron atau ingin lakukan menghindari inkonsistensi, sementara sistem asynchronous harus melakukan resolusi inkonsistensi.Resolusi seperti inkonsistensi yang mungkin didasarkan pada timestamp transaksi, pada tangga dari server sumber atau dengan alasan yang jauh lebih rumit, yang memutuskan setiap waktu pada semua server.
Replikasi database ternyata menjadi rumit ketika meningkat dalam ukuran dan besarnya. Biasanya, meningkatkan berkaitan dengan dua dimensi; horizontal dan vertikal. Meningkatkan Horisontal memiliki salinan data tambahan, meningkatkan vertikal memiliki salinan data yang terletak jarak jauh. Masalah hamil dengan peningkatan horisontal dapat dikurangi dengan sebuah protokol akses multi-layer multi-view. Peningkatan vertikal strip kesulitan sedikit karena internet kehandalan dan kinerja menjadi lebih baik.
Download PPT here -> Database-Replication