Total Pageviews

Monday, December 30, 2013

TUGAS AKHIR SISTEM BASIS DATA A11.11.06382

REVIEW BASIS DATA : THEME 1 C-8 RECOVERY

sumber : http://www.upriss.org.uk/db/slides/recovery.pdf

             http://www.databasejournal.com/features/db2/database-backup-and-recovery-for-big-data.html




Mekanisme recovery memiliki dua bagian utama, yaitu:

1. Aksi-aksi yang ditempuh selama transaksi berjalan normal untuk menjamin adanya informasi yang memadai yang kelak dibutuhkan oleh mekanisme recovery.

2. Aksi-aksi yang ditempuh setelah terjadinya kerusakan/ kegagalan sistem yang dilakukan untuk memulihkan isi basis data ke suatu keadaan yang menjamin konsistensi basis data, keatomikan, dan ketahanan transaksi.

Skema Mekanisme Recovery

   Dengan asumsi ruang disk yang dialokasikan untuk basis data tidak mengalami kerusakan, maka ada 3 pilihan skema untuk menjalankan mekanisme recovery secara otomatis begitu kerusakan atau kegagalan sistem telah terjadi. Ketiga skema pilihan itu adalah:

1. File Log dengan Penundaan Pengubahan (Incremental Log With Defered Update)
2. File Log dengan Pengubahan langsung (Incremental Log With Immediate Updates)
3. Page Bayangan (Shadow Paging), yang memerlukan akses ke disk yang lebih sedikit.


Recovery untuk Transaksi Konkuren

a. Interaksi dengan pengendalian konkurensi

Skema recovery ini akan banyak tergantung pada skema pengendalian konkurensi yang digunakan. Untuk menjalankan proses roll back terhadap transaksi yang gagal/ batal,kita harus membatalkan perubahan yang telah dilakukan oleh transaksi tersebut.

Jika sebuah transaksi T telah mengubah sebuah item data Q, tidak boleh ada transaksi lain yang boleh mengubah item data yang sama hingga T telah di-commit ataupun di-roll back. Kita dapat menjamin hal ini dengan memanfaatkan Loking Protokol Dua Fase yang Ketat, yang menerapkan penguncian dengan mode exclusive hingga akhir transaksi.

b. Restart recovery

Pada saat sistem melakukan pemulihan data, ia membentuk dua buah daftar. Yang pertama adalah daftar undo (undo-list) yang terdiri atas transaksi-transaksi yang harus dikenai operasi undo dan daftar redo (redo-list) yang berisi transaksi-transaksi yang harus dikenai operasi redo.

Kedua daftar ini dibentuk untuk proses recovery sebagai berikut. Mula-mula kedua daftar tersebut kosong. Kita melakukan penelusuran mundur terhadap file log, memeriksa record hingga ditemukannya <checkpoint>:

Untuk setiap record yang ditemukan dalam bentuk <Ti commit>, kita tambahkan Ti dalam redo-list.

Untuk setiap record yang ditemukan dalam bentuk <Ti start>, jika Ti tidak ada dalam redo-list, kita tambahkan Ti dalam undo-list.