DBLAB, CUK
9 - *
다중 키 화일의 개념
하나의 데이타 화일 - 다수의 접근 경로(키)
(예) 학생 레코드 구조
구현 방법
데이타 중복 : 각 응용에 맞는 화일을 구성
기억 공간 증가
무결성(integrity) 유지 곤란
한 화일에 대한 다수의 접근 경로 구축
역화일(inverted file) : 인덱스
다중리스트 화일(multilist file) : 레코드 사이의 다중리스트
학번
이름
학과
주민 등록 번호
입학 년도
지도 교수
주소
DBLAB, CUK
9 - *
역 화일 구조
역화일 구조
인덱스를 이용하는 구조
역(inversion)
인덱스와 데이타 레코드 화일을 연결
역 인덱스
데이타 화일에 있는 키 필드 값을 인덱스 키로 모두 포함
인덱스 엔트리 = (키 값, 레코드 포인터)
화일은 키 필드에 대해 전도(도치)되어 있음
DBLAB, CUK
9 - *
▶ 학생 데이타 화일
레코드 주소
학번
이름
학과
주민 등록 번호
입학 년도
지도교수
주소
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
111111
112131
198121
201431
208432
291821
300123
310103
324196
335812
386132
387122
415631
486212
511211
534216
535218
641230
686116
696123
이정진
유근택
이상구
김성기
용환승
문봉기
나민영
이상돈
황수찬
한재술
이규철
홍봉희
송성헌
김철수
김연주
유광석
황시영
이인기
이규재
안정화
컴퓨터
기계
전자
컴퓨터
기계
자원
화공
컴퓨터
토목
전자
항공
항공
전기
전자
기계
토목
토목
전자
컴퓨터
화공
331004-1032436
490604-1533439
450816-2987184
241212-1032589
220321-2033128
170108-1036432
300428-2267432
340118-1097118
340130-2364432
520101-1000611
510828-2343125
431204-1334174
271112-1315254
220717-2036567
471201-1339451
230413-1096418
330642-2684129
351230-2268914
501228-1642517
310203-2364968
85
86
87
86
85
85
86
85
85
85
86
85
86
86
88
88
88
86
86
88
DBLAB, CUK
9 - *
▶ 레코드 주소를 이용한 주민등록번호 역 인덱스
주민 등록 번호
레코드 주소
170108-1036432
220321-2033128
220717-2036567
230413-1096418
241212-1032589
271112-1315254
300428-2267432
310203-2364968
330642-2684129
331004-1032436
340118-1097118
340130-2364432
351230-2268914
431204-1334174
450816-2987184
471201-1339451
490604-1533439
501228-1642517
510828-2343125
520101-1000611
6
5
14
16
4
13
7
20
17
1
8
9
18
12
3
15
2
19
11
10
DBLAB, CUK
9 - *
▶ 역 인덱스의 구성
정렬 / 비정렬
역 인덱스의 키 순서 ≠ 레코드 순서
인덱스 구조 : 테이블, 트리
직접 화일, 인덱스 된 순차화일 위에 구성
DBLAB, CUK

분야