*이해가 안가서 개인적으로 정리한 내용이므로 참고용으로만 볼것!
복귀(Undo)
트랜잭션 작업을 취소하여 원래의 데이터베이스로 복구하는것
최신 > 과거
재생(Redo)
덤프와 로그를 이용해 정상적인 데이터베이스로 회복시켜 트랜잭션을 재실행
과거 > 최신
데이터베이스 복구 알고리즘
1) NO-UNDO/REDO
DB버퍼를 비동기적으로 갱신한 경우 > DB 저장매체에 최신 변경 내용이 기록X > 과거 기록 상태
그러므로 UNDO(최신 > 과거)는 필요없고, REDO(과거 > 최신)은 필요함
2) UNDO/NO-REDO
DB 버퍼를 동기적으로 갱신한 경우 > DB 저장매체에 최신 변경 내용이 기록됨 > 최신 기록 상태
그러므로 UNDO(최신 > 과거)는 필요하고, REDO(과거 > 최신)은 필요X
3) UNDO/REDO
DB 버퍼의 내용을 동기/비동기적으로 갱신 > 1,2의 경우 모두 가능함
그러므로 UNDO(최신 > 과거), REDO(과거 > 최신) 모두 필요
4) NO-UNDO/NO-REDO
DB버퍼의 내용을 동기적으로 저장 매체에 기록하지만, 데이터베이스와는 다른 영역에 기록
DB저장 매체에 과거 기록 상태가 있음 > UNDO(최신 > 과거) 필요X
다른 저장매체에 최신 기록 상태가 있음 > REDO(과거 > 최신) 필요X