Back to IF3140 Sistem Basis Data
Disaster Recovery: Database Dumps & Remote Backup
Questions/Cues
Apa beda System Crash vs Disk Failure?
Bagaimana recovery dari Disk Failure (nonvolatile loss)?
Apa itu Database Dump?
Bagaimana proses restore dari dump?
Apa tujuan Remote Backup System?
Apa itu High Availability (HA)?
Bagaimana arsitektur remote backup?
Bagaimana Transfer of Control (failover) bekerja?
Apa itu Hot-Spare?
Apa itu One-Safe? (Risiko?)
Apa itu Two-Very-Safe? (Risiko?)
Apa itu Two-Safe? (Kompromi?)
Reference Points
- Slides “12 - Recovery System - 2.pdf” (Slide 41-48)
Failure with Loss of Nonvolatile Storage
Sejauh ini kita berasumsi system crash (RAM hilang) dan nonvolatile (disk) aman.
Disk Failure adalah bencana (disaster) di mana nonvolatile storage itu sendiri hilang atau rusak.
Solusi: Kita harus memiliki copy (salinan) database di media penyimpanan lain (misal: tape, disk terpisah, cloud storage).
Metode: Database Dump (backup periodik).
Database Dump:
Prosedur di mana seluruh konten database disalin ke stable storage.
Proses Dump (Sederhana): Hentikan semua transaksi, lakukan checkpoint (memastikan data di disk konsisten), lalu salin seluruh file database.
Proses Recovery from Dump:
Restore: Salin database dari dump (backup) terakhir.
Roll Forward: Ambil arsip log yang disimpan sejak dump terakhir.
Lakukan REDO untuk semua transaksi yang telah commit sejak dump terakhir. (Tidak perlu
UNDOkarena dump adalah state yang sudah konsisten).Fuzzy Dump / Online Dump: Versi canggih di mana dump dapat dilakukan tanpa menghentikan transaksi, mirip fuzzy checkpoint.
Remote Backup Systems
Database Dump bagus untuk disaster recovery, tapi proses restore bisa lama (disebut low availability).
Tujuan: Menyediakan High Availability (HA), yaitu kemampuan sistem untuk terus beroperasi (atau cepat pulih) bahkan jika seluruh primary site (data center) hancur.
Arsitektur:
Primary Site: Server database utama yang aktif melayani transaksi.
Backup Site: Server di lokasi geografis berbeda yang pasif (standby).
Network: Primary terus-menerus mengirimkan log records (khususnya redo log) ke backup site melalui jaringan.
Proses Failover (Transfer of Control)
Deteksi Kegagalan:
Backup site harus tahu jika primary gagal. Ini biasanya menggunakan heart-beat message. Jika heart-beat dari primary berhenti, backup site mengasumsikan primary gagal.
Transfer of Control (Takeover):
Backup site mengambil alih tugas primary.
Backup site melakukan proses recovery menggunakan copy database-nya dan semua log yang telah diterimanya.
Ia melakukan
REDOpada transaksi yang commit danUNDOpada yang incomplete.Backup site kini menjadi primary baru dan siap menerima koneksi transaksi.
Hot-Spare Configuration (Slide 46):
Untuk takeover yang sangat cepat, backup site tidak hanya menerima log, tapi terus-menerus memproses/menerapkan REDO dari log tersebut begitu tiba.
Saat primary gagal, backup site (yang datanya sudah up-to-date) hanya perlu melakukan UNDO pada transaksi incomplete terakhir, membuatnya siap dalam hitungan detik.
Tingkat Durability vs. Ketersediaan (Slide 47)
Ini adalah trade-off krusial: Kapan transaksi di primary boleh dianggap
commit?
One-Safe: Commit dianggap selesai begitu log ditulis di primary site.
(+) Cepat / Ketersediaan Tinggi: Transaksi tidak perlu menunggu jaringan ke backup.
(-) Risiko Kehilangan Data: Jika primary crash setelah
committapi sebelum log-nya terkirim ke backup, transaksi itu akan hilang selamanya (backup tidak pernah tahu).Two-Very-Safe (Synchronous): Commit dianggap selesai HANYA JIKA log ditulis di primary DAN backup site.
(+) Durabilitas Maksimum: Dijamin tidak ada data hilang.
(-) Lambat / Ketersediaan Rendah: Jika jaringan lambat,
commitjadi lambat. Jika backup site atau jaringan down, primary site tidak bisacommit(berhenti total).Two-Safe (Kompromi / Hybrid): Solusi terbaik untuk menyeimbangkan keduanya.
Jika primary dan backup up, sistem berjalan di mode Two-Very-Safe.
Jika primary up tapi backup (atau jaringan) down, primary otomatis beralih ke mode One-Safe agar tetap bisa beroperasi.
Sistem akan sync ulang saat backup hidup kembali.
Recovery dari disaster (kehilangan disk) memerlukan Database Dump (backup), yang di-restore dan di-roll forward (REDO) dengan arsip log. Untuk High Availability, Remote Backup System digunakan, di mana primary site mengirim log ke backup site. Konfigurasi Hot-Spare (menerapkan log terus-menerus) memungkinkan failover cepat. Terdapat trade-off durabilitas: One-Safe cepat tapi berisiko kehilangan data, Two-Very-Safe aman tapi lambat dan rentan down, sedangkan Two-Safe menawarkan kompromi terbaik antara keduanya.
Additional Information
Pendalaman Teknis: RPO dan RTO
Pilihan strategi backup dan recovery sangat bergantung pada dua metrik bisnis:
RPO (Recovery Point Objective): Berapa banyak data yang boleh hilang?
Jika RPO = 0 (nol kehilangan data), Anda wajib menggunakan Two-Very-Safe (Replikasi Sinkron).
Jika RPO = 5 menit, Anda bisa menggunakan One-Safe (Replikasi Asinkron) selama lag (jeda) replikasi dijamin di bawah 5 menit.
RTO (Recovery Time Objective): Berapa lama sistem boleh mati (down) saat terjadi bencana?
Jika RTO = 5 detik, Anda wajib menggunakan Hot-Spare dengan failover otomatis.
Jika RTO = 4 jam, Anda mungkin masih bisa menggunakan restore manual dari database dump (tergantung ukuran database).
Pendalaman Teknis: Replikasi Sinkron vs. Asinkron
Konsep durability di slide 47 adalah nama lain untuk mode replikasi:
Synchronous Replication (Two-Very-Safe):
COMMITdi primary akan menunggu (wait) konfirmasiWRITEdari backup sebelum mengirim balasan sukses ke klien. Ini menjamin data RPO=0, tapi menambah latensi pada setiap transaksiCOMMIT.Asynchronous Replication (One-Safe):
COMMITdi primary tidak menunggu backup. Primary mengirim log ke backup “sebisanya”. Selalu ada replication lag (jeda waktu). Jika primary gagal, data dalam lag itu akan hilang.Sumber & Referensi Lanjutan:
Buku: Silberschatz, Korth, Sudarshan, “Database System Concepts”, 7th Ed, Chapter 19.9.
Konsep: “High Availability (HA) vs. Disaster Recovery (DR)”, “RPO vs RTO”, “Synchronous vs. Asynchronous Replication”.