You are on page 1of 12

PART 1 | 데이터베이스

5.4 정렬

(1) 정렬(Sort)의 정의 0209

1) To arrange items of information according to rules dependent upon a


key of field contained in the items or records. (레코드나 데이터에 담긴 키
값에 따라 순서대로 나열하는 것)

2) Sort is the process by which list of items or records, normally


disordered, is put into order according to some criterion base on the
content of each record. (정렬은 정렬되지 않은 항목 또는 레코드의 리스트를
각 레코드의 값에 기초한 기준에 따라 순서 있게 나열하는 것이다.) 0103

3) The process of rearranging an initially unordered sequence of records


until they ordered. (초기에 정렬되지 않은 레코드의 순서를 정렬될 때까지 재
배치하는 과정) 0609

(2) 정렬기법 0109 9908

1) 내부정렬기법
① 정의
데이터량이 적을 때 주기억장치 내에서 정렬하는 방법
② 특징
속도는 빠르나, 정렬할 자료의 양이 많은 경우 부적합 0007 0010

③ 종류
• 히프 정렬(heap sort) 0209 0203 0205

• 기수 정렬(radix sort) 0109

• 선택 정렬(selection sort) 0106

• 버블 정렬(bubble sort)
• 퀵 정렬(quick sort)
• 삽입 정렬 (insertion sort) 0209

• 쉘 정렬(shell sort)

2) 외부정렬기법
① 정의
대용량의 데이터를 몇 개의 서브 파일로 나누어 각각 내부 정렬을 한 후에,
테이프나 디스크 내에서 각 서브 파일을 합병하는 방법
② 특징 0003

속도는 느리지만 정렬하고자 하는 자료의 양이 많을 경우 효과적


(주기억장치 + 보조기억장치)
③ 종류
• 진동 병합 정렬(oscillating merge sort) 0308

• 밸런스 병합 정렬(balanced merge sort) 9910

• 캐스캐이드 병합 정렬(cascade merge sort)


• 폴리파즈 병합 정렬(polyphase merge sort)

90
www.gisa79.com

(3) 정렬기법 종류
1) 버블 정렬 (bubble sort) 0106 0209 0509

The bubble sort arranges the adjacent record keys as a result of


comparing these. That is, if they are not ordered, the two keys are
exchanged each other. (버블정렬은 인접한 두 키를 비교한 결과로 정렬하는
데 만약 비교하였을 때 두 키의 순서가 다르다면 교환하고 그렇지 않다면 그대
로 두는 방법이다.)

2) 삽입 정렬 (insertion sort) 0106 0308 0403 0609

① 이미 순서화된 파일에 새로운 하나의 레코드를 추가하여 순서에 맞게 배치


② This sort algorithm is likely to occur to anyone who has sorted
cancelled checks or playing cards by simply holding them in the hand
and inserting them one by one into the proper position in the stack or
hand of already sorted items. (이 정렬 알고리즘은 지급 완료 수표나 카드
를 정렬된 채로 손에 쥐고서 그것들 사이에 적당한 위치에 정렬되지 않은 것
을 한 개씩 삽입할 때 발생할 수 있다.) 0409

3) 선택 정렬 (selection sort) 0106 0503

레코드의 최소값을 찾아 첫 번째 위치에 놓고 다음 최소값을 찾아 두 번째 위


치에 놓는 방법을 반복하여 정렬함

91
PART 1 | 데이터베이스

4) 히프정렬 (heap sort)


① 연산 시간이 최악과 평균의 경우, 모두 0(nlogn)으로 빠른 속도를 가짐
② 전이진 트리(complete tree)를 이용한 정렬 방식
③ 이진 트리를 힙 정렬로 변환 0303

• 주어진 레코드들을 순서대로 넣어 전이진 트리로 구성


• 전이진 트리의 노드의 역순으로 자식 노드와 부모 노드를 비교하여 큰 값
을 위로 올림
• 교환된 노드들을 다시 검토하여 위의 과정 반복
예) 이진트리의 레코드 R=(88,74,63,55,37,25,33,19,26,14,9)에 대하여 힙
(heap) 정렬을 만들 때, 37의 왼쪽과 오른쪽의 자식노드(child node)의 값은?

<37의 자식노드는 왼쪽 14, 오른쪽 9>

5) 퀵 정렬 (quick sort) 0209 0308

레코드의 많은 자료 이동을 없애고 하나의 파일을 부분적으로 나누어가면서 정


렬하는 방법으로 키를 기준으로 작은 값은 왼쪽에 큰 값은 오른쪽에 모이도록
서로 교환시키는 부분 교환 정렬법

6) 기수정렬 (radix sort) 0505

레코드의 키 값을 분석하여 같은 수 또는 같은 문자끼리 그 순서에 맞는 버킷


에 분배하였다가 버킷의 순서대로 레코드를 꺼내어 정렬하는 기법

7) 2-way 합병 정렬 0109 0203 0503

① 주어진 입력 파일을 크기가 2인 서브 파일로 모두 나누어서 각 서브 파일들


을 정렬하는 방법
② 정렬 방법
• 두개의 키들을 한 쌍으로 하여 각 쌍에 대하여 순서를 정함
• 순서대로 정렬된 각 쌍의 키들을 합병하여 하나의 정렬된 서브 리스트로
만듦
• 위 과정의 정렬된 서브 리스트들을 하나의 정렬된 파일이 될 때까지 반복함
예) 입력 데이터가 R=(71, 2, 38, 5, 7, 61, 11, 26, 53, 42)일 때 2-Way
Merge Sort를 한 후 결과는?

92
www.gisa79.com
<1회전>

<2회전>

<3회전>

<4회전, 완료>

|오|답|쪽|지|
(4) 정렬 알고리즘의 선택 시 고려사항 0007 0007 0305 0503 0609
정렬 알고리즘 선택 시
고려사항 오답
1) 키 값들의 분포상태 ✗증가 데이터의 배열상태
✗운영체제의 종류
2) 소요 공간 및 작업시간 ✗액세스 빈도

3) 정렬에 필요한 기억공간의 크기

4) 데이터의 양

5) 초기 데이터의 배열상태

6) 사용 컴퓨터 시스템의 특성

93
PART 1 | 데이터베이스

|기|출|문|제| 0503

4. 자료가 아래와 같이 주어졌을 때, 선택 정렬


(selection sort)을 적용하여 오름차순으로 정렬
0209
할 경우 pass 2를 진행한 후의 정렬된 값으로
1. 다음 영문이 의미하는 것은? 옳은 것은?
To arrange items of information according 자료 : 9, 4, 5, 11, 8
to rules dependent upon a key of field
가. 4, 5, 9, 8, 11 나. 4, 5, 9, 11, 8
contained in the items or records.
다. 4, 5, 8, 11, 9 라. 4, 5, 8, 9, 11
가. sort 나. overflow
0003
다. matching 라. search
5. 연산 시간이 최악과 평균의 경우, 모두 0(nlogn)
0109 으로 빠른 속도를 갖는 정렬 방식은?
2. 주기억장치 내에서 이루어지는 정렬이 아닌 것 가. 퀵 정렬(quick sort)
은? 나. 버블 정렬(bubble sort)
가. insertion sort 나. selection sort 다. 히프 정렬(heap sort)
다. cascade sort 라. shell sort 라. 선택 정렬(selection sort)

0106 0303
3. 다음 영문의 괄호 안에 적합한 정렬 방법은? 6. 이진트리의 레코드 R=(88,74,63,55,37,25,33,19
,26,14,9)에 대하여 힙(heap) 정렬을 만들 때, 37
The ( ) arranges the adjacent record
의 왼쪽과 오른쪽의 자노드(child node)의 값은?
keys as a result of comparing these. That
가. 55, 25 나. 63, 33
is, if they are not ordered, the two keys 다. 33, 19 라. 14, 9
are exchanged each other.
0007
가. bubble sort 나. insert sort
7. 정렬(Sort) 알고리즘의 선택 시 고려사항으로 거
다. heap sort 라. radix sort
리가 먼 것은?
가. 증가 데이터의 배열상태
나. 키 값들의 분포상태
다. 소요 공간 및 작업시간
라. 정렬에 필요한 기억공간의 크기

94
www.gisa79.com

5.5 검색

(1) 검색기법 종류
1) 이진 검색(binary search) 0007 0205 0303 0409 0505 0005 0205 0403 0503 0509

① 일정한 순서로 배열된 레코드를 2개 부분으로 되풀이하여 나누어서, 한 부분


은 버리고 남은 부분을 검색하는 방법
② 자료가 반드시 정렬되어 있어야 함 (이진 검색의 선행 조건) 0605

③ A quick method for searching an ordered, dense list for a particular


record by successively looking at that half of the remaining portion of
the list in which the record is known to be, is called a binary search.
(정렬된 연접 리스트에서, 특정 레코드가 있다고 알려진 리스트의 남겨진 반
쪽 부분을 되풀이하여 보면서 특정 레코드를 찾는 빠른 방법) 0603

예) 1~10 사이의 수에서 9를 찾고자 할 때


(1+10) / 2 = 5.5 → 5와 9를 비교, 9가 더 크므로 1~5는 버림,
6~10에서 다시 9를 검색
(6+10) / 2 = 8 → 8과 9를 비교, 9가 더 크므로 6~8은 버림,
9~10에서 다시 9 검색
(9+10) / 2 = 9.5 → 9와 9비교, 같은 값이므로 검색 성공,
총 3회 시도

2) 보간(Interpolation) 검색 0603

찾고자 하는 레코드 키가 있음직한 위치를 추정하여 검색하는 방법

(2) 해싱 (Hashing) 9904 0103 0405 0403 |오|답|쪽|지|


해싱 오답
✗해싱은 충돌(collision)이
1) 키 값으로부터 레코드가 저장되어 있는 주소를 직접 계산하여, 산출된 주소로 발생하면 항상 오버플로우
(overflow)가 발생함
바로 접근하는 방법, 키-주소 변환 방법이라고도 함 0603

2) 검색 방법 중 속도는 가장 빠르지만 충돌현상 시 오버플로 해결의 부담이 과중


되며, 많은 기억공간을 요구하는 검색 방법

3) 버킷(bucket) 0403

하나의 주소를 갖는 파일의 한 구역을 의미하며, 버킷의 크기는 같은 주소에


포함될 수 있는 레코드 수를 의미

4) 슬롯(slot)
한 개의 레코드를 저장할 수 있는 공간으로 n개의 슬롯이 모여 하나의 버킷을 형성

5) 충돌(collision) 0603

레코드를 삽입할 때 2개의 상이한 레코드가 똑같은 주소로 해싱 되는 것을 의미

6) 동의어(synonym) 0010 0109 0405 0609

ㆍ해싱 함수의 값이 같은 키들의 집합

95
PART 1 | 데이터베이스

|오|답|쪽|지|
해싱함수의 종류 오답
(3) 해싱함수의 종류 0405

✗체인(chain) 방법
1) 중간제곱(mid-square) 방법
레코드의 키를 제곱한 후 그 중간 부분의 값을 목적 주소로 사용하는 방법

2) 숫자분석(digit analysis) 방법
레코드 키를 구성하는 수들이 모든 키들 내에서 각 자리별로 어떤 분포인지를
조사하여 비교적 고른 분포를 나타내는 자릿수를 필요한 만큼 선택하여, 목적
주소로 사용하는 방법

3) 제산(division) 방법
레코드의 키를 해시테이블의 크기보다 큰 소수로 나누는 방법

4) 중첩(접지) 방법(Folding method) 0505 9910 0403

주어진 키를 여러 부분으로 나누고, 각 부분의 값을 더하거나 배타적 논리합


(XOR : Exclusive OR) 연산을 통하여 나온 결과로 주소를 취하는 방법

5) 계수 분석 방법(Digit Analysis Method) 0505

주어진 모든 키 값들에서 그 키를 구성하는 자릿수들의 분포를 조사하여 비교


적 고른 분포를 보이는 자릿수들을 필요한 만큼 택하는 방법

6) 기수(Radix) 변환법 0603

어떤 진법으로 표현된 주어진 레코드 키 값을 다른 진법으로 간주하고 키 값을


변환하여 홈 주소로 취하는 방식

(4) 오버플로 처리방법


① 재해싱 방법(Rehashing) 9904

여러 개의 해싱함수를 준비하였다가 충돌 발생 시 새로운 해싱함수를 적용하여


새로운 해시표를 생성하는 방법

② 개방 주소법(Open Addressing)
충돌(Collision)이 발생했을 때 순서대로 다음 버킷에 저장하는 방법

③ 체인 방법
오버플로우 발생 시 이를 별도의 기억 공간에 두고 링크로 연결하여 사용하는
방법

96
www.gisa79.com

|기|출|문|제| 0103 0405


4. 해싱(Hashing)에 관한 설명으로 옳지 않은 것
은?
0603 가. 버킷(bucket)이란 하나의 주소를 갖는 파일의
1. 괄호 속 내용으로 가장 적합한 것은? 한 구역을 의미하며, 버킷의 크기는 같은 주
A quick method for searching an 소에 포함될 수 있는 레코드 수를 의미한다.
ordered, dense list for a particular 나. 슬롯(slot)이란 한 개의 레코드를 저장할 수
record by successively looking at that 있는 공간으로 n개의 슬롯이 모여 하나의 버
킷을 형성한다.
half of the remaining portion of the list
다. 충돌(collision)이란 레코드를 삽입할 때 2개
in which the record is known to be, is
의 상이한 레코드가 똑같은 버킷으로 해싱 되
called a ( ). 는 것을 의미한다.
가. tree search 나. block search 라. 해싱은 충돌(collision)이 발생하면 항상 오버
다. binary search 라. sequential search 플로우(overflow)가 발생한다.

0505
0007 0205 0409
2. 다음과 같이 레코드가 구성되어 있을 때, 이진 5. 해싱함수 중 주어진 키를 여러 부분으로 나누고,
검색 방법으로 14를 찾을 경우 비교되는 횟수 각 부분의 값을 더하거나 배타적 논리합(XOR :
는? Exclusive OR) 연산을 통하여 나온 결과로 주소
를 취하는 방법은?
“1 2 3 4 5 6 7 8 9 10 11 12 13 14 15” 가. 중간 제곱 방법(Mid-square method)
가. 2번 나. 3번 다. 4번 라. 5번 나. 제산 방법(Division method)
다. 중첩 방법(Folding method)
0603 라. 기수 변환법(Radix conversion method)
3. 탐색 방법 중 키 값으로부터 레코드가 저장되어
있는 주소를 직접 계산하여, 산출된 주소로 바로 0405
접근하는 방법으로 키-주소 변환 방법이라고도 6. 해싱함수(Hashing Function)의 종류가 아닌 것
하는 것은? 은?
가. 이진 탐색 나. 피보나치 탐색 가. 제곱(mid-square) 방법
다. 해싱 탐색 라. 블록 탐색 나. 숫자분석(digit analysis) 방법
다. 체인(chain) 방법
라. 제산(division) 방법

97
PART 1 | 데이터베이스

5.6 파일조직 기법

(1) 파일조직
1) 막대한 양의 자료를 각종 매체에 저장하는 기법

2) 파일 편성 혹은 파일 구성 방법이라 함

(2) 인덱스 (Index)


1) 인덱스의 정의
① 검색을 빠르게 하기 위해 만든 보조적인 데이터 구조
② B트리, B+트리, 트라이 등의 자료구조를 사용하여 구현함
③ 인덱스 파일 9910

• 검색수를 줄이기 위해 다단계 인덱스를 사용


|오|답|쪽|지|
인덱스의 특징 오답
2) 인덱스의 특징 0007 0509

✗레코드의 삽입과 삭제가 수 ① 인덱스는 하나 이상의 필드로 만들어도 됨


시로 일어나는 경우는 인덱
스를 최소화함 ② 인덱스를 통해서 테이블의 레코드에 대한 액세스를 빠르게 수행할 수 있음
|오|답|쪽|지| 3) 트라이 (trie) 0103 0106 0209
트라이 오답
✗키 검색을 위해 키 값을 직 ① 검색을 위한 킷값을 직접 표현하지 않고 키를 구성하는 문자나 숫자 자체의
접 표현함
순서로 킷값을 구성하는 구조
② 트라이의 차수는 키 값을 표현하기 위해 사용하는 문자의 수(radix)에 의해
결정함
③ 키 값의 분포를 미리 예측할 수 있다면 기억장소를 절약할 수 있음
④ 트라이의 크기는 나타내려고 하는 키 값의 기수와 키 필드 길이에 의해 결정됨
⑤ 키 값이 문자열 또는 숫자일 경우 일련의 키 값들에 대해 일부분이 같은 문
자나 숫자로 구성되었을 때, 즉 전체 키 값의 길이보다 키 값들 사이에 별개
의 전위(prefix) 수가 작을 때 적합함
⑥ 가변 길이의 키 값을 효과적으로 나타낼 수 있으며, 삽입 및 삭제 시 노드의
분열과 병합이 없음

4) 인덱스 구분 9910

① 정적 인덱스
• 데이터 파일의 레코드가 삽입되거나 삭제됨에 따라 인덱스의 내용은 변하
지만 구조자체는 변하지 않음
② 동적 인덱스 9908

• 인덱스나 데이터파일을 블록으로 구성하고 각 블록에는 추가로 삽입될 레


코드를 감안하여 빈 공간을 미리 예비해두는 인덱스 방법 0209

• 레코드의 삽입으로 인해 블록에 레코드가 가득 차면 동적으로 분열 됨


• 레코드의 삭제로 인해 일정 수의 레코드가 블록에 유지되지 않으면 블록의
합병이 일어남

98
www.gisa79.com

(3) 파일편성 종류 0209

1) 순차 파일(Sequential file) |오|답|쪽|지|


순차 파일 오답
① 생성되는 순서에 따라 레코드를 순차적으로 저장하므로, 저장 매체의 효율이 ✗특정 레코드 검색 효율이
좋음
가장 높음
② 프로그래밍이 쉬움
③ 여러 개의 기록 매체에 기록이 가능
2) 직접파일(Direct file)
① 특정 레코드에 접근하기 위해서 디스크의 물리적주소로 변환할 수 있는 함수
를 사용
② 해싱을 이용한 파일구조 0503

※ 직접 접근 방식(DAM: Directed Access Method) 0603 0005 0106 0203 0405 |오|답|쪽|지|
DAM 오답
• 데이터의 입/출력이 빈번히 발생하는 곳에 응용 ✗기억 공간의 효율성이 매우
• 해싱 함수를 이용하여 레코드의 저장 위치를 결정 좋음

• 다른 레코드를 참조하지 않고 어떤 레코드를 접근할 수 있음


3) 인덱스 순차 파일 (ISAM, Indexed sequential access-method) |오|답|쪽|지|
0203 0503 0003 0007 0209 0303 인덱스 순차 파일 오답
✗인덱스 영역은 실린더 색인
① 키 값에 따라 순차적으로 정렬된 데이터를 저장하는 데이터 지역(Data Area)과 영역, 섹터 색인 영역, 트랙
색인 영역으로 구분 됨
이 지역에 대한 포인터를 가진 색인 지역(Index Area)으로 구성된 파일 0503 ✗해시 함수를 사용하여 레코
드를 저장할 위치를 결정
② 인덱스를 저장하기 위한 공간과 오버플로우 처리를 위한 별도의 공간이 필요
(기본 구역(Prime data area), 색인 구역(Index area), 오버플로 구역
(Overflow area)으로 구성)
• 기본 데이터 구역은 데이터 레코드를 저장
• 인덱스 구역은 데이터 구역에 대한 인덱스를 저장
• 독립된 오버플로우 구역은 기본 데이터 구역에서 오버플로우 된 레코드를 저장
③ 데이터 파일은 기본구역과 오버플로 구성으로 구성
④ 실제 데이터 처리 외에 인덱스를 처리하는 추가적인 시간이 소모되므로 파일
처리 속도가 느림
⑤ 순차 처리와 직접(랜덤) 처리가 모두 가능하지만 기억장소의 낭비 초래
⑥ 인덱스 영역 구분 9906 0005 0308 |오|답|쪽|지|
인덱스 영역 구분 오답
• 트랙 인덱스 ✗디스크 인덱스
✗prime 인덱스
• 마스터 인덱스
• 실린더 인덱스
⑦ 레코드를 추가 및 삽입하는 경우, 파일 전체를 복사할 필요가 없음
4) VSAM (Virtual Storage Access Method) 파일 0305 |오|답|쪽|지|
VSAM 파일 오답
① 동적 인덱스 방법을 이용한 색인 순차 파일 ✗특정 레코드에 대해 빠르고
직접적인 접근을 지원할 수
② 기본 데이터 영역과 오버플로우 영역을 구분하지 않음 있기 때문에 대화형 처리에
많이 이용
③ 레코드를 삭제하면 그 공간을 재사용 할 수 있음
④ 제어 구간에 가변 길이 레코드를 쉽게 수용할 수 있음
5) 다중 키 파일 (multi key file)
① 하나의 데이터 파일에 여러 개의 접근 방법을 제공하는 구조
② 다중 키 파일의 특징
• 하나의 데이터 파일에 여러 개의 접근 방법을 지원함 (순차처리와 임의처
리 모두 가능)
• 파일의 중복성이 제거되고 자료의 무결성이 유지됨

99
PART 1 | 데이터베이스

6) 다중 키 파일의 종류
① 역파일 (inverted file) 0003

• 여러 개의 역 인덱스를 통해서 자료에 접근할 수 있도록 된 파일


• 역색인(index)은 레코드의 필드와 주소 또는 필드와 기본키의 쌍으로 구성
• 역 인덱스만을 검색해 많은 질의에 바로 응답할 수 있음
|오|답|쪽|지| • 역파일의 특징
역파일의 특징 오답
✗색인의 각 항의 길이가 고 - 검색 속도가 빠름
정적이므로 기억 공간이 절
약됨 - 데이터 파일에 접근하지 않아 질의응답 시간이 줄어들고, 처리가 비교적 쉬움
- 질의를 만족하는 레코드 검색 시 한번 씩만 접근하면 됨
② 다중 리스트 파일 (multi-list file)
• 각 키에 대하여 인덱스를 만든 후 각 데이터 레코드들 간에 다중 리스트를
구축하여 구성
• 자료파일에서 특정항목(필드)의 같은 자료 값들을 가진 레코드들을 포인터
로 연결한 리스트 형태의 파일
• 필드의 항목 값과 시작 포인터 쌍으로 된 인덱스에서 자료검색이 시작
• 레코드에 포인터 필드가 추가됨
|오|답|쪽|지|
역파일과 다중 리스트 파일의
③ 역파일과 다중 리스트 파일의 비교 9904

비교 오답
✗다중 리스트 방식은 동일한 구 분 역파일 다중 리스트 파일
키의 모든 레코드를 검색하
는 성능이 더 우수함 데이터 레코드 중에서
포인터 수 데이터 레코드 수만큼
한 개의 레코드
인덱스 형태 가변길이 고정길이
데이터 레코드
영향 없음 포인터 필드 추가
파일 구조

• 다중 리스트 방식은 인덱스 관리가 더 용이


• 역 인덱스 방식은 질의문 처리 능력에서 더 우월할 수가 있음
• 역 인덱스 방식은 이 인덱스를 사용하지 않는 프로그래머에게 더 투명함

|오|답|쪽|지| (4) 파일의 구조 결정시 고려사항 0403 9906


파일의 구조 결정시 고려사항
오답
✗주기억 장치의 크기 1) 사용할 보조 기억장치의 유형

2) 응용이 필요로 하는 파일 연산의 유형

3) 파일 활동 비율(file activity ratio)

4) 트랜잭션이나 검색 요청에 대한 응답 시간

5) 파일저장 매체의 접근 특성

6) 자료처리의 주기

7) 자료처리 순서

100
www.gisa79.com

|기|출|문|제| 0603
6. 직접 접근 방식(DAM: Directed Access Method)
에 대한 설명으로 거리가 먼 것은?
9910 가. 데이터의 입/출력이 빈번히 발생하는 곳에 응
1. 인덱스 파일에서 다단계 인덱스를 사용하는 주된 용하는 것이 좋다.
이유는? 나. 해싱 함수를 이용하여 레코드의 저장 위치를
가. 탐색수를 줄인다. 결정한다.
나. 인덱스 크기를 줄인다. 다. 다른 레코드를 참조하지 않고 어떤 레코드를
다. 인덱스에 삽입, 삭제가 편리하다. 접근할 수 있다.
라. 논리적으로 관련된 데이터들을 물리적으로 집 라. 기억 공간의 효율성이 매우 좋다.
중시킨다.
0503
0007 7. 인덱스 순차 파일(ISAM : Indexed sequential
2. 인덱스(Index)에 대한 설명으로 부적절한 것은? access-method) 에 대한 설명으로 옳지 않은 것은?
가. 인덱스는 데이터베이스의 물리적 구조와 밀접 가. 인덱스를 저장하기 위한 공간과 오버플로우
한 관계가 있다. 처리를 위한 별도의 공간이 필요하다.
나. 인덱스는 하나 이상의 필드로 만들어도 된다. 나. 실제 데이터 처리 외에 인덱스를 처리하는 추
다. 레코드의 삽입과 삭제가 수시로 일어나는 경 가적인 시간이 소모되므로 파일 처리 속도가
우는 인덱스를 최소화한다. 느리다.
라. 인덱스를 통해서 테이블의 레코드에 대한 액
다. 인덱스 영역은 실린더 색인 영역, 섹터 색인
세스를 빠르게 수행할 수 있다.
영역, 트랙 색인 영역으로 구분 된다.
0103 0209
라. 순차 처리와 직접 처리가 모두 가능하다.
3. 트라이(trie) 색인에 대한 설명으로 옳지 않은 것 0305
은? 8. VSAM 파일에 대한 설명으로 거리가 먼 것은?
가. 키 탐색을 위해 키 값을 직접 표현한다.
가. 기본 데이터 영역과 오버플로우 영역을 구분
나. 트라이의 차수는 키 값을 표현하기 위해 사용
하지 않는다.
하는 문자의 수(radix)에 의해 결정한다.
나. 레코드를 삭제하면 그 공간을 재사용 할 수
다. 키 값의 분포를 미리 예측할 수 있다면 기억
있다.
장소를 절약할 수 있다.
라. 트라이의 크기는 나타내려고 하는 키 값의 기 다. 제어 구간에 가변 길이 레코드를 쉽게 수용할
수와 키 필드 길이에 의해 결정된다. 수 있다.
라. 특정 레코드에 대해 빠르고 직접적인 접근을
0106 지원할 수 있기 때문에 대화형 처리에 많이
4. 키 값이 문자열 또는 숫자일 경우 일련의 키 값 이용된다.
들에 대해 일부분이 같은 문자나 숫자로 구성되
0003
었을 때, 즉 전체 키 값의 길이보다 키 값들 사
이에 별개의 전위(prefix) 수가 작을 때 적합하 9. 역파일(inverted file)에 관한 설명으로 옳지 않은
고, 가변 길이의 키 값을 효과적으로 나타낼 수 것은?
있으며, 삽입 및 삭제 시 노드의 분열과 병합이 가. 검색 속도가 빠르다.
없는 특징을 가진 색인구조는? 나. 데이터 파일에 접근하지 않아 질의응답 시간
가. B* - 트리 색인 나. 트라이(trie)색인 이 줄어들고, 처리가 비교적 쉽다.
다. B - 트리 색인 라. B+ - 트리 색인 다. 질의를 만족하는 레코드 검색 시 한번 씩만
접근하면 된다.
0103 0209 라. 색인의 각 항의 길이가 고정적이므로 기억 공
5. 파일에 대한 설명 중 옳지 않은 것은? 간이 절약된다.
가. 순차 파일(Sequential file)은 생성되는 순서
0403
에 따라 레코드를 순차적으로 저장하므로, 저
장 매체의 효율이 가장 높다. 10. 다양한 파일 조직 방법 중에서 응용에 적합한
나. 직접파일(Direct file)은 특정 레코드에 접근 파일 조직을 선택하는데 영향을 주는 요인들로만
하기 위해서 디스크의 물리적인 주소로 변환 구성된 것은?
할 수 있는 함수를 사용한다. ㉠ 사용할 보조 기억장치의 유형
다. 색인 순차 파일(Indexed sequential file)은
순차 및 직접 접근 형태를 모두 지원할 수 있 ㉡ 응용이 필요로 하는 파일 연산의 유형
으나, 기억 장소의 낭비를 초래한다. ㉢ 파일 활동 비율(file activity ratio)
라. VSAM 파일(Virtual storage access method ㉣ 트랜잭션이나 검색 요청에 대한 응답 시간
file)은 검색속도를 빠르게 하기 위하여, 기본
데이터 구역과 오버플로우 구역을 구분하여 가. ㉠ ㉡ ㉢ ㉣ 나. ㉡ ㉢ ㉣
갖추어야 한다. 다. ㉠ ㉡ ㉢ 라. ㉠ ㉡

101

You might also like