ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [자료구조] 파일의 구조(색인 파일, 직접 파일, 색인 순차 파일)
    CS/자료구조 2023. 2. 6. 14:14

    파일이란?

    하나의 단위로서 취급되는 연관된 *레코드의 조직적인 집단.

    * 레코드: 논리적으로 연관된 **필드들의 집합

    ** 필드: 파일 구성의 최소단위

    파일의 구조란?

    보조기억장치에 파일을 구성하는 레코드들을 편성하는 방식. 순차 파일, 직접 파일, 색인 순차 파일등의 방식이 있다.

     

    순차 파일(Sequential File)

    레코드를 논리적인 처리 순서에 따라 연속된 물리적 저장공간에 기록하는 방식

    장점

    1. 연속적인 공간에 저장하므로 메모리효율이 높다.
    2. 일괄 처리에 적합하다.
    3. 어떠한 기억 매체에서라도 용이하게 사용할 수 있다.

    단점

    1. 파일 내 어떤 레코드를 삽입하거나 삭제할 때(앞쪽 레코드일수록) 레코드의 이동이 많이 일어나 시간이 많이 소요될 가능성이 있다.
    2. 검색할 때 순차적으로 검색하기 때문에(뒤쪽 레코드일수록) 검색 효율이 떨어질 가능성이 있다.

     

    직접 파일(Direct File)

    레코드 내의 키 필드를 해시 함수에 의해 물리적 저장장치의 주소로 변환하여 레코드를 기록하는 방식

    * 해시 함수: 임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수

    장점

    1. 접근시간이 빠르고 레코드의 삽입, 수정, 삭제가 용이하다.
    2. 파일의 각 레코드에 직접 접근하거나 기록할 수 있으며, 접근 및 기록의 순서에는 제약이 없다.

    단점

    1. 레코드의 주소 변환 과정에서 시간, 메모리의 낭비를 가져올 수 있다.

     

    색인 순차 파일(Indexed Sequential File)

    순차 처리와 랜덤 처리가 모두 가능하도록 레코드들을 키 값 순으로 정렬(Sort)시켜 기록하고, 레코드의 키 항목만을 모은 색인을 구성하여 편성하는 방식

    색인 순차 파일의 구성

    인덱스 구역(Index Area)

    Prime Data Area에 대한 Index를 구성하는 Area

    -Track Index: 가장 작은 단위의 Index

    -Cylinder Index: Track Index가 많아 검색시간이 느릴때 만들어지는 Index

    -Master Index: Cylinder Index가 많아 검색시간이 느릴때 만들어지는 Index

    기본 데이터 구역(Prime Data Area)

    실제 Data가 기록되는 Area

    오버플로 구역(Overflow Area)

    새로운 Data가 추가될때, Overflow된 Data를 저장하는 Area

     

    장점

    1. 순차 처리와 랜덤 처리가 모두 가능해 융통성있다.
    2. 효율적인 검색이 가능하다.
    3. 레코드의 삽입,수정,삭제가 용이하다.

    단점

    1. Index Area와 Overflow Area를 위한 메모리가 추가로 필요하다.
    2. 색인을 이용한 액세스를 하기 때문에 액세스 시간이 랜덤 편성 파일보다 느리다.
    3. 삽입, 삭제가 많아지면 파일에 대한 재편성이 이루어져야 한다.

    댓글

Designed by Tistory.