ARIES 회복 기법: Difference between revisions
From CS Wiki
No edit summary |
No edit summary |
||
(2 intermediate revisions by one other user not shown) | |||
Line 9: | Line 9: | ||
! 구분 !! 설명 | ! 구분 !! 설명 | ||
|- | |- | ||
| | | WAL/LSN || 모든 변경사항을 선행 로그로 기록 | ||
|- | |- | ||
| No-Force || 트랜잭션이 커밋 되어도 변경사항을 즉시 디스크에 기록하지 않음 | | No-Force || 트랜잭션이 커밋 되어도 변경사항을 즉시 디스크에 기록하지 않음 | ||
Line 15: | Line 15: | ||
| Steal || 트랜잭션이 커밋되지 않아도 변경사항을 디스크에 기록 가능 | | Steal || 트랜잭션이 커밋되지 않아도 변경사항을 디스크에 기록 가능 | ||
|} | |} | ||
* | * WAL/LSN을 기반으로 [[데이터베이스 Force와 Steal|No-Force/Steal]] 정책 하에 효율적인 복구 수행 | ||
== 핵심 개념 == | == 핵심 개념 == | ||
Line 52: | Line 52: | ||
* 장애 시 이전의 데이터베이스 수행 기록을 모두 추적하여 REDO | * 장애 시 이전의 데이터베이스 수행 기록을 모두 추적하여 REDO | ||
|- | |- | ||
| | | Logging Changes | ||
|| | || | ||
* | * UNDO 완료된 트랙잭션을 기록하여 UNDO 반복 수행 회피 | ||
|} | |} |
Latest revision as of 03:13, 12 December 2019
- Algorithms for Recovery and Isolation Exploiting Semantics; ARIES Recovery Algorithm; ARIES Recovery method
특징[edit | edit source]
구분 | 설명 |
---|---|
WAL/LSN | 모든 변경사항을 선행 로그로 기록 |
No-Force | 트랜잭션이 커밋 되어도 변경사항을 즉시 디스크에 기록하지 않음 |
Steal | 트랜잭션이 커밋되지 않아도 변경사항을 디스크에 기록 가능 |
- WAL/LSN을 기반으로 No-Force/Steal 정책 하에 효율적인 복구 수행
핵심 개념[edit | edit source]
- REDO 중 Repeating history: 붕괴가 발생했을 때의 데이터베이스 상태를 복구하기 위하여 붕괴 발생 이전에 수행했던 모든 연산을 다시 한번 수행
- UNDO 중 Logging changes: UNDO를 할 때에도 로깅을 함으로써 회복을 수행하는 도중에 실패하여 회복을 다시 시작할 때에 이미 완료된 UNDO 연산은 반복하지 않음
수행 3단계[edit | edit source]
단계 | 동작 |
---|---|
Analysis | REDO가 시작되어야 하는 로그 위치 결정 |
REDO | 분석 단계에서 결정한 REDO 시작 위치의 로그부터 REDO를 수행 |
UNDO | 로그를 역순으로 읽으며 미완료 트랜잭션을 UNDO |
구성 요소[edit | edit source]
구성 요소 | 설명 |
---|---|
WAL |
|
LSN |
|
Repeating History |
|
Logging Changes |
|