2025 년 7 월 17 일 : | 윈 토토 : 윈 토토 18 베타
이 문서는 지원되지 않는 버전의 롤 토토을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 28 장. 신뢰성과 윈 토토 로그버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

제 11 장. 쓰기 로깅 (WAL)

목차
11.1. 일반 설명
11.1.1. 즉시 의 혜택Wal
11.1.2. 미래 이익
11.2. 구현
11.3. Wal구성

저자 :Vadim Mikheev and Oliver Elphick

11.1. 일반적인 설명

미리 로깅 쓰기(Wal)는 표준 접근법입니다 거래 로깅에. 자세한 설명을 찾을 수 있습니다 거래 처리에 관한 대부분의 책. 간단히,Wal의 중앙 개념은 데이터 파일의 변경 (테이블 및 인덱스가있는 곳입니다. 해당 변경이 발생한 후에 만 작성해야합니다. 로그인 - 즉, 로그 레코드가 플러시 된 경우 영구 저장. 이 절차를 따를 때는 그렇지 않습니다 모든 트랜잭션 커밋에서 데이터 페이지를 디스크로 플러시해야합니다. 우리는 충돌이 발생했을 때 로그를 사용하여 데이터베이스 복구 : 그렇지 않은 변경 사항 데이터 페이지에 적용된 것이 먼저 로그 레코드 (이것은 REDO라고도하는 롤 포워드 복구입니다) 그런 다음 커밋되지 않은 거래에 의한 변경 사항이 발생합니다 데이터 페이지에서 제거되었습니다 (롤백 복구 - 끄르다).

11.1.1. 의 즉각적인 혜택Wal

사용의 첫 번째 명백한 이점Wal는 상당히 감소 된 수입니다 디스크는 로그 파일 만 플러시해야하므로 트랜잭션 커밋시 디스크; Multiuser에서 환경, 많은 거래의 커밋이있을 수 있습니다 싱글로 달성fsync ()12873_13051

다음 이점은 데이터 페이지의 일관성입니다. 그만큼 진실은 그 전에Wal, 롤 토토결코 할 수 없었습니다 충돌의 경우 일관성을 보장합니다. 전에Wal, 모든 충돌 중 글쓰기가 발생할 수 있습니다 :

  1. 존재하지 않는 테이블 행을 가리키는 색인 튜플

  2. 분할 작업에서 손실 된 색인 튜플

  3. 완전히 손상된 테이블 또는 인덱스 페이지 컨텐츠 부분적으로 작성된 데이터 페이지

인덱스 문제 (문제 1 및 2) 문제가있을 수 있습니다 추가로 수정되었습니다fsync ()호출이지만 방법은 분명하지 않습니다 없이 마지막 케이스를 처리하십시오.Wal;Wal전체 데이터 페이지 컨텐츠를 저장합니다 페이지 일관성을 보장하는 데 필요한 로그 사후 회복 후.

11.1.2. 미래의 혜택

이 첫 번째 릴리스에서Wal, 실행 취소 작동이 구현되지 않았습니다. 시간이 부족하기 때문에. 이것은 변화가 이루어 졌음을 의미합니다 중단 된 거래는 여전히 디스크 공간을 차지할 것이며 우리는 여전히 영구가 필요합니다PG_CLOG파일 우리가 할 수 없기 때문에 거래 상태를 유지하려면 거래 식별자를 재사용합니다. 실행 취소가 구현되면PG_CLOG더 이상 필요하지 않습니다 영구적으로; 제거 할 수 있습니다PG_CLOG셧다운시. (그러나 긴급 성 이 문제는 에 대한 세그먼트 스토리지 방법PG_CLOG--- 더 이상 유지할 필요가 없습니다 오래된PG_CLOG주변 항목 영원히.)

실행 취소를 사용하면 구현할 수도 있습니다SavePoints부분 롤백을 허용합니다 유효하지 않은 트랜잭션 운영 (파서 오류가 발생합니다 안개화 명령, 중복 1 차/고유의 삽입 Keys 등) 계속하거나 유효한 능력으로 오류 전에 트랜잭션에 의해 수행 된 작업. ~에 현재, 모든 오류는 전체 트랜잭션을 무효화합니다 거래 중단이 필요합니다.

Wal제안 데이터베이스 온라인 백업을위한 새로운 방법 및 복원하다 (bar). 이것을 사용합니다 방법, 데이터 파일을 정기적으로 저장해야합니다. 다른 디스크, 테이프 또는 다른 호스트에게 보관하십시오.Wal로그 파일. 그만큼 데이터베이스 파일 사본 및 보관 된 로그 파일을 사용할 수 있습니다. 마치 충돌 후 복원하는 것처럼 복원합니다. 각 Time 새 데이터베이스 파일 사본이 이전 로그 파일로 만들어졌습니다. 제거 할 수 있습니다. 이 시설을 구현하려면 필요합니다 데이터 파일의 로깅 및 색인 생성 및 삭제; 그것은 할 것입니다 또한 데이터 복사 방법을 개발해야합니다. 파일 (운영 체제 복사 명령이 적합하지 않음).

이것들을 실현하는 데 방해가 어려워집니다 혜택은 저축이 필요하다는 것입니다Wal상당한 기간 동안의 항목 시간 (예 : 가장 긴 트랜잭션이 거래 실행 취소가 필요합니다). 현재Wal형식은 그 이후로 매우 부피가 커집니다 많은 디스크 페이지 스냅 샷이 포함되어 있습니다. 이것은 심각하지 않습니다 현재 출품작 만 유지하기 만하면 하나 또는 두 개의 체크 포인트 간격; 그러나 이것들을 달성하기 위해 미래는 일종의 압축Wal형식이 필요합니다.