Gaya Hidup

Pembaruan yang Ditangguhkan dan Pembaruan Segera apakah mereka sama?

Pengantar Pembaruan yang Ditangguhkan dan Pembaruan Segera

Pembaruan yang Ditangguhkan dan Pembaruan Segera merupakan dua teknik yang digunakan untuk memelihara file log transaksi dari Sistem Manajemen Basis Data (DBMS).

Log transaksi (juga disebut log jurnal atau redo log) adalah file fisik yang menyimpan ID Transaksi, stempel waktu transaksi, nilai lama, dan nilai baru dari data.

Ini memungkinkan DBMS untuk melacak data sebelum dan sesudah setiap transaksi.

Saat transaksi dilakukan dan database dikembalikan ke keadaan konsisten, log mungkin dipotong untuk menghapus transaksi yang dilakukan.

Pembaruan yang Ditangguhkan

Pembaruan yang ditangguhkan juga disebut NO-UNDO/REDO adalah teknik yang digunakan untuk memulihkan/mendukung kegagalan transaksi yang terjadi karena kegagalan sistem operasi, daya, memori atau mesin.

Saat transaksi berjalan, pembaruan atau perubahan apa pun yang dilakukan pada database oleh transaksi tidak segera dilakukan.

Mereka direkam dalam file log.

Perubahan data yang dicatat dalam file log diterapkan ke database saat komit.

Proses ini disebut “Re-doing”.

Pada rollback, setiap perubahan pada data yang direkam dalam file log akan dibuang; karenanya tidak ada perubahan yang akan diterapkan ke database.

Jika transaksi gagal dan tidak dilakukan karena salah satu alasan yang disebutkan di atas, catatan dalam file log akan dibuang dan transaksi dimulai kembali.

Jika perubahan dalam transaksi dilakukan sebelum mogok, maka setelah sistem dimulai ulang, perubahan yang dicatat dalam file log diterapkan ke database.

Pembaruan Segera

Pembaruan segera juga disebut UNDO/REDO, juga merupakan teknik lain yang digunakan untuk memulihkan/mendukung kegagalan transaksi yang terjadi karena kegagalan sistem operasi, daya, memori atau mesin.

Saat transaksi berjalan, setiap pembaruan atau perubahan yang dilakukan oleh transaksi ditulis langsung ke dalam database.

Nilai asli dan nilai baru juga dicatat dalam file log sebelum perubahan dibuat ke database.

Saat komit, semua perubahan yang dilakukan pada database dibuat permanen dan catatan dalam file log dibuang.

Pada rollback, nilai lama dikembalikan ke database menggunakan nilai lama yang disimpan dalam file log.

Semua perubahan yang dibuat oleh transaksi ke database dibuang dan proses ini disebut “Un-doing”.

Ketika sistem restart setelah crash, semua perubahan database dibuat permanen untuk transaksi yang dilakukan.

Untuk transaksi tanpa komitmen, nilai asli dipulihkan menggunakan nilai dalam file log.

Apa perbedaan antara Pembaruan yang Ditangguhkan dan Pembaruan Segera

Meskipun Pembaruan yang Ditangguhkan dan Pembaruan Segera adalah dua metode untuk memulihkan setelah kegagalan sistem, proses yang digunakan setiap metode berbeda.

Dalam metode pembaruan yang berbeda, setiap perubahan yang dilakukan pada data oleh suatu transaksi pertama-tama dicatat dalam file log dan diterapkan ke database saat komit.

Dalam metode pembaruan langsung, perubahan yang dibuat oleh transaksi langsung diterapkan ke database dan nilai lama dan nilai baru dicatat dalam file log.

Catatan ini digunakan untuk memulihkan nilai lama saat rollback.

Dalam metode pembaruan yang berbeda, catatan dalam file log dibuang saat diputar kembali dan tidak pernah diterapkan ke database.

Salah satu kelemahan metode pembaruan yang ditangguhkan adalah peningkatan waktu yang dibutuhkan untuk memulihkan jika terjadi kegagalan sistem.

Di sisi lain, seringnya operasi I/O saat transaksi sedang aktif, merupakan kerugian dalam metode pembaruan segera.