11. 릴레이션 R의 차수(Degree)가 3, 카디널리티가 3, 릴레이션 S의 차수가 4, 카디널리티가 4일 때, 두 릴레이션을 카티션 프로덕트한 결과 릴레이션 차수와 카디널리티는?
가. 4, 4
나, 7, 7
다. 7, 12
라. 12, 12
풀이
카티션 프로덕트, 즉 교차곱은 두 릴레이션의 차수는 더하고 카디널리티는 곱하면 된다.
12. 시스템 카탈로그에 대한 설명으로 옳지 않은 것은?
가. 시스템 카탈로그는 DBMS가 스스로 생성하고 유지한다.
나. 시스템 카탈로그는 시스템 테이블이기 때문에 일반 사용자는 내용을 검색할 수 없다.
다. 시스템 카탈로그에 저장된 정보를 메타 데이터라고 한다.
라. 시스템 카탈로그를 자료 사전이라고도 한다.
풀이
시스템 카탈로그 자체도 테이블로 구성되어 있어 일반 사용자도 SQL을 이용하여 내용을 검색해 볼 수 있다(단, 수정은 불가능).
시스템 카탈로그
- 시스템 그 자체에 관련이 있는 다양한 객체에 관한 정보를 포함하는 시스템 데이터베이스이다.
- 데이터베이스에 포함되는 모든 데이터 객체애 대한 정의나 명세에 관한 정보를 유지관리하는 시스템 테이블이다.
- 데이터 정의어의 결과로 구성되는 기본 테이블, 뷰, 인덱스, 패키지, 접근 권한 등의 데이터베이스 구조 및 통계 정보를 저장한다.
- 카탈로그들이 생성되면 자료 사전에 저장되기 때문에 좁은 의미로는 카탈로그를 자료 사전이라고도 한다.
- 카탈로그에 저장된 정보를 메타 데이터라고 한다.
시스템 카탈로그의 특징
- 카탈로그 자체도 시스템 테이블로 구성되어 있어 일반 사용자도 SQL을 이용하여 내용을 검색해 볼 수 있다(단, INSERT, DELETE, UPDATE문으로 갱신은 불가능).
- DBMS가 스스로 생성하고 유지한다.
- 카탈로그는 사용자가 SQL문을 실행시켜 기본 테이블, 뷰, 인덱스 등에 변화를 주면 시스템이 자동으로 갱신된다.
13. 파일 조작 기법 중 순차 파일에 대한 설명으로 옳지 않은 것은?
가. 파일 탐색시 효율이 우수하며, 대화형 처리에 적합하다.
나. 레코드가 키 순서대로 편성되어 취급이 용이하다.
다. 연속적인 레코드의 저장에 의해 레코드 사이에 빈 공간이 존재하지 않으므로 기억장치의 효율적인 이용이 가능하다.
라. 필요한 레코드를 삽입, 삭제, 수정하는 경우 파일을 재구성해야 하므로 파일 전체를 복사해야한다.
풀이
순차 파일 or 순서 파일(Sequential File)
- 입력되는 데이터들을 논리적인 순서에 따라 물리적 연속 공간에 순차적으로 기록하는 방식이다.
- 급여 관리 등 변동 사항이 크지 않고 기간별로 일괄 처리를 주로 하는 경웨 적합하다.
- 주로 순차 접근만 가능한 자기 테이프에서 사용된다.
순차 파일의 장단점
장점 : 파일 구성 용이, 기억 공간의 이용효율 증대, 레코드만 저장하고 부가적인 정보는 저장하지 않으므로 공간의 낭비 방지, 물리적으로 연속된 공간에 저장되므로 접근속도가 빠름, 어떠한 기억장치에서도 실현 가능
단점 : 파일에 새로운 레코드를 삽입하거나 삭제하는 경우 파일 전체를 복사 한 후 수행해야 하므로 시간이 많이 걸림, 파일의 특정 레코드를 검색하려면 순차적으로 모든 파일을 비교하면서 검색해야 하므로 검색 효울이 낮음
14. 이진 검색 알고리즘의 특징이 아닌것은?
가. 탐색 효율이 좋고 탐색 시간이 적게 소요된다.
나. 검색할 데이터가 정렬되어 있어야 한다.
다. 피보나치 수열에 따라 다음에 비교할 대상을 선정하여 검색한다.
라. 비교 회수를 거듭할 때 마다 검색 대상이 되는 데이터의 수가 절반으로 줄어든다.
풀이
피보나치 수열에 따라 다음에 비교할 대상을 선정하여 검색하는 것은 피보나치 검색이다.
15. 인덱스 순차 파일의 인덱스 영역 중 다음 설명에 해당하는 것은?
인덱스 영역의 첫 번째 테이블로서 실린더 인덱스 정보가 많은 때 그것을 효율적으로 탐색하기 위하여 만든 인덱스 순차파일에서의 최상위 인덱스로서 일정한 크기의 블록으로 블록화하여 처리하고자 하는 데이터 레코드가 어느 실린더에 인덱스 영역에 기록되어 있는지를 나타낸다.
가. 기본 데이터 영역
나. 트랙 인덱스 영역
다. 실린더 인덱스 영역
라. 마스터 인덱스 영역
풀이
색인 구역(Index Area)은 세가지로 구분된다.
트랙 색인 영역(Track)
- 기본 구역의 한 트랙상에 기록되어 있는 데이터 레코드 중의 최대 키값과 주소가 기록되는 색인으로, 한 실린더당 하나씩 만들어진다.
- 처리할 레코드가 실제로 어느 트랙에 기록되어 있는지를 판별할 수 있게 한다.
실린더 색인 영역(Cylinder)
- 각 트랙 색인의 최대 키값과 해당 레코드가 기록된 실린더의 정보가 기록되는 색인으로, 한 파일 당 하나씩 만들어 진다.
마스터 색인 영역(Master)
- 실린더 색인 구역의 정보가 많을 경우 그것을 일정한 크기의 블록으로 구성하는데, 이때 해당 레코드가 어느 실린더 색인 구역에 기록되어 있는 지를 기록한다.
16. 데이터베이스 설계 단계 중 저장 레코드 양식 설계, 레코드 집중의 분석 및 설계, 접근 경로와 관계 된 것은?
가. 논리적 설계
나. 요구 조건 분석
다. 물리적 설계
라. 개념적 설계
풀이
개념적 설계(정보 모델링, 개념화)
- 정보의 구조를 얻기 위해 현실 세계의 무한성을 이해하고, 다른 사람과 통신하기 위해 현실 세계에 대한 인식을 추상적 개념으로 표현하는 과정이다.
- 스키마 모델링과 트랜잭션 모델링을 병행하여 수행한다.
- 요구 분속 단계에서 나온 결과를 DBMS에 독립적인 E-R 다이어그램(개체관계성도)으로 작성한다.
- DBMS에 독립적인 개념 스키마를 설계한다.
논리적 설계(데이터 모델링)
- 현실 세계에서 발생하는 자료를 컴퓨터가 처리할 수 있도록 변환하기 위해, DBMS가 지원하는 논리적인 자료로 변환 시키는 과정이다.
- 개념 설계의 데이터를 필드로 기술된 데이터 타입과 그 타입들 간의 관계로 표현되는 논리적 구조의 데이터로 모델화 한다.
- 개념적 설계가 개념 스키마를 설계하는 단계라면 논리적 설계에서는 개념 스키마를 평가 및 정제하고 특정 DBMS에 종속적인 논리적 스키마를 설계하는 단계이다.
- 트랜잭션의 인터페이스를 설계한다.
- 관계형 데이터베이스라면 테이블을 설계하는 단계이다.
물리적 설계(데이터 구조화)
- 논리적인 설계 단계에서 논리적 구조로 표현된 데이터를 물리적 저장장치에 저장할 수 있도록 변환하는 과정이다.
- 데이터베이스 파일의 저장 구조, 레코드 형식, 접근경로와 같은 정보를 사용하여 데이터가 컴퓨터에 저장되는 방법을 묘사한다.
- 트랜잭션을 작성한다.
- 물리적 설계 단계에 꼭 포함되어야 할 것은 저장 레코드의 양식 설계, 레코드 집중의 분석 및 설계, 접근 경로 등이다.
17. 트랜잭션의 특성 중 둘 이상의 트랜잭션이 동시에 병행 실행되는 경우 어느 하나의 트랜잭션 실행 중에 다른 트랜잭션의 연산이 끼어들 수 없음을 의미하는 것은?
가. Atomicity
나. Consistency
다. Isolation
라. Durability
풀이
트랜잭션의 특성은 Atomicity, Consistency, Isolation, Durability가 있다.
Atomicity(원자성) : 트랜잭션의 연산은 데이터 베이스에 모두 방영되든지 아니면 전혀 반영되지 않아야하고, 트랜잭션 내의 모든 명령은 반드시 완벽히 수행되어야 하며, 모두가 완벽시 수행되지 않고 어느하나라도 에러가 발생하면 트랜잭션 전부가 취소되어야 한다.
Consistency(일관성) : 트랜잭션이 그 실행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 변환하고, 시스템이 가지고 있는 고정요소는 트랜잭션 수행 전과 트랜잭션 수행 완료 후의 상태가 같아야한다.
Isolation(독립성) : 둘 이상의 트랜잭션이 동시에 병행 실행되는 경우 어느 하나의 트랜잭션 실행중에 다른 트랜잭션의 연산이 끼어들 수 없고, 수행중인 트랜잭션은 완전히 완료될 때까지 다른 트랜잭션에서 수행 결과를 참조할 수 없다.
Durability(영속성, 지속성) : 성공적으로 완료도니 트랜잭션의 결과는 영구적으로 반영되여야 한다.
18. 다음 문장의 ( ) 안 내용으로 옳게 짝지어진 것은?
( 1 ) involves ensuring that users are allowed to do the things they are trying to do.
( 2 ) involves ensuring that this things they are trying to do are correct.
가. (1) Security (2) Integrity
나. (1) Security (2) Revoke
다. (1) Integrity (2) Security
라. (1) Integrity (2) Revoke
풀이
보안은 사용자들이 그것을 사용하고자 할 때 사용할 수 있도록 보장하는 것이다.
무결성은 그것을 사용하고자 할 때 정확하게 사용할 수 있도록 보장하는 것이다.
19. 다음 설명이 의미하는 것은?
It is a collection of metadata describing the structure and constraint of a database. It defines data entities, attributes, relation, and constraints on data manipulation.
가. DBMS
나. Schema
다. Transaction
라. Domain
풀이
이것은 데이터베이스의 구조와 제약사항이 묘사된 메타 데이터의 집합이다. 이것은 데이터 개체, 속성, 관계와 데이터를 조작할 때의 제약사항들을 정의한다.
20. 관계대수에 대한 설명으로 옳지 않은 것은?
가. 릴레이션을 처리하기 위한 연산의 집합으로 피연산자가 릴레이션이고 결과도 릴레이션이다.
나. 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 절차적 특징을 가지고 있다.
다. 일반 집합 연산과 순수 관계 연산이 있다.
라. 수학의 Predicate Calculus에 기반을 두고 있다.
풀이
수학의 Predicate Calculus에 기반을 두는 것은 관계해석이다.
관계대수
- 관계형 데이터베이스에서 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 절차적인 언어이다.
릴레이션을 처리하기 위해 연산자와 연산규칙을 제공하는 언어로 피연산자가 릴레이션이고, 결과도 릴레이션이다.
질의에 대한 해를 구하기 위해 수행해야할 연산의 순서를 명시해야한다.
관계해석
- 코드가 수학의 Predicate Calculus에 기반을 두고 관계 데이터베이스를 위해 제안했다.
- 원하는 정보가 무엇이라는 것만 정의하는 비절차적 특성을 갖는다.
- 원하는 정보를 정의할 때는 계산 수식을 사용한다.
- 튜플 관계해석과 도메인 관계해석이 있다.
- 기본적으로 관계해석과 관계대수는 관계 데이터베이스를 처리하는 기능과 능력 면에서는 동등하다.
- 질의어로 표현한다.