IT 이야기/데이터베이스

회복기법(Recovery)

필넷 2008. 2. 12. 12:02
반응형

○ 회복(Recovery)기법 - 트랜잭션의 ACID 성질 중에서 영속성(Duration)의 측면

Check Point(Log 기반)

° Transaction 수행 중 발생하는 모든 변경사항을 Log에 기록하고 일정 기간 단위로 검사 시점을 생성하여 검사점 수행

° 저장장치의 Log File에 검사점을 표시하여 기록함
° 시스템 고장시 재실행할 트랜잭션과 취소할 트랜잭션을 찾기 위해 로그를 탐색해야 하는데 탐색할 로그의 양을 줄여준다

Log 기반

지연갱신

즉시갱신

° Transaction이 부분완료 상태에 이르기까지 발생한 내용을 Log에 저장하고 DB는 지연 저장

° Transaction 수행 중 발생하는 모든 변경사항을 즉시 Log와 DB에 반영

° Transaction이 종료된 상태에서 회복은 Undo없이 Redo만 수행
° Transaction이 종료 안 된 상태에서 회복은 Log무시

° DB Recovery과정에서 Undo, Redo 필요
° 로그우선출력(Write Ahead Logging) 기법을 사용함


Shadow Paging

개념

° Transaction이 실행되는 동안 2개의 Page table을 유지/관리하는 기법(Log를 이용하지 않음)

관리방법

° Transaction 시작시 Current Page table(주기억장치)과 Shadow Page table(저장장치)을 생성하여 관리
° Transaction 실행 중 데이터 접근은 Current Page table만을 사용
° Transaction이 성공적으로 완료하면 Current Page table 내용을 Shadow Page table에 저장
° 데이터베이스가 다수의 고정크기 디스크 페이지로 구성된 것으로 간주

Recovery

° Current Page table을 폐기하고 Shadow Page table을 가리키도록 설정

장점

° Log File유지 불필요
° 회복처리가 불필요, 새로운 Transaction은 Shadow Page table을 사용해 즉시 시작 가능

단점

° Commit overhead 문제(많은 page들을 디스크로 내보내야하므로 완료비용이 많이 소요)
° 데이터 단편화(Fragmentation)와 이력정보를 유지하지 못함
° Transaction 완료 후 이전 이미지를 갖는 Page들의 처리문제(Garbage Collect)
° 병행제어(Concurrent Control)가 어려움
° 디스크에 어떤 데이터 항목에 대한 여러 개의 사본이 존재할 수 있다

※ Salvation Program : Log자체가 손상된 경우 특수 프로그램으로 중요 부분에 대해 일관성 검사 수행후 오류 수정

반응형

'IT 이야기 > 데이터베이스' 카테고리의 다른 글

조인(Join)의 종류  (0) 2008.09.05
분산데이터베이스  (0) 2008.02.14
데이터마이닝 환경에서의 프라이버시 보호기술  (0) 2007.10.29
OLAP  (0) 2007.10.16
데이터마이닝  (0) 2007.10.16