트랜잭션 T1, T2, T3가 다음과 같은 순서로 스케줄링 될 경우, … | [7급 국가직 데이터베이스론] 24년 1회차 기출문제 상세 페이지
1[7급 국가직 데이터베이스론] 24년 1회차
트랜잭션 T1, T2, T3가 다음과 같은 순서로 스케줄링 될 경우, 이와 동치인 직렬 스케줄은?
| 시간 | T1 | T2 | T3 |
|---|---|---|---|
| ↓ | read(y) | ||
| read(z) | |||
| read(x) | |||
| write(x) | |||
| write(y) | |||
| write(z) | |||
| read(z) | |||
| read(x) | |||
| read(y) | |||
| write(y) |
1
T1 → T2 → T3
2
T1 → T3 → T2
3
T2 → T1 → T3
4
동치인 직렬 스케줄이 없음
해설
충돌 연산의 선후 관계가 모두 한 방향이어서 이 스케줄은 직렬 스케줄과 충돌 동치다.
충돌 쌍을 찾으면 다음과 같다.
y: 의 read(y)·write(y)가 의 read(y)·write(y)보다 먼저 →
z: 의 write(z) 뒤에 의 read(z) →
x: 의 write(x) 뒤에 의 read(x) →선행 그래프에 사이클이 없고 위상 정렬 결과는 하나뿐이다.
- : x에 대한 충돌로 가 보다 앞서야 한다.
- : y에 대한 충돌로 이 보다 앞서야 한다.
- 동치인 직렬 스케줄 없음: 사이클이 없으므로 충돌 직렬 가능하다.
오류나 개정된 내용이 보이면 알려주세요