WAL — журнал предзаписи изменений PostgreSQL. Запись журнала должна попасть на устойчивое хранение раньше соответствующих изменённых страниц данных.
Что такое WAL в PostgreSQL и для чего он нужен?
WAL — журнал предзаписи изменений PostgreSQL. Запись журнала должна попасть на устойчивое хранение раньше соответствующих изменённых страниц данных.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
WAL — журнал предзаписи изменений PostgreSQL. Запись журнала должна попасть на устойчивое хранение раньше соответствующих изменённых страниц данных.
Это позволяет восстанавливать согласованное состояние после аварии: сервер воспроизводит необходимые изменения из журнала. Не требуется синхронно записывать все изменённые страницы при каждом commit.
WAL также используется для физической репликации и восстановления на момент времени вместе с базовой резервной копией. Сам журнал не заменяет полноценную стратегию резервирования. Объём и задержки записи следует мониторить, особенно при отставании реплик. Гарантия сохранения подтверждённых транзакций зависит в том числе от настроек синхронной фиксации и надёжности хранения.