Gidhub BE Developer

순차 파일 [ Part 2 ]

2018-04-16
goodGid

순차 파일의 설계

  • 설계 시 고려 사항
    • [1] 레코드내의 필드 배치는 어떻게 할 것인가?
      • 고정 길이 / 가변 길이
      • 고정 길이 레코드 사용
        • 사용하지 않는 공간 낭비
        • ex) 가장 긴 레코드 기준
      • 가변 길이 레코드 사용
        • 각 레코드 길이를 나타내기 위한
          적절한 제어 정보와 함께 저장
        • 각 레코드 앞부분에 있는 시스템용 필드에 제어 정보를 저장
    • [2] 키 필드는 어느 것으로 할 것인가?
      • 응용 요건에 따라 선정
      • 순차 파일에서 이 키는 레코드 접근 순서를 결정
    • [3] 적정 블로킹 인수는 얼마로 할 것인가?
      • 일반적으로 가능한 한 블록을 크게 하는것이 바람직
      • 메인 메모리 내 버퍼 공간, 운영 체제가 지원하는 블록 크기에 의해 제한 받을 수 있음

순차 파일의 생성

  • 순차 파일 생성
    • 생성 : 데이터 저장 장치에 레코드들을 순서대로 입력
    • 키 순차 파일의 갱신 : 트랜잭션 파일 이용
  • 순차 파일에서의 검색
    • 레코드의 저장 순서에 따라 연속적으로 검색
  • 순차 파일에 대한 질의
    • 파일 구조상 연속적인 검색의 경우에 효율적
    • 파일의 질의 적중 비율은?
      질의에 응답하기 위해 접근해야 할 레코드 수 / 파일 전체의 레코드 수
      = 검색 대상 Data / 전체
  • 질의 적중 비율↑ ==> 입력 순차 파일 구조에 더 적합

키 순차 파일의 갱신

  • 키 순차 파일에 대한 레코드 삽입 : 값에 따라 오름/내림차순을 유지해야 한다.
    • [1] 두 기존 레코드 사이에 삽입 위치를 검색
    • [2] 삽입점 앞에 있는 모든 레코드를
      새로운 파일복사하고 새로운 레코드삽입
    • [3] 삽입점 뒤에 있는 나머지 레코드들을 새로운 파일복사
  • 키 순차 파일에 대한 레코드 삭제수정 : 삽입과 비슷

순차 마스터 파일의 갱신

  • 갱신 트랜잭션을 트랜잭션 파일에 모와서 일괄 처리
    • 트랜잭션 파일트랜잭션들
      • 마스터 파일과 똑같은 키로 정렬
      • 각 트랜잭션은
        대응하는 마스터 레코드키 값과 갱신 타입을 나타내는 갱신코드(Update Code)를 갖고 있음


  • 트랜잭션의 삽입
    • 트랜잭션 코드, 키 값은 반드시 있어야 함
  • 트랜잭션의 삭제
    • 보통 해당 마스터 레코드의 키 값만 지정해도 됨
  • 트랜잭션의 수정
    • 키 값수정될 필드들과 해당 값만 명세

마스터 파일 갱신 빈도수

  • 갱신 빈도수를 결정하는 요인
    • 데이터 변경율이 클수록(↑) –> 갱신 빈도수 증가(↑)
    • 마스터 파일의 크기 클수록(↑) –> 갱신비용 증가(↑)되므로 빈도수 감소(↓)
    • 마스터 파일의 최신 데이터 요구 클수록(↑) –> 갱신 빈도수 증가(↑)
    • 파일 활동 비율 클수록(↑) –> 빈도수 증가(↑)


  • 파일 활동 비율이란?
    • 일련의 트랜잭션에 의해 영향을 받는 마스터 파일의 레코드 수 / 마스터 파일의 총 레코드 수
      = 변경될 양 / All
    • 파일 활동 비율값이 높다는건 변경사항많다는 뜻

Comments

Content