처음으로 댓글달기 무료구독 트위터
   
○ 직렬가능성, 회복가능

개요

° 트랜잭션들의 연산들이 인터리빙되어 수행될 때 어떤 스케줄들이 정확한지 식별하는데 사용됨
° 직렬가능 스케줄에서는 어떠한 정확성도 잃지 않으면서 동시 실행의 장점을 얻을 수 있음

직렬스케줄

직렬가능

° 스케줄에 참가하는 모든 트랜잭션 T에 대해서 T에 속한 모든 연산들이 다른 트랜잭션의 연산들과 인터리빙 되지 않고 연속적으로 실행될 때 직렬스케줄이라고 함

결과동치(View Equivalence)

충돌동치(Conflict Equivalence)

° 두 개의 스케줄이 DB의 최종상태를 같게 만드는 경우
° 스케줄 동치에 사용되어선 안됨

° 두 개의 스케줄에서 어떠한 두 개의 충돌 연산들의 순서가 동일할 경우


° n개의 트랜잭션들로 구성된 스케줄 S가 동일한 n개의 트랜잭션들로 구성된 어떤 직렬 스케줄과 동치일 경우를 의미함
충돌직렬가능 - 충돌동치의 개념을 이용한 스케줄 S가 어떤 스케줄 S'과 충돌동치일 경우

선행 그래프(Precedence Graph)

° 방향그래프 - (N,E)
° Node - 스케줄 S의 트랜잭션들의 집합
° Edge - Ti → Tj

° Ti가 write_item(X) 실행 후 Tj가 read_item(X)를 실행하는 경우
° Ti가 read_item(X) 실행 후 Tj가 write_item(X)를 실행하는 경우
° Ti가 write_item(X) 실행 후 Tj가 write_item(X)를 실행하는 경우

° 스케줄 S가 직렬 가능하다는 것은 선행그래프에서 사이클이 없다는 것의 필요충분조건이다

직렬가능성 보장프로토콜

° 2 Phase Locking
° Timestamping

회복가능
(Recoverable)

° 스케줄 S내에서 어떤 트랜잭션 T에 대해서도 T가 읽은 항목에 쓰기연산을 수행한 모든 트랜잭션 T'이 완료되기전까지 T가 완료되지 않는다면 S는 회복가능(Recoverable)하다고 말함
° 회복가능한 스케줄내에서는 완료된 트랜잭션은 복귀할 필요가 없다.


제글이 마음에 드셨다면, 망설이지 말고 RSS로 무료구독하세요. ^^

올블로그추천버튼 블코추천버튼 구글리더기구독버튼 한RSS구독버튼
blog comments powered by Disqus
Related Posts Plugin for WordPress, Blogger...
  1. Favicon of http://bestperfumeinfo.com 정부 2012/03/23 20:48  address modify / delete reply

    그것을 살 여유가 없습니다.