반응형
1. DB 일관성 및 무결성 보장, 트랜잭션 회복의 개요
가. 데이터베이스 회복기법의 정의
![]() |
|
| 정의 | - 데이터베이스 운영도중 장애가 발생한 경우, 장애 발생 이전의 일관된 상태로 복원시키는 것 |
나. 데이터베이스 회복기법의 주요 요소
| 구분 | 주요 요소 | 설명 |
| 회복 준비 | 로그(Log) | 트랜잭션 변경 이력 저장 파일 |
| 회복 수행 | 체크포인트 | 특정 시점까지 변경내용 기록 |
| REDO | 회복된 DB 상태로 복원 | |
| UNDO | 원래의 DB 상태로 복원 | |
| 회복 정책 | 일관성 보장 | 트랜잭션 Commit 또는 Rollback |
- DB 회복은 IT 컴플라이언스와 비즈니스 연속성을 위한 필수 요소
2. REDO와 UNDO 이용 회복방법
가. REDO 이용 방법
| 개념 | - 장애 발생 시 진행된 트랜잭션에 대해 로그 기록 이용하여 재반영하여 복원하는 기법 |
| 개념도 | ![]() |
| 상세동작 | 1) 트랜잭션 시작 시 해당 트랜잭션 연산 내용 로그 기록 |
| 2) 장애 발생 시점까지의 로그 기록 연산 내용 재수행 | |
| 대표 기법 | 지연 갱신 회복기법, 체크포인트 회복기법, ARIES |
나. UNDO 이용 방법
| 개념 | - 장애 발생 시 변경된 트랜잭션에 대해 실행 트랜잭션 모두 이전 상태로 되돌리는 기법 |
| 개념도 | ![]() |
| 상세 동작 | 1) 트랜잭션 시작 후 연산 내용 로그에 기록, 트랜잭션 완료 시 Commit |
| 2) 장애 발생 시 Commit 완료된 로그 기록까지 복원하고 나머지 로그 삭제 | |
| 대표 기법 | 즉시 갱신 회복기법, 그림자 페이징 기법 |
- 트랜잭션 회복 시 오버헤드 줄이기 위해 체크포인트 회복 기법 활용
3. 체크포인트 이용 회복 방법
| 개념 | 트랜잭션 처리 중 지정된 시점까지의 트랜잭션 상태 저장하여 장애 발생 시 회복 범위 최소화하는 기법 | |
| 개념도 | ![]() |
|
| 상세 동작 | 1) 체크포인트 발생 시점에 메모리 버퍼에 있는 변경 내용 디스크에 기록 | |
| 2) 시스템 장애 발생 시, 최근 체크포인트 이후 트랜잭션 분석 | ||
| 3) Commit된 트랜잭션 REDO, 비정상 종료 트랜잭션 UNDO | ||
| 구성 요소 | Dirty Page | 메모리 상 변경되었으나 디스크에 반영되지 않은 페이지 |
| Log Buffer | 변경 이력 담고 있는 메모리 영역 | |
| Checkpoint Marker | 체크포인트 발생 위치 기록한 로그 | |
| 기법 종류 | Sharp Checkpoint | 모든 트랜잭션 정지 후 전체 페이지 디스크에 기록 |
| Fuzzy Checkpoint | 트랜잭션 정지하지 않고 백그라운들로 점진적 반영 | |
4. 그림자 페이징 이용 방법
| 개념 | 원본 데이터는 유지하고 별도의 그림자 페이지를 수정하여 장애 발생 시 롤백이 불필요한 회복 기법 | |
| 개념도 | ![]() |
|
| 상세 동작 | 1) 트랜잭션 시작 시 페이지 테이블 복사하여 그림자 페이지 테이블 생성 | |
| 2) 데이터 수정 시 기존 페이지 변경 않고 새로운 페이지에 작성 | ||
| 3) 트랜잭션 Commit 되면 그림자 페이지 테이블을 현재 페이지 테이블로 전환 | ||
| 4) 트랜잭션 실패 시, 그림자 페이지 테이블을 그래도 사용하여 복구 필요 없음 | ||
| 특징 | UNDO / REDO 불필요 | 원본 페이지 유지로 복구 시 별도 과정 생략 |
| 페이지 기반 복구 | 페이지 단위로 복사 및 전환 | |
| 쓰기 비용 증가 | 페이지 전체 복사 갱신 필요 | |
- 그림자 페이지 테이블은 빠른 회복이 가능하지만 알고리즘 복잡도가 높아 시스템 부담으로 대규모 OLTP 시스템에는 비효율적
반응형
'IT 기술 > DB' 카테고리의 다른 글
| 인덱스 (1) | 2025.04.09 |
|---|---|
| 빅데이터 시각화 (0) | 2025.04.09 |
| 아파치 카프카 (0) | 2025.04.09 |
| CDC (Change Data Capture) (0) | 2025.04.09 |
| DB 백업의 필요성과 유형 (0) | 2025.04.09 |




