SA Шпаргалка

Все ответы в 2 клика

Продвинутый

Как обеспечивается свойство Durability (Долговечность) в ACID?

Если транзакция сделала COMMIT, данные не должны потеряться даже при внезапном отключении питания сервера.

СУБД (PostgreSQL, Oracle) обеспечивает это с помощью WAL (Write-Ahead Log — Журнал упреждающей записи).

1. При изменении данных СУБД сначала пишет эти изменения в специальный файл лога (WAL) на жестком диске.
2. Только после успешной записи в лог транзакция считается закоммиченной.
3. Сами данные в таблицах (в файлах данных) обновляются позже, в фоновом режиме.
4. Если сервер "упал", при перезапуске СУБД прочитает WAL и накатит все потерянные изменения.

Сложная тема? Разберём на мок-интервьюЗаписаться на менторство →

Другие вопросы темы «Нюансы ACID»

Ещё вопросы раздела «SQL и БД»

Все вопросы раздела «SQL и БД»