문제
데이터베이스 장애 회복에서 Write-Ahead Logging(WAL) 프로토콜의 두 가지 핵심 규칙을 설명하고, 각 규칙이 트랜잭션의 원자성과 지속성을 어떻게 보장하는지 서술하시오.
정답
WAL 프로토콜의 첫 번째 규칙은 데이터 페이지를 디스크에 쓰기 전에 반드시 해당 로그 레코드를 먼저 디스크에 써야 한다는 것으로, 이는 Undo 정보를 보장하여 원자성을 지원한다. 두 번째 규칙은 트랜잭션을 커밋하기 전에 모든 로그 레코드가 디스크에 기록되어야 한다는 것으로, 이는 Redo 정보를 보장하여 지속성을 지원한다.
WALWrite-Ahead Logging첫 번째 규칙두 번째 규칙원자성지속성UndoRedo로그 레코드
해설
WAL 프로토콜은 데이터베이스 회복의 핵심 메커니즘입니다. 첫 번째 규칙(Log-ahead rule)은 데이터 변경 전 로그를 먼저 기록하여 장애 시 변경 사항을 되돌릴 수 있게 하고, 두 번째 규칙(Force-log-at-commit rule)은 커밋 전 로그를 강제로 디스크에 기록하여 커밋된 변경 사항이 영구적으로 보존되도록 합니다.