Что такое WAL в PostgreSQL и для чего он нужен?

WAL — журнал предзаписи изменений PostgreSQL. Запись журнала должна попасть на устойчивое хранение раньше соответствующих изменённых страниц данных.

Короткий ответ

Что ответить на собеседовании

WAL — журнал предзаписи изменений PostgreSQL. Запись журнала должна попасть на устойчивое хранение раньше соответствующих изменённых страниц данных.

Подробный разбор

Ответ с пояснениями

WAL — журнал предзаписи изменений PostgreSQL. Запись журнала должна попасть на устойчивое хранение раньше соответствующих изменённых страниц данных.

Это позволяет восстанавливать согласованное состояние после аварии: сервер воспроизводит необходимые изменения из журнала. Не требуется синхронно записывать все изменённые страницы при каждом commit.

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

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее