다음은 4개의 트랜잭션 T1, T2, T3, T4에 대하여 시스템 고장(crash) 시점에 특정 스케줄에 대응하는 로그를 나타낸 것이다. 이 시스템은 로그를 이용한 회복기법으로 검사점(checkpoint)을 가진 즉시갱신규약(immediate update protocol)을 사용한다고 가정한다. 시스템 고장으로부터 회복(recovery)하는 과정에서 undo와 redo 연산들을 수행하게 된다. 회복 후 데이터 항목 A, B, C, D 값들을 바르게 연결한 것은? (단, 로그 레코드 구조는 <트랜잭션, 데이터 항목, 현재 값, 변경 값>이다)
로그 번호 | 로그 레코드 |
1 | <T1 start> |
2 | <T1, D, 20, 25> |
3 | <T1 commit> |
4 | <checkpoint {}> |
5 | <T2 start> |
6 | <T2, B, 12, 18> |
7 | <T4 start> |
8 | <T4, D, 25, 15> |
9 | <T3 start> |
10 | <T3, C, 30, 40> |
11 | <T4, A, 30, 20> |
12 | <T4 commit> |
13 | <T2, D, 15, 25> |
시스템 고장 |
A B C D
- ①30 12 30 20
- ②20 18 40 25
- ③30 18 40 15
- ④20 12 30 15
선지를 골라 바로 채점해 보세요.
정답 ④
출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)