| 젠 토토 : 문서 : 9.6 : 젠 토토 | |||
|---|---|---|---|
| PostgreSQL : 문서 : 9.6 : 젠 토토성 | 사설 토토 사이트 : 문서 : 9.6 : 신뢰성 및 쓰기 로그 | 30장. 신뢰성 및 미리 쓰기 로그 | PostgreSQL : 문서 : 9.6 : 비동기 사설 토토 |
미리 쓰기 로깅 (토토 베이)은 데이터 무결성을 보장하기 위한 표준 방법입니다. 자세한 설명은 트랜잭션 처리에 관한 대부분의(전부는 아니지만) 책에서 찾을 수 있습니다. 간략하게,토토 베이의 핵심 개념은 데이터 파일(테이블 및 인덱스가 있는 위치)에 대한 변경 사항은 해당 변경 사항이 기록된 후에, 즉 변경 사항을 설명하는 로그 레코드가 영구 저장소에 플러시된 후에만 기록되어야 한다는 것입니다. 이 절차를 따르면 모든 트랜잭션 커밋에서 데이터 페이지를 디스크에 플러시할 필요가 없습니다. 충돌이 발생한 경우 로그를 사용하여 데이터베이스를 복구할 수 있다는 것을 알고 있기 때문입니다. 데이터 페이지에 적용되지 않은 모든 변경 사항은 로그 레코드에서 다시 실행할 수 있습니다. (이것은 REDO라고도 하는 롤포워드 복구입니다.)
팁:왜냐하면토토 베이충돌 후 데이터베이스 파일 콘텐츠를 복원하며, 데이터 파일이나 토토 베이 파일을 안정적으로 저장하는 데 저널 파일 시스템이 필요하지 않습니다. 실제로 저널링 오버헤드는 특히 저널링으로 인해 파일 시스템이 발생하는 경우 성능을 저하시킬 수 있습니다.데이터디스크로 플러시됩니다. 다행스럽게도 저널링 중 데이터 플러시는 파일 시스템 마운트 옵션을 사용하여 비활성화할 수 있는 경우가 많습니다.데이터=쓰기 저장Linux ext3 파일 시스템의 경우. 저널링된 파일 시스템은 충돌 후 부팅 속도를 향상시킵니다.
사용 중토토 베이트랜잭션에 의해 변경된 모든 데이터 파일이 아니라 트랜잭션 커밋을 보장하기 위해 로그 파일만 디스크에 플러시하면 되기 때문에 디스크 쓰기 수가 크게 줄어듭니다. 로그 파일은 순차적으로 작성되므로 로그 동기화 비용은 데이터 페이지를 플러시하는 비용보다 훨씬 적습니다. 이는 데이터 저장소의 여러 부분을 다루는 많은 소규모 트랜잭션을 처리하는 서버의 경우 특히 그렇습니다. 또한, 서버가 많은 소규모 동시 트랜잭션을 처리하는 경우, 하나fsync로그 파일의 내용은 많은 트랜잭션을 커밋하는 데 충분할 수 있습니다.
토토 베이또한 다음에 설명된 대로 온라인 백업 및 특정 시점 복구를 지원할 수 있습니다.섹션 25.3. 토토 베이 데이터를 보관함으로써 사용 가능한 토토 베이 데이터가 포함된 모든 시점으로 되돌릴 수 있습니다. 간단히 데이터베이스의 이전 물리적 백업을 설치하고 원하는 시간만큼 토토 베이 로그를 재생하면 됩니다. 또한 물리적 백업은 데이터베이스 상태의 즉각적인 스냅샷일 필요는 없습니다. 일정 기간 동안 백업이 수행된 경우 해당 기간 동안 토토 베이 로그를 재생하면 내부 불일치가 수정됩니다.