Replikasi Database: Pengenalan Sebuah Konsep


Belakangan aku sibuk bermain game sehingga tidak banyak materi IT yang aku pelajari beberapa minggu terakhir ini. Satu game yang paling menghabiskan waktu adalah Heroes V. Sebagai tipe game turn-based, seri Heroes dapat membuat satu hari serasa seperti satu jam. Sebagai sampingan, aku juga memainkan Marvel Ultimate Alliance versi PSP. Walaupun grafiknya agak jelek, tapi gameplay-nya tetap seru. Ingin sekali rasanya memainkan game PC terbaru dengan kualitas grafis DX10, tapi saat ini masih belum memiliki graphic card generasi terbarušŸ˜¦

Selain bermain game, aku juga rutin menghabiskan waktu di hari Sabtu untuk nonton. Aku percaya pada konsep “load balancing”. Untuk mendapatkan hasil paling optimal dalam hidup-ku, aku selalu menjaga tingkat stress dan tingkat fun agar tetap balancešŸ˜‰ Btw, bicara soal load balancing, aku jadi teringat konsep replikasi yang baru saja aku baca.

Salah satu cara untuk menciptakan load balancing dalam database Oracle 10g adalah dengan menggunakan replikasi database dan clustering. Jika clustering mampu menciptakan read dan write balancing, maka replikasi hanya mampu mewujudkan read balancing saja. Lalu kenapa harus memakai replikasi? Misalnya aku punya tabel “produk” di sebuah database di Jakarta. Lalu kantor cabang di Surabaya, Bali, dan 24 propinsi lainnya juga masing-masing punya tabel “produk” di database mereka. Dalam hal ini, untuk menciptakan load balancing, aku tidak bisa melakukan clustering karena database berada pada lokasi fisik yang berbeda, selain itu mereka dapat saja berjalan di platform yang berbeda. Dalam kasus ini, replikasi adalah pilihan yang tepat.

Model replikasi yang cocok untuk kasus di atas adalah multimaster replication. Dalam hal ini, semua database adalah master dan perubahan pada satu database akan disampaikan ke database-database lainnya yang berpartisipasi. Proses replikasi untuk multimaster replication dapat berupa synchronous replication dan asynchronous replication. Default-nya adalah asynchronous replication. Seperti biasanya, dengan synchronous replication, kita bisa mendapatkan konsistensi data pada saat ini juga, tetapi dengan mengorbankan performance (network traffic dan system resources). Asynchronous replication lebih “hemat bensin”, tapi ada ‘delay’ sebelum hasil manipulasi DML dari satu master ke master-master lainnya.

Replikasi bekerja dengan bantuan internal trigger. Setiap kali perubahan tabel akibat DML di-commit, trigger akan dipicu. Jika proses replikasi berlangsung secara synchronous, maka Oracle akan segera mengumumkan perubahan melalui Remote Procedure Call (RPC) ke master-master lainnya yang terhubung (dalam database link). Sementara jika proses replikasi-nya berlangsung asynchronous, maka perubahan akibat DML akan ditaruh ke queue terlebih dahulu.

Perihal Solid Snake
I'm nothing...

2 Responses to Replikasi Database: Pengenalan Sebuah Konsep

  1. dodolipet mengatakan:

    udah gitu doang?? ngga ada tutorialnya atau apa gitu..

    • Solid Snake mengatakan:

      Seperti judulnya, saya hanya membaca konsep dan tidak pernah saya praktekkan karena pada saat itu (4 tahun lalu), saya tidak memiliki PC yang cukup kuat untuk menjalankan lebih dari 1 instance virtual machine Oracle DB secara bersamaan.. Silahkan baca dokumentasi Oracle DB di bagian DBA Essentials, 2 Day + Data Replication and Integration Guide untuk tutorial singkat. Disana ada link ke penjelasan detail, seperti Oracle DB Advanced Replication dan Oracle Streams Replication Administrator’s Guide.

Apa komentar Anda?

Please log in using one of these methods to post your comment:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: