그림자페이지(Shadow Paging) 기법 [정의] 트랜잭션수행중현재페이지테이블과동일한내용의그림자페이지테이블을생성하여트랜잭션의업데이트실행시현재페이지테이블을변경하고그림자페이지테이블을변경않다가트랜잭션종료시그림자페이지테이블을갱신
'-페이징테이블교체(복구과정), 복구빠름, 분산된그림자테이블로복구, 페이징테이블유지알고리즘복잡
낮은 부하
높은 저장공간
 
토픽이름 그림자페이지 회복기법
분류 DB > 데이터 회복 >그림자페이지회복기법
키워드(암기) - 그림자페이지테이블을 유지
- 에러 발생 , 그림자페이지테이블로 현재 테이블 대체
- 갱신:저장/생성/기록/반영
- 회복:제거/갱신/복구
암기법(해당경우)  

 

기출문제

번호 문제 회차
1 데이터베이스의 회복기법(Recovery) 대하여 다음 내용을 설명하시오.
 1) Redo Undo      2) 로그기반 회복기법
 3) 체크포인트 회복기법   4) 그림자페이지 회복기법
104.컴시응.4

 

I. 그림자페이지테이블 이용한 회복 기법,그림자페이지테이블회복기법의 개요

. 그림자 페이지 테이블 회복 기법의 정의

- 트랜잭션 시작 ,현재 테이블과 동일한 그림자 테이블을 생성하고 트랜잭션 성공 , 현재 페이지의 내용으로 그림자 테이블을 동기화시키고 회복 그림자 테이블을 활용하는 기법

- 데이터베이스를 일정 크기의 페이지 단위로 구성하여 각 페이지마다 복사본인 그림자 페이지를 별도 보관

. 그림자 페이지 테이블 회복 기법의 특징

구분 특징 설명
회복 대상 백업 데이터 트랜잭션 내용의 스냅샷인 백업 테이블 활용
적용 전략 병행 적용 다중 트랜잭션 발생 시,로그기반이나 검사점 기법과 병행 적용 필요

 

II. 그림자 페이지 테이블 회복 기법 설명

구분 설명
개념도
갱신 - 트랜잭션 수행 현재 페이지 테이블과 그림자 페이지 테이블을 운용
- 현재 페이지 테이블을 우선 갱신하고, 트랜잭션 종료 그림자 페이지 테이블 갱신.
- 다중 사용자 환경에서는 추가적인 로깅 필요
회복동작 - 장애 발생 , 그림자 페이지 테이블의 내용을 이용하여 회복 수행
장점 - 별도의 로그 처리 필요 없어 상대적으로 낮은 부하
단점 - 페이지 테이블 관리 필요, 상대적으로 높은 저장 공간 요구

 

III. 그림자 페이지 테이블 회복 기법 프로세스

구분 수행 설명
갱신 저장 - 현재 페이지 테이블은 메모리,그림자 페이지 테이블은 HDD 저장

생성 - 트랜잭션 시작 시점에 현재 페이지 테이블의 내용과 동일한 그림자페이지테이블 생성

기록 - 트랜잭션 변경 연산이 수행되면,메모리의 현재 페이지 테이블 내용만 갱신

반영 - 트랜잭션이 성공하는 경우, 현재 페이지 테이블 내용을 그림자페이지테이블로 반영
회복 제거 - 장애 발생 ,메모리의 현재 페이지 테이블 내용 Drop

변경 - 현재 페이지 테이블을 HDD 저장된 그림자 페이지 테이블로 변경

복구 - 그림자 페이지 테이블의 내용을 기반으로 회복 작업 수행

 

IV. 데이터 회복 기법 비교

구분 로그 CheckPoint 그림자 페이징
복구과정 - UNDO, REDO 사용 - UNDO, REDO 사용 - 페이징 테이블 교체
복구속도 - 로그 검색 수행으로
매우 느림
- 제한된 검사점 만을
검색하여 로드 대비 빠름
- 단순한 페이징 테이블
 교체로 빠름
디스크 사용 - 단위 트랜잭션 변경유지
만으로 적음
- 다수의 트랜잭션 변경
 유지로 로드 보다 많음
- 모든 데이터의 동일 형상
 유지로 많이 사용
복구 데이터 - 트랜잭션당 로그 - 검사점 시점 로그 - 분산된 그림자 테이블
확장성 - 트랜잭션당 로그 관리로
 용이
- 검사점 변경만으로 용이 - 페이징 테이블 유지
 알고리즘 복잡

 

[참고자료]

 

 

반응형

+ Recent posts