01. 화일의 기본 개념

CCLVI·2024년 1월 27일

복습-화일처리

목록 보기
1/1

화일의 종류

정보와 데이터

정보(Information) != 데이터(Data)

정보: 데이터를 처리하여(processing) 가공한 결과

물리 저장공간(tape, disk 등) 안에 존재하는 raw data를 컴퓨터에서 처리하여(processing) 가공하면 정보(Information)가 되는 것!

정형화된 데이터 & 중요 용어

학생

학번(int)이름(char(6))학년(int)학과(char(10))
100최정환4컴퓨터
200이태욱3전기
300김현석1컴퓨터
400김가람4컴퓨터
500안지은2산업공학

Data Attribute (Data Field · Data Item)

  • 이름을 가진 논리적 데이터의 최소단위
  • 특정 객체(object, entity)의 한 성질 값
  • ex) 학번, 이름, 학년, 학과

Record Type (Entity Type)

  • 논리적으로 서로 연관된 항목들의 집합
  • Attribute + Datatype
  • ex)
학번(int)이름(char(6))학년(int)학과(char(10))

Record Occurrence (Record)

  • 한 레코드 타입의 인스턴스(instance)
  • 레코드 타입의 각 필드에 따라 실제 값이 들어가 어떤 특정 객체를 나타내는 것
  • 일반적으로 레코드(Record)라고 함

File

  • 보조기억장치에 저장된 같은 종류의 레코드 집합
  • 하나의 응용 목적(급여, 인사 재고, 재무, 회계 등)을 위해 함께 저장된 레코드

데이터의 집합을 File로 구성하는 이유

  1. 주기억장치에 전부 적재하기에는 데이터의 양이 너무 많음
  2. 프로그램은 특정시간에 데이터 집합의 일부만 접근함
    = 모든 데이터를 주기억장치에 한꺼번에 저장할 필요 X
  3. 데이터를 특정 프로그램의 수행과 독립적으로 보관하여 데이터의 독립성(independency)을 유지하기 위함
    = 여러 응용프로그램이 공용하기 쉬움

화일의 연산

화일 사용의 형식

일괄처리(batch) 형식

  • 마스터 화일에 효율적으로 접근하도록 트랜잭션 구성(요청을 쌓아뒀다가 한 번에 처리)
  • 트랜잭션들을 그룹화하여 처리하는 성능이 주요 관심사

대화(interactive) 형식

  • 트랜잭션이 터미널에 도착하는대로 구성하고 처리(요청 들어오는대로 처리)
  • 개별 트랜잭션의 처리 성능이 주요 관심사

화일 연산의 성격

화일에 대한 기본연산

화일 단위의 연산

  • create: 화일의 생성
  • open/close: 화일의 개방/폐쇄 = 버퍼 할당/반환
  • delete: 화일의 삭제

레코드 단위의 연산

  • retrieve/read: 레코드의 검색/판독 = 내용 읽기
  • update: 레코드의 갱신
  • insert: 레코드의 삽입
  • delete: 레코드의 삭제
  • modify: 레코드의 수정

update와 modify 혼용에 주의!
update = insert + delete + modify

화일 구조의 선정 요소

화일의 성격

  • 내용이 변하지 않는 정적 화일(과거의 기록)
  • 내용이 자주 변하는 동적 화일(현재 상황의 데이터)

가변성 (volatility)

전체 레코드 수에 대해 추가/삭제되는 레코드 수의 비율

  • 가변성이 높은 동적 화일은 빠른 접근과 갱신이 필요

활동성 (activity)

주어진 기간 동안 화일의 총 레코드 수에 대해 접근한 레코드 수의 비율

  • 활동성이 높은 화일: 대부분의 레코드에 고르게 접근(순차 화일 구조 유리)
  • 활동성이 낮은 화일: 일부 레코드에 집중 접근(임의 접근 구조 유리)

사용 빈도 (frequency of use)

일정 기간 동안 화일에 빈번하게 접근한 정도

  • 가변성과 활동성에 밀접한 관련

제한된 화일 접근 방법이 사용 빈도에 장애?

  • 사용 빈도가 높은 화일: 임의 접근 구조 유리
  • 사용 빈도가 낮은 화일: 순차 화일 구조 유리

응답 시간 (response time)

화일 검색 · 갱신에 대해 요구하는 지연 시간

  • 빠른 응답 시간: 임의 접근 방법
  • 정렬된 키를 이용: 순차 접근 방법

화일 크기 (file size)

레코드 수와 각 레코드 길이가 화일의 크기 결정

  • 시간이 지남에 따라 화일 크기는 성장함(레코드 길이 확장 & 레코드 수 증가)
  • 화일의 성장 유연하게 수용 가능한 구조가 필요

화일 접근 유형

화일 연산 유형과 접근 형식에 따라 화일 구조 결정

  • 연산 유형: 판독 위주 접근 VS 갱신 위주 접근
  • 접근 형식: 순차 접근 VS 임의 접근
profile
256의 우연

0개의 댓글