TUGAS DATABASE TERDISTRIBUSI SIFAT : INDIVIDU MATERI : DISTRIBUTED DATABASE RECOVERY NAMA : SITI LU’LU’UL KHOIRIYAH NIM : 08560369

KELAS : B 1. Carilah beberapa kasus nyata (real case), yang menyebabkan terjadinya database failure ketika data disimpan ke dalam database. Jawab :    System error,output yang dihasilkan tidak betul dan sistem databasenya sendiri akan memasuki suatu kondisi tidak konsisten, seperti deadlock. Disk crash,kegagalan fungsi perangkat keras,menyebabakan informasi yang ada di disk hilang. Statement Failure, terjadi ketika ada kegagalan logis dalam penanganan pernyataan dalam program Oracle. Sebagai contoh, menanggung semua extent tabel (dengan kata lain, jumlah luasan yang ditentukan pada parameter MAXEXTENTS pernyataan CREATE TABLE) dialokasikan, dan benar-benar diisi dengan data; tabel benar-benar penuh. Sebuah pernyataan yang valid INSERT tidak dapat menyisipkan baris karena tidak ada ruang yang tersedia. Oleh karena itu, jika diterbitkan, pernyataan itu gagal.

Network Failure, terjadi karena menginterupsi eksekusi normal dari suatu aplikasi client dan menyebabkan kegagalan proses yang terjadi. Dalam hal ini, latar belakang proses PMON Oracle mendeteksi dan menyelesaikan proses server dibatalkan untuk proses pengguna terputus, seperti yang dijelaskan di bagian sebelumnya

2. Jelaskan secara detail bagaimana mekanisme commit protocol bekerja di dalam DBMS, kalau perlu tunjukan state diagramnya Jawab :  phase commit merupakan operasi dimana satu set perubahan yang nyata juga diterapkan sebagai operasi tunggal. Jika perubahan yang diterapkan maka commit atomis dikatakan telah berhasil. Jika ada kegagalan sebelum commit atomis dapat diselesaikan maka semua perubahan selesai maka semua perubahan maka semua perubahan diselesaikan dalam commit atomis reserved. Hal

ini memastikan bahwa sistem selalu ditinggalkan dalam keadaan konsisten. Properti kunci lainnya berasal isolasi mereka sebagai operasi

setiap transaksi di backup. 3. Jawab : Type database log :  Update Log Record catatan sebuah update (perubahan) ke database. Teknik ini lebih mudah dilakukan di sistem interaktif karena aktifitas manusia relatif lebih lambat dibanding pencatatan transaksi sehingga tidak mempengaruhi waktu tanggap Bila terjadi kegagalan maka pemulihan memanfaatkan backup terakhir dan transaction log.atomic. Apakah yang dimaksud dengan Transaction Log. kemudian jelaskan data-data yang disimpan di dalam transaction log. mencakup : PageID Length and Offset Before and After Images . dan jelaskan bagaimana transaction log bekerja Jawab : Transaction Log merupakan suatu critical componen dari database untuk memperkecil data/informasi yang hilang dengan malakukan pencatatan pada setiap transaksi. Pemulihan dilakukan dengan cara sistem menjalankan setiap transaksi di transaction log terhadap backup terakhir. Kehilangan data dikurangi yaitu hanya satu transaksi terakhir yang tidak tercatat yang hilang musnah. seterusnya sampai transaksi terakhir yang tercatat. Transaction log bekerja: Setiap transaksi segera dicatat (log) menghasilkan transaction log. Jelaskan struktur data dari Transaction Log. Isolasi memastikan bahwa hanya satu commit atomic diproses pada suatu waktu. 4.

Bagaimana mekanisme Undo/ Redo bekerja di dalam DBMS. Record Log tersebut berisi : 1. Nilai baru : Nilai yang akan dimiliki data item setelah operasi write 5. which is the after image (AFIM). Prosedur REDO REDO(WRITE_OP) : redoing a write_item operation WRITE_OP consists of examining its log entry [write_item. Ini disebabkan karena jika sistem gagal selama proses recovery. Nama data item : Nama unik dari data item yang di tuliskan 3.T.new_value] and setting the value of item X in the database to new_value. recovery selanjutnya adalah mencoba melakukan prosedur REDO write_item yang sudah dilakukan selama proses recovery awal. Nilai lama : Nilai data item sebelum operasi write 4. Nama transaksi : Nama unik dari transaksi yang menjalankan operasi write 2. jelaskan algoritma proses Undo/ Redo. yaitu eksekusi yang terjadi berulang-ulang sama dengan sekali eksekusi saja.X.Hasil sistem crash selama recovery seharusnya sama dengan hasil recovery dari ketika tidak ada crash selama recovery. Checkpoint Record mencatat bahwa pos pemeriksaan telah dibuat.undoNextLSN    Commit Record note catatan keputusan untuk melakukan transaksi Abort Record catatan keputusan untuk menggugurkan dan karenanya rollback transaksi. . Jawab : Operasi REDO mempunyai sifat idempoten. Struktur data dari Transaction Log : Tiap record pada Log menggambarkan operasi tunggal transaksi yang menuliskan data.

transaksi baru dapat dimulai ketika roll forward selesai mereka tidak perlu menunggu rollback secara lengkap. Teknik ini digunakan ketika SMON menentukan bahwa jumlah pekerjaan yang diperlukan untuk melakukan pemulihan secara paralel kurang dari waktu yang dibutuhkan pemulihan serial. Dengan fast start on demand rollback. fast-start chekpointing memungkinkan untuk mengkonfigurasi batas atau jumlah operasi i/o selama recovery. Fast-Start Parallel Rollback Melakukan rollback paralel memungkinkan satu set transaksi akan dapat direalisasikan pada paralel menggunakan sekelompok proses server. Fast-Start On-Demand Rollback Selama recovery. 6. Sebutkan dan Jelaskan macam-macam Database Recovery Jawab :  Fast-start fault recovery arsitektur yang mengurangi waktu yang dibutuhkan untuk rolling depan dan membuat pemulihan terbatas dan dapat diprediksi. Fast-start fault recovery ada 3 macam: Fast-Start Checkpointing Selama recovery redo lod dibaca untuk mengetahui apa yang telah berubah dan membaca blog data untuk memutuskan apakah perubahan itu dapat diterapkan.  Parallel recovery . Ini juga menghilangkan rollback dari waktu pemulihan untuk transaksi dibatalkan karena kesalahan sistem.transaksi roll forwad dan rollback belum dilaksanakan.Operasi UNDO akan berjalan saat mekanisme Recovery RDBMS menjalankan operasi Redo dengan menelusuri catatan Log transaksi awal sampai akhir dan menemukan suatu transaksi yang tidak diakhiri dengan sempurna (tidak ditemukannya klausa COMMIT atau ROLLBACK ).

Single phase commit protocol mengasumsikan bahwa kendala integritas akan diperikasa setelah setiap operasi updatedan sebelum operasi. dan jelaskan bagaimana distributed commit protocol bekerja (1 phase commit protocol. jika contoh koneksi database yang dibuat gagal maka dalam hal ini. Ini berarti sebelum memicu comit protocol. transaksi aktif memutar kembali.secara manual oleh beberapa pemisahan sesi Oracle Enterprise Manager dan mengeluarkan perintah RECOVER datafile pada datafiles yang berbeda di setiap sesi. 7. dan 3 phase commit protocol) Jawab:  single phase commit single phase commit protocol tidak memastikan property ACID dari cabangcabang local yang berkaitan dengan transaksi . Namun. Hal ini memungkinkan aplikasi untuk secara otomatis menyambung kembali ke database. 2 phase commit protocol. . Jelaskan arsitektur dari distributed commit protocol. kordinator memastikan bahwa property ini secara local dipastikan oleh participant. metode ini menyebabkan setiap sesi Oracle Enterprise Manager untuk membaca seluruh file redo log.  Transparent Application Failover fitur dari Java Database Connectivity (JDBC) Oracle Call Interface (OCI) driver.

yaitu transaksi boleh melakukan lock terhadap data. 2 phase commit protocol Aturan dari two – phase protocol adalah bahwa setiap transaksi yang meminta untuk dapat melakukan lock atau unlock data terdiri dari dua fase: . . Transaksi diperbolehkan melakukan lock data yang diperlukan. Sub Ordinat memaksa menulis rekaman log abort/commit berdasarkan pesan yang didapat. yaitu tidak boleh lagi meminta untuk dapat melakukan lock data. Sekali saja transaksi tersebut melakukan unlock terhadap data. tetapi tidak boleh meminta untuk melakukan lock baru terhadap data. maka transaksi tersebut memasuki shrinking phase. peserta akan terus menunggu dan .749). memaksa menulis rekaman log abort dan mengirim pesan abort. Sebagai contoh. Sub ordinat memaksa menulis rekaman log abort atau prepare dan mengirim suatu pesan no or yes ke coordinator. p.Growing Phase. maka coordinator memaksa menulis suatu rekaman log commit dan mengirim pesan commit ke semua sub ordinat. Diinisialisasi diawal bahwa setiap transaksi melakukan growing phase. Jika coordinator menerima pesan yes. yaitu transaksi boleh melakukan unlock terhadap data.Shrinking Phase. Jika untuk alasan apapun ini gagal. two-phase commit protocol juga memiliki keterbatasan dalam hal itu adalah protokol menghalangi (Begg & Connolly 2002. peserta akan memblokir proses sumber daya sambil menunggu pesan dari koordinator.Jika sebuah transaksi ingin commit maka coordinator mengirim pesan prepare ke semua sub ordinat. Sebaliknya. Namun.

Begg dan Connolly menunjukkan bahwa kemungkinan sebuah blok terjadi adalah jarang (2002. Di sisi lain. 3PC adalah non-blocking. Ketika menerima pra-komit pesan. koordinator juga akan memblokir sumber daya sambil menunggu balasan dari peserta. Jika pra-komit pesan belum menerima peserta akan dibatalkan dan melepaskan setiap sumber daya yang diblokir.Secara khusus 3PC meruapakan batas atas pada jumlah waktu yang diperlukan sebelum melakukan transaksi ataupu pembatalan transaksi.  Three-phase commit protocol Algoritma terdistribusi yang memungkinkan semua node dalam sebuah sistem terdistribusi setuju untuk melakukan transaks berbeda dengan two protocol commit(2PC). Dalam hal ini.tidak pernah dapat menyelesaikan transaksinya. Dia kemudian melanjutkan dengan mengatakan bahwa itu dikembangkan untuk menghindari kegagalan yang terjadi dalam dua-tahap melakukan transaksi. maka akan melepaskan kunci setelah waktu habis. . Dale Skeen menjelaskan three-phase commit protocol berkomitmen sebagai non bloking protokol . Properti ini memastikan bahwa jika sebuah transakasi yang diberikan adalah mencoba melakukan melalui 3PC dan memegang beberapa sumberdaya. Oleh karena itu sumber daya bisa diblok tanpa batas waktu. peserta tahu bahwa semua yang lain telah memilih untuk komit. Sebuah alternatif untuk two-phase commit protokol yang digunakan oleh banyak sistem database adalah Three-phase commit protocol. koordinator juga dapat memblokir tanpa batas waktu jika tidak ada pengakuan yang diterima dari peserta. hal 749).

Sign up to vote on this title
UsefulNot useful