파일처리

[파일처리] 레코드 파일 관리 (Managing Files of Records)

서노리 2022. 4. 25. 01:04
반응형

레코드 키 (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

파일에 대한 정보를 관리하는 특수 레코드로써 파일의 가장 앞부분에 놓이는 레코드이다. 헤더 레코드의 내용으로는 레코드의 수, 레코드 길이, 최근 변경일 등을 담고 있다. 헤더 레코드는 효율적인 레코드 구조를 구현하기 위해서 중요하다.


 

반응형