반응형
레코드 키 (Record Keys)
파일에서 임의의 레코드에 접근하기 위해서 키(key)를 사용하는 것이 편리하다. 키는 정규 형태 (Canonical form)가 필요하고 특성에 따라 다음과 같이 분류된다.
- Primary key
- 유일하고 바뀌지 않는 키 값 ex) 학번, 주민등록번호 - Secondary key
- 중복이 있을 수 있는 키 값 ex) 이름, 학과
레코드 검색 방법
- 순차 탐색 (Sequential Search)
- 레코드를 검색할 때 차례대로 탐색을 수행
- n개의 레코드를 갖고 있는 파일에서 최악의 경우 n번의 read가 실행됨 (O(N))
- 성능 향상을 위해 블록화(Record Blocking) 기법을 이용함
※ Record Blocking
- 여러 개의 record를 한 번에 읽어 들인 뒤 RAM에서 블록을 처리하는 기법 - 직접 접근 (Direct Access)
- 키를 통해서 원하는 레코드에 바로 접근 (O(1))
- 해당 레코드의 시작 주소를 알아야 함
- 이를 위해 인덱스 파일 또는 상대 레코드 번호 (RRN)을 이용
- 고정 길이 레코드인 경우 RRN, 가변 길이 레코드인 경우 인덱스 파일을 이용
Header Records
파일에 대한 정보를 관리하는 특수 레코드로써 파일의 가장 앞부분에 놓이는 레코드이다. 헤더 레코드의 내용으로는 레코드의 수, 레코드 길이, 최근 변경일 등을 담고 있다. 헤더 레코드는 효율적인 레코드 구조를 구현하기 위해서 중요하다.
반응형
'파일처리' 카테고리의 다른 글
[파일처리] Organizing Files for Performance (0) | 2022.04.25 |
---|---|
[파일처리] Record Structure 보충 / 활용 (0) | 2022.04.24 |
[파일처리] 파일 구조 - Field Structure / Record Structure (0) | 2022.04.24 |
[파일처리] SSD - 플래시 메모리(Flash memory) (0) | 2022.04.13 |
[파일처리] 하드디스크의 구조 - 디스크 액세스 비용 (0) | 2022.04.13 |