51. 뷰의 장점을 설명하는 것 중 가장 거리가 먼 것은?
① 테이블 구조가 변경되어도 뷰를 사용하는 응용 프로그램은 변경하지 않아도 된다.
② 뷰를 생성함으로써 복잡한 질의를 단순하게 작성할 수 있다.
③ 직원의 급여 정보 같은 숨기고 싶은 정보가 존재한다면 해당 칼럼을 빼고 뷰를 생성하여 사용한다.
④ 서버에 저장되는 컴포넌트로 독립적으로 실행되거나 다른 프로그램으로부터 실행된다.
52. 다음은 어느 회사의 데이터베이스 구축을 위한 ER 다이어그램 설계 내용이다. ER 다이어그램을 데이터베이스 테이블로 변환할 때 생성되는 테이블의 가장 적절한 개수는?
|
① 3-4개 ② 5-6개 ③ 7-8개 ④ 9-10개
53. 다음과 같은 함수적 종속성 집합에 대한 설명 중 틀린 것은?
① 함수적 종속성 집합 { A → { B, C, D, E }, E → { F, G } }로부터 A → { F, G }를 추론할 수 있다.
② 함수적 종속성 집합 { A → B, C → { D, E }, { A, C }→ F } 로부터 폐포집합 { A }+ = { A, B }를 구할 수 있다.
③ 다음 두 함수적 종속성 집합 F = { A → C, AC → D, E→ AD, E → H }와 G = { A → CD, E → AH }는 동등하다.
④ 함수적 종속성 집합 { B → A, D → A, AB → D }에 대한최소 커버는 { B → A, D → A }이다.
54. 다음과 같이 선언된 테이블 MYTABLE에서 슈퍼키의 개수는?
|
① 2 ② 3 ③ 4 ④ 5
55. 다음은 릴레이션 R1, R2와 SQL 질의문이다. SQL 문에 대한관계대수 연산으로 가장 적합한 것은? (⋈은 자연조인,⟕은 왼쪽 외부조인 기호)
|
① πr1name (R1 ⟕ r1name = r2name (R2))
② πr1name (R2 - R1)
③ πr1name (R1 ⋈ r1name = r2name (R2))
④ πr1name (R1 - R2)
56. SQL Injection을 줄이기 위한 방법 중 가장 거리가 먼 것은?
① 저장 프로시저 사용을 가능한 줄이도록 한다.
② 입력 데이터가 허용되는 타입에 한하여 허용한다.
③ 인용부호에 대한 체크를 통하여 인젝션 가능성을 제거한다.
④ 웹접근 코드가 접근하는 데이터베이스의 경우 꼭 필요한 접근권한 만을 부여한다.
57. 수강신청 데이터를 저장한 릴레이션 ENROLL에서 강좌번호(COURSEID) 100과 101번 강좌를 모두 수강 신청한 학생의 학번을 찾는 SQL 질의로 틀린 것은?
ENROLL(COURSEID, STUDENTID, TIME)
|
① SELECT STUDENTID
FROM ENROLL E1, ENROLL E2
WHERE E1.STUDENTID=E2.STUDENTID AND
E1.COURSEID=100 AND E2.COURSEID=101
② SELECT STUDENTID
FROM ENROLL E
WHERE E.COURSEID=100
INTERSECT
SELECT STUDENTID
FROM ENROLL E
WHERE E.COURSEID=101
③ SELECT STUDENTID
FROM ENROLL E
WHERE E.COURSEID =100 AND
STUDENTID IN (SELECT STUDENTID
FROM ENROLL WHERE COURSEID=101)
④ SELECT STUDENTID
FROM ENROLL E
WHERE E.COURSEID=100 AND E.COURSEID=101
58. 다음 SQL 문과 질의에 대한 결과 값으로 맞는 것은?
|
③ 6, 2, 0 ④ 6, 3, 1
59. 다음의 데이터베이스에서“3명 이상의 사원이 근무하는 각 부서에서 부서 번호, 부서 이름, 그리고 그 부서에서 연봉이 4만불 이상인 사원의 수를 검색하라”는 질의를 SQL로 올바르게 표시한 것은?
|
① SELECT Dnumber, Dname, COUNT(*)
FROM DEPARTMENT, EMPLOYEE
WHERE Dnumber = Dno AND
Salary >= 40000 AND
Dno IN (SELECT Dno
FROM EMPLOYEE
GROUP BY Dno
HAVING COUNT(*) > 2)
GROUP BY Dnumber;
② SELECT Dnumber, Dname, COUNT(*)
FROM DEPARTMENT, EMPLOYEE
WHERE Dnumber = Dno AND
Salary >= 40000 AND
COUNT(*) > 2
GROUP BY Dnumber, Dname;
③ SELECT Dnumber, Dname, COUNT(*)
FROM DEPARTMENT, EMPLOYEE
WHERE Dnumber = Dno AND
Salary >= 40000 AND
Dno IN (SELECT Dno
FROM EMPLOYEE
GROUP BY Dno
HAVING COUNT(*) > 2)
GROUP BY Dnumber, Dname;
④ SELECT Dnumber, Dname, COUNT(*)
FROM DEPARTMENT, EMPLOYEE
WHERE Dnumber = Dno AND
Dno IN (SELECT Dno
FROM EMPLOYEE
WHERE Salary >= 40000
GROUP BY Dno
HAVING COUNT(*) > 2)
GROUP BY Dnumber, Dname;
60. EMPLOYEE(Eno, Name, DeptName, Salary) 테이블에 대해 “평균 봉급이 가장 높은 부서명(DeptName)을 검색” 하는 질의를 다음과 같이 작성한다고 할 때, 밑줄 친 부분에 들어갈 내용으로 맞는 것은?
|
① WHERE Salary all ORDER BY
② WHERE AVG(Salary) some GROUP BY
③ HAVING Salary some ORDER BY
④ HAVING AVG(Salary) all GROUP BY
61. 인덱스의 생성 여부를 결정하기 위해 고려할 사항에 대한 설명이 잘못된 것은? (2개 선택)
① 유일한 키 속성에 대해서는 인덱스를 생성한다.
② 실렉션 조건이나 조인 조건에서 사용되는 속성에 대해서는인덱스를 생성한다.
③ 인덱스 탐색만을 통해 답변이 가능한 질의에 대해서는클러스터 인덱스를 고려한다.
④ 동등 조건과 범위 질의에 사용되는 속성에 대해서는 해시 인덱스가 유리하다.
62. EMPLOYEE(Eno, Name, Salary, CommissionPercent) 테이블에
대한 다음과 같은 질의가 있다.
|
이러한 유형의 질의의 경우 실행 빈도가 높을 가능성이 많지만 Salary 열에 대한 인덱스가 존재한다고 하더라도 제대로 이용 하지 못할 것이다. 이러한 경우에 활용할 수 있는 가장 적절한 인덱싱 기법은?
① Bitmap indexing
② Function-based indexing
③ Hash indexing
④ R-tree indexing
63. 트랜잭션 T1, T2가 수행되는 다음 그림에서, T1의 연산결과(x + 100)가 T2의 연산 결과(x * 2)로 인해 바르게저장되지 않는 현상이 발생할 수 있다. 이 같은 현상을무엇이라고 하는가?
|
① 갱신 손실(lost update)
② 오손 읽기(dirty read)
③ 지연 갱신(deferred update)
④ 갱신 충돌(update conflict)
64. 트랜잭션 T1은 x와 y에 100을 더하고, 트랜잭션 T2는 y와 x에2를 곱하는 트랜잭션이다. 두 트랜잭션이 다음과 같은 순서로 실행이 되었을 때 발생한 상황은?
|
① 갱신 손실(lost update)
② 교착 상태(deadlock)
③ 오손 읽기(dirty read)
④ 철회(rollback)
65. 데이터 마이닝 분석기법과 관련된 이론을 가장 적절하게 연결한 것은?
① 지지도(support) - 인공신경망
② 시그모이드(sigmoid) 함수 - 의사결정트리
③ 맨하튼 거리(manhattan distance) - 군집분석
④ 엔트로피(entropy) - 연관분석
66. 다음 두 릴레이션 R과 S에 대해 조인 연산을 수행했다 고 할 때, 이 연산의 조인 선택률(join selectivity)은?
|
① 1 ② 4/9 ③ 5/9 ④ 5
67. 물리적 데이터베이스 설계 단계에서 색인 구조를 결정하는데 도움이 되는 지침으로 틀린 것은?
① 한 애트리뷰트에 들어 있는 상이한 값들의 개수가 전체레코드의 수와 비슷하고 검색에서 해당 애트리뷰트에대한 동등 조건이 사용된다면 비클러스터링(non-clustering)색인을 생성하는 것이 좋다.
② 갱신이 빈번하게 이루어지는 릴레이션에 대해서 색인을많이 생성하여 갱신의 효율성을 증진할 수 있다.
③ 가능하면 정수형 애트리뷰트에 색인을 만드는 것이 좋고반대로 VARCHAR 데이터 타입을 갖는 애트리뷰트에는 색인을 만드는 것을 피해야 한다.
④ 대량의 데이터를 삽입할 때는 모든 색인들을 제거하고데이터 삽입이 끝난 후에 색인들을 다시 생성하는 것이효율적이다.
68. 질의 최적화 기법에 대한 설명으로 틀린 것은?
① 주기억장치보다 더 큰 용량의 데이터에 대하여 SQL의 order by 절을 수행하기 위해서는 정렬-합병 전략의 외부 정렬을 수행해야 한다.
② 관계대수의 실렉트 연산을 수행하기 위해서는 데이터베 이스 전체를 읽어들이는 파일 스캔 탐색이나 인덱스를 활용한 인덱스 스캔 탐색을 수행한다.
③ 두 릴레이션 R과 S에 대하여 조인 연산을 수행할 때, R과 S의 레코드들이 조인 애트리뷰트 A와 B값에 물리적으로 정렬되어 있으면 분할-해시 조인이 가장 효율적으로 구현될 수 있다.
④ 외부 조인은 중첩 루프 조인이나 단일 루프 조인 알고리즘 중 하나를 수정하여 구현할 수 있다.
69. 사용자 U1이 생성한 EMPLOYEE(Eno, Name, Salary) 테이블에 대해 다음의 SQL 명령을 순서대로 실행할 때, 권한 부여 에러가 발생하는 위치를 모두 모아놓은 것은?
|
① 2, 3, 5 ② 3, 5, 10
③ 3, 5, 9, 10 ④ 3, 5, 8, 9, 10
70. 트랜잭션 T1, T2, T3에 대하여 스케줄 s1, s2 중에서 충돌 직렬 가능한(conflict serializable) 것은?
|
① s1 ② s2 ③ s1, s2 ④ 없음
71. 다음 그림은 의사결정 트리(decision tree)를 구축하는데 있어서, 분리되기 전 노드(P)와 분리된 후 노드(C1, C2)의 상태를 나타낸다. 그림에서 N()은 노드에 속한 엔트리 개수, E()는 해당 노드의 엔트로피(entropy)를 나타낸다 고 할 때, 노드 분리에 따른 정보 이득(information gain)은?
|
① 0.54 ② 0.40 ③ 0.30 ④ 0.16
72. 대용량의 데이터 처리의 필요성이 커짐에 따라 NoSQL 기술에 대한 수요도 증가하고 있다. 관계형 데이터베이스와 비교했을 때, NoSQL의 특징에 대한 설명으로 가장 적절한 것은?
① 각 데이터가 독립적으로 설계되어 있어 데이터를 여러 서버에 분산하여 작업하며 다양한 조인 연산도 지원한다.
② NoSQL 데이터베이스는 키-값형 스토어, 문서형 데이터베이스, 컬럼형 데이터베이스, 그래프 데이터베이스 등으로 구분할 수 있다.
③ MongoDB는 문서형 데이터베이스로서, 문서(document)는 관계형 데이터베이스의 테이블을 구성하는 열들의 집합에 해당한다.
④ 대부분의 NoSQL에서는 비정형 대용량의 데이터를 다루므로, 관계형 데이터베이스에서 활용되던 인덱스 구조를 사용하지 않는다.
73. 분산 데이터베이스 설계에서 분할(fragmentation)에 관한 설명 중 가장 거리가 먼 것은?
① 응용에 필요한 데이터들을 모아서 필요한 곳에 가까이 저장하기 위해 분할이 필요하다.
② 분할의 방법에는 수직 분할, 수평 분할, 혼합 분할 방법이 있다.
③ 분할 이전의 전역 릴레이션에 포함된 튜플은 분할 후 반드시 한 개의 분할 단편에 포함되어야 한다.
④ 모든 분할 방법에 대해 조인 연산을 이용하여 분할 이전과 동등한 결과를 얻을 수 있어야 한다.
74. 데이터마이닝 분류 분석을 위한 다음 오분류표의 평가 지표에 대한 설명으로 가장 거리가 먼 것은?
|
① 민감도(sensitivity) – TP / P
② 특이도(specificity) – TN / N
③ 정확도(precision) – TP / (TP + FP)
④ 재현률(recall) – TP / (TP + TN)
75. Google의 PageRank 알고리즘과 관련하여 3개의 웹사이트가 다음 그림과 같이 연결되어 있다고 하자. 이 웹에 대한 전이 행렬(transition matrix) M의 i번째 행, j번째 열의 원소 mij는 다음과 같이 정의된다. 전이 행렬 M에서 그 값이 1/2인 원소의 개수와 1인 원소의 개수를 올바르게 나열한 것은?
- 페이지 j가 페이지 i에 대한 링크를 가지고 있고 j가 링크한 전체 페이지 수가 r(≥1) 페이지일 때 mij = 1/r
- 그렇지 않으면 mij = 0 |
|
① 2, 1 ② 3, 2 ③ 4, 1 ④ 5, 0
정답)
51
|
52
|
53
|
54
|
55
|
④
|
②
|
④
|
④
|
③
|
56
|
57
|
58
|
59
|
60
|
①
|
④
|
①
|
③
|
④
|
61
|
62
|
63
|
64
|
65
|
③,④
|
②
|
①
|
②
|
③
|
66
|
67
|
68
|
69
|
70
|
③
|
②
|
③
|
②,③
|
①
|
71
|
72
|
73
|
74
|
75
|
④
|
②
|
④
|
④
|
③
|
'정보시스템감리 > 데이터베이스' 카테고리의 다른 글
(제 16회) 데이터베이스 / (51)~(75) (0) | 2024.01.10 |
---|---|
(제 17회) 데이터베이스 / (51)~(75) (1) | 2024.01.09 |
(제 19회) 데이터베이스 / (51)~(75) (1) | 2024.01.07 |
(제 20회) 데이터베이스 / (51)~(75) (2) | 2024.01.05 |
(제 21회) 데이터베이스 / (51)~(75) (1) | 2024.01.04 |