2011년 3월 15일 화요일

[데이터베이스] 파일구조

1. 순차파일

 정의
  - 레코드들을 연속적으로 저장하고, 저장된 순서대로 연속적으로 접근하는 방식의 파일

 종류
  - 입력 순차 파일, 키 순차 파일


2. 스트림 파일
 정의
  - 연속적인 판독 연산을 통해 레코드가 파일에 저장되어 있는 순서에 따라 데이터를 접근

 종류
 1) 순차 접근 스트림 파일 ( Sequential Access Stream File )
  - 판독 모드 : 판독 포인터는 파일의 첫번째 바이트
    * N 번째 바이트 값을 판독하기 위해서는 반드시 N-1 번째 바이트값을 판독 해야함

  - 기록 모드 : 기록 포인터는 파일의 첫 번째 바이트가 기록될 위치를 가리킴
    * N 번째 바이트 값을 기록하기 위해서는 반드시 N-1 번의 기록연산을 수행

  - 연속적으로 파일을 접근 하고 파일에 있는 모든 바이트를 처리해야 하는 경우에 유용함

  - 특정 바이트를 찾기 위한 방법으로는 부적절

 2) 임의 접근 스트림 파일 ( Random Access Steam File )
  - 이원 탐색법 : 배열의 인덱스를 이용하여 배열 원소를 직접(임의로) 접근
  * 이원 탐색법의 탐색 횟수  :  배열의 원소가 N 이라면 log2N 번


3. 순차 파일의 유형

  1) 임의 순차 파일 : 필드의 순서, 길이에 대한 제한이 없고, 레코드 길이 , 타입도 일정치 않음.
   - 삽입, 삭제, 변경 작업 : 새로운 순차 파일을 생성하면서 수행
  
   - 레코드 삭제 연산 : 삭제할 레코드는 생략하고 나머지 레코드 들만 새로운 파일로 출력

  2) 키 순차 파일

   - 저장 장치의 레코드 순서와 레코드 리스트의 논리적 순서가 같은 구조의 파일
   - 파일 내의 레코드 들은 키 필드 값에 따라 정렬

   - 특징 : 일괄 처리에 많이 사용, 차위 레코드를 신속하게 접근
   - 설계시 고려사항 : 필드 배치, 키 필드 선정, 블럭킹 인수 지정

     * 필드 배치 : 활동 파일/ 비활동 파일,  고정길이/가변길이
     * 키 필드 선정 : 키 필드는 레코드 접근 순서를 결정하는 요서, 응용 요건에 따라 선정
     * 블럭킹 인수 : 가능한 한 블록을 크게 하는것이 일반적


4. 순차 파일의 생성

 1) 생성
   - 데이터 저장 장치에 레코드를 순서대로 입력
   - 트랜젝션 파일 생성 : 키 순차 파일의 갱시에 트랜젝션 파일 이용

 2) 편집
   - 트랜젝션 파일 생성 과정에서 입력되는 데이터 값에 오류여부를 검사하는 과정


5. 순차 파일의 갱신
 
  1) 검색 : 레코드 저장 순서에 따라 연속적으로 검색
  
  2) 파일의 질의 적중 비율  일의 응답을 위해 접근해야 할 레코드 수 / 파일 전체 레코드 수

  3) 키 순차 파일의 갱신
   - 삽입 : 기존 레코드 사이에 삽입 위치를 검색 => 삽입점 앞의 모든 레코드를 새파일로 복사
                 => 새로운 레코드 삽입 => 삽입점 뒤의 나머지 레코드를 새파일로 복사
   - 삭제 , 수정도 비슷한 절차

  4) 순차 마스터 파일의 갱신 : 트랜젝션 파일의 트랜젝션은 갱신 코드를 포함( I : 삽입 , D : 삭제 , C : 수정 )

   - 삽입 : 트랜젝션 코드, 키 값은 반드시 필요
   - 삭제 : 삭제 하려는 해당 마스터 레코드의 키 값만 지정 해도 됨
   - 수정 : 키값과 수정될 필드들 해당값만 명세

  5) 마스터 파일 갱신 빈도수
 
    * 갱신 빈도수를 결정하는 요인
     - 데이터 변경률 : 클수록 빈도수 증가
     - 마스터 파일의 크기 : 클수록 갱신 비용증가, 빈도수 감소
     - 마스터 파일의 최신 데이터 요구  : 요구가 클수록 빈도수 증가
     - 파일 활동 비율 : 클수록 빈도수 증가

       * 파일 활동 비율
         -일련의 트랜젝션에 의해 영향을 받는 마스터 파일의 레코드 수 / 마스터 파일의 총 레코드 수

  6) 파일 활동 비율이 낮을수록 신 마스터 파일로 단순히 복사하는 레코드 수가 증가한다.

  7) 키 순차 마스터 파일의 갱신 알고리즘
   - 마스터 파일과 트렌젝션 파일 비교
   - 어느 한 키 값이 두 파일에서 일치하면 갱신 프로그램은 갱신 코드에 따라 레코드 수정 / 삭제
   - 트랜젝션 레코드 키 값이 마스터 파일의 어떤 레코드의 것과도 일치하지 않으면, 새로 삽입할 레코드로 간주하여 마스터 파일에 삽입



  8)

댓글 없음:

댓글 쓰기