정보시스템 감리 기출해설/데이터베이스 해설

(제 23회) 데이터베이스 / (63)~(64) 해설

아이티신비 2024. 9. 30. 09:00

63. 다음은 검사시점 회복(checkpoint recovery) 기법에서 진행되는 주요 작업들을 설명한 것이다. 적용 순서가 시간 순으로 옳게 나열된 것은?

 
가. REDO-list에 있는 트랜잭션에 대해 REDO 연산을 수행한다.
나. <T, Commit> 로그 레코드를 만나면 트랜잭션 T를UNDO-list에서 삭제하고 REDO-list에 첨가한다.
다. 변경된 데이터 버퍼 블록을 전부 디스크로 출력시킨다.
라. UNDO-list에 있는 모든 트랜잭션들에 대해 UNDO 연산을 수행한다.

① 나, 가, 라, 다 ② 나, 라, 가, 다

③ 다, 나, 가, 라 ④ 다, 나, 라, 가

 

▣ 해설

4 가. REDO-list에 있는 트랜잭션에 대해 REDO 연산을 수행한다.

2 나. <T, Commit> 로그 레코드를 만나면 트랜잭션 T를UNDO-list에서 삭제하고 REDO-list에 첨가한다.

1 다. 변경된 데이터 버퍼 블록을 전부 디스크로 출력시킨다.

3 라. UNDO-list에 있는 모든 트랜잭션들에 대해 UNDO 연산을 수행한다.

 

● 검사시점(Checkpoint) 회복

  • 개념 : 트랜잭션을 수행하는 동안 로그를 유지하면서 일정한 시간 간격으로 검사시점을 두어 회복 처리
  • 검사시점에서 행해지는 연산

단계1 : 트랜잭션의 수행을 일시 중단

단계2 : 모든 메인 메모리 내의 수정된 버퍼들을 안전저장소로 강제 출려

단계3 : 로그에 (checkpoint) 레코드를 기록하고 로그를 디스크로 강제출력

단계4 : 트랜잭션의 수행을 재시작

 

  • 검사시점(checkpoint) 설명

1) 체크포인트 수행 : 주기억 장치의 버퍼 내용이 디스크에 강제로 기록

2) DBMS 는 회복시 재수행할 트랜잭션의 수를 줄이기 위해서 주기적으로 체크포인트 수행

3) 체크포인트 주기에 따라 DBMS 성능에 영향을 미침

- 체크포인트 주기가 짧아질수록 회복시 Undo/Redo 대상 프랜잭션이 줄어 빠른 회복이 가능하고, 필요 버퍼

공간도 줄일 수 있으나, DBMS 운영 중 디스크 I/O 비용은 늘어남

 

정답 : ④

 

 

64. 다음과 같은 STUDENT 릴레이션과 ENROL 릴레이션이 있다고 하자.

STUDENT


ENROL


다음과 같은 실행 결과가 나오는 SQL 질의문으로 옳은 것은?


① SELECT STUDENT.SNAME, ENROL.COURSE

FROM ENROL INNER JOIN STUDENT

ON ENROL.SNO = STUDENT.SNO;

② SELECT STUDENT.SNAME, ENROL.COURSE

FROM STUDENT LEFT OUTER JOIN ENROL

ON STUDENT.SNO = ENROL.SNO;

③ SELECT STUDENT.SNAME, ENROL.COURSE

FROM ENROL LEFT OUTER JOIN STUDENT

ON ENROL.SNO = STUDENT.SNO;

④ SELECT STUDENT.SNAME, ENROL.COURSE

FROM STUDENT RIGHT OUTER JOIN ENROL

ON STUDENT.SNO = ENROL.SNO;

 

▣ 해설

STUDENT
ENROL
SNO
SNAME
AGE
ENO
SNO
COURSE
S001
Kim
20
E001
S001
자료구조
S002
Park
22
E002
S001
알고리즘
S003
Lee
21
E003
S002
자료구조
S004
Hong
23
E004
S003
알고리즘
-
E005
S003
프로그래밍
E006
S003
데이터베이스
 
SNAME
COURSE
데이터값이 일반적인 inner 조인을 했을 경우
결과값에 Hong NULL 이 추가되어 있음


등록에 없는 student 를 표현하기 위해 Left outer 조인으로 조인함


SELECT STUDENT.SNAME, ENROL.COURSE
FROM STUDENT LEFT OUTER JOIN ENROL
ON STUDENT.SNO = ENROL.SNO
Kim
자료구조
Kim
알고리즘
Park
자료구조
Lee
알고리즘
Lee
프로그래밍
Lee
데이터베이스
Hong
NULL

정답 : ③

 

 


 

공감과 댓글은 아이티신비에게 큰 힘이 됩니다.

블로그 글이 유용하다면 블로그를 구독해주세요.♥