Perbedaan antara pembaruan yang ditangguhkan dan pembaruan segera

Perbedaan antara pembaruan yang ditangguhkan dan pembaruan segera

Pembaruan Ditangguhkan vs Pembaruan Langsung

Pembaruan Ditangguhkan dan Pembaruan Segera adalah dua teknik yang digunakan untuk memelihara file log transaksi dari Sistem Manajemen Database (DBMS). Log transaksi (juga disebut sebagai log jurnal atau log redo) adalah file fisik yang menyimpan ID transaksi, cap waktu transaksi, nilai lama dan nilai baru dari data. Ini memungkinkan DBM untuk melacak data sebelum dan sesudah setiap transaksi. Ketika transaksi dilakukan dan database dikembalikan ke keadaan yang konsisten, log mungkin dipotong untuk menghapus transaksi yang dilakukan.

Pembaruan yang ditangguhkan

Pembaruan Ditangguhkan Juga Disebut No-Lo/Redo adalah teknik yang digunakan untuk memulihkan/mendukung kegagalan transaksi yang terjadi karena sistem operasi, daya, memori atau kegagalan mesin. Saat transaksi berjalan, setiap pembaruan atau perubahan yang dilakukan pada database dengan transaksi tidak dilakukan segera. Mereka direkam dalam file log. Perubahan data yang direkam dalam file log diterapkan ke database pada komit. Proses ini disebut "kembali". Pada rollback, setiap perubahan data yang direkam dalam file log dibuang; Oleh karena itu tidak ada perubahan yang akan diterapkan ke database. Jika suatu transaksi gagal dan tidak dilakukan karena alasan apa pun yang disebutkan di atas, catatan dalam file log dibuang dan transaksi dimulai kembali. Jika perubahan dalam suatu transaksi dilakukan sebelum macet, maka setelah sistem restart, perubahan yang dicatat dalam file log diterapkan ke database.

Pembaruan langsung

Pembaruan segera juga disebut undo/redo, juga merupakan teknik lain yang digunakan untuk memulihkan/mendukung kegagalan transaksi yang terjadi karena sistem operasi, daya, memori atau kegagalan mesin. Saat transaksi berjalan, salah satu pembaruan atau perubahan yang dilakukan oleh transaksi ditulis langsung ke dalam database. Baik nilai asli dan nilai -nilai baru juga dicatat dalam file log sebelum perubahan dibuat ke database. Pada komitmen semua perubahan yang dibuat pada database dibuat permanen dan catatan dalam file log dibuang. Pada rollback nilai lama dipulihkan ke database menggunakan nilai lama yang disimpan dalam file log. Semua perubahan yang dilakukan oleh transaksi ke database dibuang dan proses ini disebut "un-lakukan". Saat sistem restart setelah kerusakan, semua perubahan database dibuat permanen untuk transaksi yang dilakukan. Untuk transaksi yang tidak berkomitmen, 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 dengan transaksi pertama kali dicatat dalam file log dan diterapkan pada database pada komit. Dalam metode pembaruan langsung, perubahan yang dilakukan oleh transaksi secara langsung diterapkan ke database dan nilai -nilai lama dan nilai -nilai baru dicatat dalam file log. Catatan ini digunakan untuk mengembalikan nilai lama pada rollback. Dalam metode pembaruan yang berbeda, catatan dalam file log dibuang pada roll back dan tidak pernah diterapkan ke database. Salah satu kelemahan dari metode pembaruan yang ditangguhkan adalah peningkatan waktu yang dibutuhkan untuk pulih jika terjadi kegagalan sistem. Di sisi lain, sering operasi I/O saat transaksi aktif, adalah kerugian dalam metode pembaruan langsung.