백업 매니페스트 WAL 범위 객체
백업 매니페스트 WAL 범위 객체 (WAL Range Object)
백업을 실제로 복원해서 쓰려면, 백업이 찍힌 시점 이후의 WAL 레코드가 어느 타임라인에서 어디부터 어디까지 읽을 수 있어야 하는지 알아야 해요. 백업 매니페스트는 이를 위해 WAL-Ranges 목록에 각 범위를 설명하는 객체를 담아요. 이 객체는 항상 세 개의 키로 이루어져 있어요.
출처: 공식문서
세 개의 키
WAL 범위를 설명하는 객체에는 다음 세 키가 항상 들어 있어요.
Timeline— 이 WAL 범위가 속한 타임라인(정수)이에요.Start-LSN— 이 백업을 쓰기 위해 지정된 타임라인에서 리플레이를 시작해야 하는 LSN이에요. PostgreSQL이 보통 쓰는 형식, 즉 길이가 1~8인 16진수 문자열 두 개가 슬래시(/)로 구분된 형식으로 저장돼요.End-LSN— 이 백업을 쓰면서 지정된 타임라인의 리플레이가 끝나도 되는 가장 이른 LSN이에요.Start-LSN과 같은 형식으로 저장돼요.
보통은 하나, 가끔은 여러 개
일반적으로는 WAL 범위가 하나만 존재해요. 그런데 스탠바이(standby)에서 백업을 가져오는 도중에 업스트림 프로모션(promotion)으로 인해 타임라인이 바뀌는 경우에는, 서로 다른 타임라인을 가진 범위가 여러 개 존재할 수 있어요.
다만 주의할 점이 하나 있어요. 같은 타임라인에 대한 WAL 범위는 여러 개가 나타나지 않아요. 타임라인이 바뀌었을 때만 범위가 나뉘어 추가된다고 보면 돼요.
더 알아보기 (Learn more)
- 최상위 객체의
WAL-Ranges키: Section 70.1 - 타임라인과 프로모션: Chapter 26. Backup and Restore / 스탠바이 프로모션
- 백업 검증 도구:
pg_verifybackup