Write-Ahead Log (WAL) | Журнал транзакций

Редактировал(а) Alexandr Fokin 2023/12/16 14:13

Механизм, используемый хранилищами для надежного сохранения изменений данных. 
PITR (Point In Time Recovery).
Файловый лог, в который последовательно записываются все изменения данных.
В случае падения БД (перезагрузки сервера), лог используется для наката зафиксированных изменений.
Также может быть задействован в механизмах Репликация | Replication (трансляция потока изменений на реплики) и для создания резервных копий.
Контрольная точка - периодическое сохранение грязных данных на диск и отчистка журнала на определенный момент времени т.к. данные гарантировано надежно сохранены.

Поддерживается некоторыми InMemory хранилищами в сочетании с системой снимков.


PostgreSQLPostgres Professional

WAL в PostgreSQL: 1. Буферный кеш
https://habr.com/ru/company/postgrespro/blog/458186/

WAL в PostgreSQL: 2. Журнал предзаписи
https://habr.com/ru/company/postgrespro/blog/459250/

WAL в PostgreSQL: 4. Настройка журнала
https://habr.com/ru/company/postgrespro/blog/461523/

Курсы DEV1 и DEV2
   
Файловая системы 
Синхронный режим записиПосле каждой записи БД явно вызывает File sync | FSync, что должно дать высокую вероятность того, что данные реально попали на физический носитель, а не только в промежуточные кеши подготовки записи.
Асинхронный режим записиНе делает вывозов FSync, может достаточно сильно увеличить производительность.
Но не гарантируется сохранность всех данных, коммит которых завершился успешно.

Event sourcing 


Внутренние ссылки:

Дочерние страницы:
Обратные ссылки:

Теги: