Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

В информатике , ведение журнал запись вперед ( WAL ) представляет собой семейство методов для обеспечения атомарности и долговечности (два из ACID свойств) в системах баз данных . Изменения сначала записываются в журнал, который должен быть записан в стабильное хранилище , прежде чем изменения будут записаны в базу данных.

В системе, использующей WAL, все изменения записываются в журнал перед их применением. Обычно в журнале хранится информация как о повторении, так и об отмене.

Назначение этого можно проиллюстрировать на примере. Представьте себе программу, которая выполняет какую-либо операцию, когда машина, на которой она работает, теряет мощность. После перезапуска этой программе может потребоваться знать, была ли операция, которую она выполняла, успешной, успешной частично или неудачной. Если используется журнал упреждающей записи, программа может проверить этот журнал и сравнить, что она должна была делать, когда неожиданно потеряла питание, с тем, что было сделано на самом деле. На основе этого сравнения программа могла решить отменить начатое, завершить начатое или оставить все как есть.

WAL позволяет обновлять базу данных на месте . Другой способ реализовать атомарные обновления - использовать теневое разбиение на страницы , которого нет на месте. Основное преимущество выполнения обновлений на месте состоит в том, что это снижает необходимость изменения индексов и списков блокировки.

ARIES - популярный алгоритм в семействе WAL.

Современные файловые системы обычно используют вариант WAL как минимум для метаданных файловой системы ; это называется ведением журнала .

Ссылки [ править ]