본문 바로가기
IT★자격증/정보시스템감리사 기출문제 풀이

2022년 제 23회 정보시스템 감리사 기출문제 풀이 - 데이터베이스(61-65)

by 꼬모부 2024. 1. 12.
728x90
2022년 제 23회 정보시스템 감리사 데이터베이스 기출문제 풀이 61-65번까지 풀이를 진행하겠습니다.
도움이 되시길 바랍니다.

 

데이터베이스

 

문제 61
61. 다음과 같은 등록 데이터를 가지고 있는 ENROL 테 이블이 있다고 하자. 여기서, SNO, CNO, GRADE는 각각 학번, 과목번호, 성적을 의미한다.


위 테이블에 대해 다음과 같은 SQL문을 실행했을 때의 실행 결과 중 3번째 행으로 옳은 것은?
SELECT CNO, SNO FROM ENROL ORDER BY CNO DESC, GRADE ASC;

CNO SNO
① M001 1004
② M001 1001
③ E001 1004
④ C001 1004

 

출제의도

SQL의 ORDER BY 절을 이해하고, 여러 열을 기준으로 결과를 정렬하는 방법을 이해하는 것으로 보입니다. 이 문제를 통해, ORDER BY 절에서 열이 나열된 순서가 정렬 순서에 어떻게 영향을 미치는지 알 수 있습니다. 첫 번째 열이 동일한 경우, 두 번째 열이 정렬 순서를 결정합니다.

 

SQL문을 실행하면 아래와 같이 나옵니다.

CNO SNO
M001 1004
M001 1001
M001 1003
E001 1002
E001 1004
C001 1004
C001 1001
M002 1005

이 결과에서 3번째 행은 CNO가 'M001이고 SNO가 '1001인 레코드입니다.

 

각 문항에 대한 설명
① M001 1004:
CNO가 'M001인 레코드 중 GRADE가 가장 낮은 레코드를 나타냅니다. 이는 GRADE가 75인 레코드입니다.

② M001 1001:
CNO가 'M001인 레코드 중 GRADE가 두 번째로 낮은 레코드를 나타냅니다. 이는 GRADE가 80인 레코드입니다.

③ E001 1004:
CNO가 'E001인 레코드 중 GRADE가 가장 낮은 레코드를 나타냅니다. 이는 GRADE가 85인 레코드입니다.

④ C001 1004:
CNO가 'C001인 레코드 중 GRADE가 가장 낮은 레코드를 나타냅니다. 이는 GRADE가 70인 레코드입니다.

따라서 정답은 ② M001 1001입니다.

 

문제 62
62. 파일 조직의 유형인 비순서 히프파일(heap file)에 대한 평균 검색 비용(시간)을 알아보고자 한다. 레코드가 500,000개, 각 레코드의 길이가 100 바이트, 블록의 크기가 4,096 바이트, 한 블록을 읽는 데 걸리는 시간은 10 ms 인 매개변수가 주어진 경우, 주어진 특정 레코드를 찾기 위해 평균적으로 걸리는 시간에 가장 가까운 것은?

① 121,951 ms
② 125,000 ms
③ 62,500 ms
④ 31,250 ms

 

출제의도

비순서 히프파일(heap file)의 평균 검색 비용에 대한 이해를 검증하려는 것으로 보입니다. 히프파일은 레코드가 특정 순서 없이 저장되는 파일 조직 방식입니다. 따라서 특정 레코드를 찾기 위해서는 파일 전체를 검색해야 합니다.

 

각 문항에 대한 설명
문제에서 주어진 매개변수를 이용해 계산해보면, 블록 하나에 들어갈 수 있는 레코드 수는 블록 크기를 레코드 길이로 나눈 값이므로, 4096 바이트 / 100 바이트 = 40.96, 즉, 41개(소수점 이하 올림)입니다.

따라서 전체 블록 수는 레코드 수를 블록 당 레코드 수로 나눈 값이므로, 500,000 / 41 = 12,195.12, 즉, 12,196개(소수점 이하 올림)입니다. 평균적으로 특정 레코드를 찾기 위해서는 전체 블록의 절반 정도를 검색해야 하므로, 검색에 걸리는 시간은 전체 블록 수의 절반에 블록을 읽는 데 걸리는 시간을 곱한 값이 됩니다.

따라서 12,196 / 2 * 10 ms = 60,980 ms입니다. 정답은  ③ 62,500 ms입니다.

 

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

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

 

출제의도

검사시점 회복 기법의 작업 순서를 이해하고, 각 작업이 어떤 순서로 수행되는지를 파악하는 능력을 검증하는 것으로 보입니다. 이 문제를 통해, 데이터베이스 시스템에서의 회복 기법과 그 중요성에 대한 이해를 높일 수 있습니다. 이는 데이터베이스 관리 및 설계에 있어 중요한 개념입니다.

 

각 문항에 대한 설명
검사시점 회복(checkpoint recovery) 기법은 시스템 장애가 발생했을 때 데이터베이스를 일관된 상태로 복구하기 위한 방법입니다.

이 기법은 다음과 같은 순서로 진행됩니다:

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

따라서, 주어진 선택지 중에서 시간 순으로 옳게 나열된 것은 ④ 다, 나, 라, 가 입니다.

 

문제 64
64. 다음과 같은 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;

 

출제의도

SQL의 외부 조인(OUTER JOIN)에 대한 이해를 검증하는 것으로 보입니다. 이 문제를 통해, 외부 조인이 어떻게 작동하는지, 그리고 어떤 상황에서 사용되는지를 이해할 수 있습니다. 이는 데이터베이스 시스템에서 데이터를 조합하고 분석하는 데 중요한 기능입니다.

 

각 문항에 대한 설명
문제에서 주어진 실행 결과를 보면, 모든 학생들의 이름과 그들이 수강한 과목이 나열되어 있습니다. ‘Hong’ 학생은 어떤 과목도 수강하지 않았기 때문에, 그의 과목은 NULL로 표시됩니다. 이러한 결과를 얻기 위해서는 STUDENT 릴레이션을 기준으로 ENROL 릴레이션을 왼쪽 외부 조인(LEFT OUTER JOIN) 해야 합니다.

SELECT STUDENT.SNAME, ENROL.COURSE
FROM STUDENT
LEFT OUTER JOIN ENROL
ON STUDENT.SNO = ENROL.SNO;

따라서, 정답은 ②입니다.

 

문제 65
65. 데이터베이스 보안 기법 중 필수 접근 제어 (mandatory access control) 기법에 대한 설명으로 옳지 않은 것은?

① 각 데이터 객체에 적정 비밀 등급을 부여하고각 사용자도 허가 등급을 지정하여 데이터 객체가 적절한 허가 등급을 가진 사용자에 의해 서만 접근되도록 한다.
② 통상적인 보안 등급은 TS(극비), S(비밀), C(대 외비), U(일반)으로 나누는데 이들 간의 순서는 TS > S > C > U 가 된다.
③ 데이터 객체 j를 갱신하기 위해서는 사용자 i의 허가 등급이 데이터 객체 j의 비밀 등급보다 같거나 높아야 한다.
④ 이 필수 접근 제어 기법을 다단계 보안 기법 (multilevel security scheme)이라고도 한다.

 

출제의도

위 문제는 다시 공부하고 정리한 후에 다시 올리겠습니다.

 

각 문항에 대한 설명
정답은 ③ 데이터 객체 j를 갱신하기 위해서는 사용자 i의 허가 등급이 데이터 객체 j의 비밀 등급보다 같거나 높아야 한다. 입니다.

다음 시간에는 데이터베이스 기출문제 풀이 66-70번까지 풀이를 진행해 보겠습니다.
읽어 주셔서 감사합니다.
반응형
LIST