WAL이란?
DB 변경을 데이터 파일 직접 쓰기 전에 로그 파일에 먼저 순차 기록하는 방식이다.
왜 필요한가
- 장애 복구 — 재시작 시 WAL만 replay
- 성능 — 랜덤 I/O → 순차 I/O
- 복제 — Standby가 WAL을 재생해 동기화
- PITR (Point-in-Time Recovery)
SQLite 변형
SQLite에도 WAL 모드가 있어 journal_mode=WAL로 전환하면 동시 읽기 성능이 크게 향상된다.
운영 포인트
Postgres의 archive_mode + 주기적 base backup으로 PITR 구성이 프로덕션 표준.