정보시스템감리/데이터베이스

(제 24회) 데이터베이스 / (51)~(75)

아이티신비 2024. 1. 2. 10:38

51. ISO 8000의 데이터 품질 기준 관련하여 다음 괄호안에 적합한 용어는?

( ) 오류는 데이터가 표준 코드 값 또는 표준 도메인 값에 위배될 경우 발생한다.

① 충분성 ② 사실성 ③ 적합성 ④ 필수성

 

52. 고정 길이 레코드 방식을 사용할 때, 레코드의 길이가 300 바이트, 블록의 크기가 4096 바이트, 블록 헤더의 길이가 12 바이트라고 가정한다. 다음 중 15개의 레코드를 저장하는 상황을 잘 표현 한 것은?

 

① 첫 번째 블록에는 196 바이트가 남는다.

② 두 번째 블록에는 3,484 바이트가 남는다.

③ 두 번째 블록에는 3,494 바이트가 남는다.

④ 두 번째 블록에는 3,784 바이트가 남는다.

 

53. 다음 ERD(Entity Relationship Diagram)에서 수퍼키(superkey)에 해당되지 않는 것은? (단, Registration과 Vehicle_id는 각각 후보키이다.)

① (State, Year, Model)

② (Vehicle_id, Number)

③ (Registration, State)

④ (Registration, Vehicle_id, Year)

 

54. 릴레이션 R과 S에 대하여 |R| = 7, |S| = 6이다. 다음 릴레이션 연산결과의 상한값 중 가장 작은 값은?

 

① |R∪S|

② |R∩S|

③ |R-S|

④ |R×S|

 

55. ER 모델의 약한 개체(weak entity)에 대한 설명으로 옳지 않은 것은?

 

① 자기 자신의 키 속성을 가지지 않는 개체 타입을 약한 개체 타입이라고 한다.

② 약한 개체를 강한 개체와 연결시키는 관계 타입을 식별 관계라고 부른다.

③ 약한 개체가 식별 관계에 대해 전체 참여 제약을 가질 필요는 없다.

④ 모든 존재 종속(existence dependency)이 약한 개체 타입이 될 필요는 없다.

 

56. 다음 ER 다이어그램을 관계 모델로 변환할 경우 릴레이션의 개수로 가장 적절한 것은? (단, ER 다이어그램의 이중선은 전체 참여를, 이중타원은 다치 속성을, 밑줄을 친 속성은 키 속성을 의미 한다.)


① 2 ② 3 ③ 4 ④ 5

 

57. 다음 뷰(view)의 변경 연산에 대해 적절하게 설명된 것을 모두 나열한 것은?

가. 두 개 이상의 테이블이 관련되어 정의된 뷰는 변경할 수 없다.
나. DISTINCT, GROUP BY가 사용되어 정의된 뷰는 변경할 수 없다.
다. 기본 테이블의 기본 키를 구성하는 속성이 포함 되어있지 않은 뷰는 변경할 수 없다.
라. 뷰의 열이 상수나 산술 연산자 또는 함수가 사용 된 산술식으로 만들어진 뷰는 변경할 수 없다.

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

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

 

58. 속성 X, Y, Z를 포함하는 릴레이션 R(X, Y, Z)에 존재하는 함수 종속(functional dependency)에서 항상 성립하는 추론 규칙으로 옳지 않은 것은?

 

① X ⊇ Y 이면 X → Y

② X → YZ 이면 X → Y 이고 X → Z

③ X → Y 이면 임의의 Z에 대해 XZ → YZ

④ XZ → YZ 이면 임의의 Z에 대해 X → Y

 

 

 

59. 다음 릴레이션 A(P, Q, R)와 B(Q, R, S)에 대해 결과 릴레이션 C(P, Q, R, S)가 나오도록 하는 관계 대수 연산으로 옳은 것은?


① A ⋈N B (자연 조인) ② A ⋈+ B (외부 조인)

③ A ⋉ B (세미 조인) ④ A ⋃+ B (외부 합집합)

 

60. EMPLOYEE 테이블의 Dno 열에 대해 다음과 같은 참조 무결성이 선언되었다고 할 때, 이와 관련된 설명으로 옳은 것은?

CONSTRAINT EmpDeptFK
FOREIGN KEY(Dno) REFERENCES DEPARTMENT(Dnumber)
ON DELETE SET DEFAULT
ON UPDATE CASCADE

① EMPLOYEE 테이블의 Dno 값이 삭제되면DEPARTMENT의 Dnumber 값은 디폴트 값으로 설정된다.

② EMPLOYEE 테이블의 Dno 값이 갱신되면 DEPARTMENT의 Dnumber 값도 그 값으로 갱신된다.

③ DEPARTMENT의 Dnumber 값이 삭제되면 EMPLOYEE테이블의 Dno 값은 NULL 값으로 설정된다.

④ DEPARTMENT의 Dnumber 값이 갱신되면 EMPLOYEE테이블의 Dno 값도 그 값으로 갱신된다.

 

61. 다음과 같은 함수 종속을 가진 릴레이션 R을 BCNF로 정규화한 결과로 옳은 것은? (단, 아래 지문에서 밑줄친 열은 기본키, 이탤릭체는 외래키를 의미한다.)

R(A, B, C, D)
함수종속 : A→(B, C, D), B→(A, C, D), D→C

① R1(A, B, D), R2(D, C)

② R1(A, B, C), R2(C, D)

③ R1(A, B, C), R2(B, D)

④ R1(A, C, D), R2(B, A)

 

62. 다음 Sailors, Boats, Reserves 3개의 릴레이션에서 질의 “color가 'red'인 Boat와 'green'인 Boat를 모두 reserve한 Sailor의 sname을 검색하라.”를 SQL로 나타낸 문장으로 옳은 것은? (단, Sailors, Boats, Reserves 릴레이션 각각의 기본 키는 sid, bid, (sid, bid)이다.)

Sailors(sid, sname, rating, age)
Boats(bid, bname, color)
Reserves(sid, bid, day)

① SELECT S.sname

FROM Sailors S, Reserves R, Boats B

WHERE S.sid = R.sid AND R.bid = B.bid AND

(B.color = 'red' OR B.color = 'green');

② SELECT S.sname

FROM Sailors S, Reserves R, Boats B

WHERE S.sid = R.sid AND R.bid = B.bid AND

(B.color = 'red' AND B.color = 'green');

③ SELECT S.sname

FROM Sailors S, Reserves R1, Boats B1,Reserves R2, Boats B2

WHERE S.sid = R1.sid AND R1.bid = B1.bid AND S.sid = R2.sid AND R2.bid = B2.bid AND B1.color = 'red' AND B2.color = 'green';

④ SELECT S.sname

FROM Sailors S, Reserves R, Boats B

WHERE S.sid = R.sid AND R.bid = B.bid AND B.color = 'red'

UNION

SELECT S2.sname

FROM Sailors S2, Boats B2, Reserves R2

WHERE S2.sid = R2.sid AND R2.bid = B2.bid AND B2.color = 'green';

 

63. 다음 STUDENT(학생)와 ENROLL(수강) 릴레이션에서“Cno가 ‘C413’인 과목을 수강한 학생의 Sname,Dept와 수강의 Grade를 검색하라.”는 질의를 SQL로 나타낸 문장으로 옳은 것은? (단, STUDENT와 ENROLL 릴레이션 각각의 기본 키는 Sno, (Sno, Cno)이다.)

STUDENT(Sno, Sname, Year, Dept)
ENROLL(Sno, Cno, Grade)

① SELECT Sname, Dept, Grade

FROM STUDENT JOIN ENROLL WITH(Sno)

WHERE ENROLL.Cno = 'C413';

② SELECT Sname, Dept, Grade

FROM STUDENT NATURAL JOIN ENROLL USING(Sno)

WHERE ENROLL.Cno = 'C413';

③ SELECT Sname, Dept, Grade

FROM STUDENT NATURAL JOIN ENROLL ON (STUDENT.Sno = ENROLL.Sno)

WHERE ENROLL.Cno = 'C413‘;

④ SELECT Sname, Dept, Grade

FROM STUDENT JOIN ENROLL ON (STUDENT.Sno = ENROLL.Sno)

WHERE ENROLL.Cno = 'C413';

 

64. 다음 그림은 트랜잭션 T1~T5에 대해 각각의 수행 시간을 표기하였다. 트랜잭션 수행 중 체크 포인트를 실시하였고, 그 이후 시스템이 다운되었다. 시스템이 재가동될 때 수행되는 회복 기능으로 가장 적절한 것은?

① T2, T4 트랜잭션은 재수행한다.

② T2, T4 트랜잭션은 취소한다.

③ T3, T4, T5 트랜잭션은 재수행한다.

④ T3, T4, T5 트랜잭션은 취소한다.

 

 

65. 다음은 릴레이션 EMPLOYEE와 DEPENDENT를 생성 하는 데이터 정의문이다. 두 릴레이션에 대해 “자신의 부양가족과 이름이 같은 직원의 이름 (Name)을 출력하라”를 처리하는 SQL 질의를 모두 나열한 것은?

CREATE TABLE EMPLOYEE (
Name VARCHAR(15) NOT NULL,
Ssn CHAR(9) NOT NULL,
PRIMARY KEY (Ssn) );
CREATE TABLE DEPENDENT (
Essn CHAR(9) NOT NULL,
Name VARCHAR(15) NOT NULL,
PRIMARY KEY(Essn, Name),
FOREIGN KEY(Essn) REFERENCES EMPLOYEE(Ssn) );
가. SELECT E.Name
FROM EMPLOYEE AS E
WHERE E.Ssn IN (SELECT Essn FROM DEPENDENT AS D WHERE E.Name=D.Name );
나. SELECT E.Name
FROM EMPLOYEE AS E
WHERE EXISTS (SELECT * FROM DEPENDENT AS D
WHERE E.Ssn=D.Essn AND E.Name=D.Name );
다. SELECT E.Name
FROM EMPLOYEE AS E, DEPENDENT AS D
WHERE E.Ssn=D.Essn AND E.Name=D.Name;

① 가, 나 ② 가, 다

③ 가, 다 ④ 가, 나, 다

 

66. 다음 그림은 트랜잭션의 동시성 제어에서 격리성(isolation)을 나타내는 예로써, 트랜잭션 T1, T2가 ➀~➄ 순서대로 수행할 때 생길 수 있는 현상으로 가장 적절한 것은?

T1
T2
➀ SELECT 도시, COUNT(*)
FROM 고객
GROUP BY 도시;










➃ SELECT 나이, COUNT(*)
FROM 고객
GROUP BY 나이;
➄ COMMIT;
➁ INSERT INTO 고객
(고객번호, 이름, 도시, 나이)
VALUES (3, ‘김민재’,
‘통영’, 27);
➂ COMMIT;

① 오손 데이터 읽기(dirty read)

② 유령 데이터 읽기(phantom read)

③ 연쇄 데이터 읽기(cascading read)

④ 직렬 데이터 읽기(serializable read)

 

67. 동시성 제어(concurrency control)의 로킹(locking) 단위에 대한 다음 설명 중 옳은 것을 모두 나열한 것은?

가. 로킹 단위가 작아지면 동시성(병행) 수준은 낮아진다.
나. 데이터베이스, 파일, 레코드 등은 로킹 단위가 될 수 있다.
다. 로킹 단위가 작아지면 일반적으로 로킹 오버 헤드가 증가한다.
라. 한꺼번에 로킹할 수 있는 데이터의 크기를 로킹 단위라 한다.

① 가, 다 ② 가, 나, 라

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

 

68. 로킹 규약 중에서 strict 2단계 로킹 규약(strict 2PLP)에 해당하는 설명으로 가장 적절한 것은?

 

① 데이터 항목에 대해 read나 write 연산을 하려면 반드시 lock을 걸고 트랜잭션 실행을 종료하기 전에 unlock을 수행

② 로크를 걸기만 하는 확장 단계와 로크를 풀기만하는 축소 단계로 구성

③ 로킹이 2단계일 뿐 아니라 모든 독점 로크는 그 트랜잭션이 완료될 때까지 unlock하지 않고 그대로 유지

④ 로킹이 2단계일 뿐 아니라 모든 로크는 그 트랜잭션이 완료될 때까지 unlock하지 않고 그대로 유지

 

69. 대표적인 분산 파일 시스템인 HDFS(Hadoop Distributed File System)는 여러 노드(node) 로 구성되어 있다. 다음의 (가), (나)에 들어 갈 노드 이름으로 가장 옳은 것은?

⦁ (가)는 메타정보를 관리하며 데이터 블록들이 어느 (나)에 있는지를 유지한다.
⦁ (나)는 실제 데이터 블록을 저장하고 클라이언트에 이를 제공한다.
⦁ Secondary (가)는 primary (가)가 고장(fail)일 때를 대비하는 백업 노드이다.

① (가) master node, (나) data node

② (가) name node, (나) data node

③ (가) master node, (나) slave node

④ (가) name node, (나) slave node

 

70. 다음 SQL 구문은 테이블 STUDENT에 대한 SELECT와 UPDATE 권한을 admuser에게 부여하는 기능을한다.그런데 이때 권한을 부여받은 admuser가 다른 사용자에게 SELECT나 UPDATE 권한을 다시 부여할 수 있도록 하기 위해서 (가)에 들어갈 구문으로 가장 옳은 것은?

GRANT SELECT, UPDATE ON STUDENT TO admuser (가);

① WITH OPTION GRANT ② WITH OPTION REGRANT

③ WITH GRANT OPTION ④ WITH REGRANT OPTION

 

71. 분산 데이터베이스 시스템에서 분산 투명성에 대한 설명으로 적절하지 않은 것은?

 

① 데이터의 실제 저장 위치를 알 필요 없이 데이터베이스의 논리적 이름만으로 데이터에 접근할 수 있는 위치 투명성(location transparency)을 보장해야 한다.

② 분산 데이터베이스와 관련된 트랜잭션들이 동시에 수행되더라도 항상 일관성을 유지하는 장애 투명성(failure transparency)을 보장해야 한다.

③ 동일한 데이터가 여러 지역에 중복해서 저장되는 경우 사용자가 중복을 인식하지 못하게 하는 중복 투명성(replication transparency)을 보장해야 한다.

④ 하나의 릴레이션을 더 작은 조각(단편)으로 나누고 각 조각을 별개의 릴레이션으로 처리할 때 완전성, 회복성, 분리성을 보장하는 단편화 투명성 (fragmentation transparency)을 보장해야 한다.

 

72. NoSQL 시스템의 특징을 표현하는 CAP 이론에 대한 설명으로 가장 적절하지 않은 것은?

① 복제본을 가지는 분산 시스템의 요구사항을 설명한다.

② 일관성(consistency), 가용성(availability), 분할 감내(partition tolerance) 성질을 의미한다.

③ NoSQL 시스템에서는 CAP의 세 가지 성질을 모두 보장할 것을 요구한다.

④ NoSQL 시스템에서는 보통 일관성의 완화된 형태인 궁극적 일관성(eventual consistency)을 수용한다.

 

73. 멀티미디어 데이터에 대한 다양한 유형의 검색 질의를 처리하기 위한 기법 중 “수학 함수로 저장된 데이터와 질의 조건으로 주어진 데이터 간의 유사도를 수학 함수로 계산하여 유사도가 높은 데이터를 검색한다.”는 어떤 기법을 설명 한 것인가?

 

① 랭킹 기법(ranking technique)

② 인덱스 기법(index technique)

③ 매칭 기법(matching technique)

④ 필터링 기법(filtering technique)

 

74. 다음 (가)부터 (라)는 관계형 데이터베이스와 NoSQL의 몇 가지 측면을 기술해 놓은 것이다. 이들 중 관계형 데이터베이스보다 비교적 NoSQL에 가까운 측면을 기술한 것을 모두 선택한 것으로 가장 적절한 것은?

(가) 스키마: 스키마가 없거나 변경이 자유롭다.
(나) 확장성: 클러스터 환경에 적합하다.
(다) 검색기능: 단순한 데이터 검색 기능을 제공한다.
(라) 트랜잭션: 일관성 유지를 보장하기 어렵다.

① 가, 라 ② 가, 나, 라

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

 

75. 다음은 k-Means 군집화(k-Means clustering) 알고리즘에 대한 설명이다. 옳은 것을 모두 나열 한 것은?

(가) 초기 중심점 선택에 따라 군집 결과가 달라 질 수 있다.
(나) 군집 모양이 구형(원형)이 아닐 경우에 다른 방법보다 잘 동작한다.
(다) 이상치(outlier)를 포함하고 있는 경우 잘 동작하지 않는다.

① 가, 나 ② 가, 다

③ 나, 다 ④ 가, 나, 다

 

 


 

 

 

정답)

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