1. 화일의 기본개념.

Slides:



Advertisements
Similar presentations
© DBLAB, SNU 화일구조. 강의 소개 - 화일구조  Instructor : Prof. Sukho Lee (301 동 404 호 )  홈페이지 :  교과목 개요 – 이 과목은 데이타 관리와 응용을 위한 화일 구조의 설계와.
Advertisements

컴퓨터와 인터넷.
화일구조.
색좌표 변환기의 설계 예 색좌표(Color Space) 색의 수학적인 표현 방법 RGB YIQ, YUV, YCbCr CMYK
MS-Access의 개요 1강 MOS Access 2003 CORE 학습내용 액세스 응용 프로그램은 유용한 데이터를
4. 순차 화일.
연결리스트(linked list).
제 9 장 구조체와 공용체.
데이터 파일 C 데이터 파일과 스트림(Stream) 텍스트 파일 처리
테이블 : 데이터베이스를 구성하는 요소로 같은 성격에 정보의 집합체. 레코드 : 하나의 정보를 가지고 있는 컬럼의 집합체
07 그룹 함수 그룹 함수의 개념 그룹 함수의 종류 데이터 그룹 생성 HAVING 절.
Root Filesystem Porting
1. C++ 시작하기.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
11.텍스트를 위한 화일.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
Root Filesystem Porting
3. 데이타베이스 관리시스템.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
2주차: 변수, 수식, Control Flow.
CHAP 12. 리소스와 보안.
1장. 데이터베이스 자료의 조직적 집합체_데이터베이스 시스템의 이해
10장 컴퓨터 기반 데이터 획득 응용 프로그램 LabVIEW 사용법
DBMS 기능 DBMS 구성 요소 물리적 저장 구조
JA A V W. 03.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
인터넷응용프로그래밍 JavaScript(Intro).
Linux/UNIX Programming
자료구조: CHAP 7 트리 –review 순천향대학교 컴퓨터공학과 하 상 호.
27장. 모듈화 프로그래밍.
메모리 관리 & 동적 할당.
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
유승석 FILE I/O File Input/Output 유승석 SD50 – C# & .NET Platform.
영상처리 실습 인공지능연구실.
Linux/UNIX Programming
Term Projects 다음에 주어진 2개중에서 한 개를 선택하여 문제를 해결하시오. 기한: 중간 보고서: 5/30 (5)
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
2장. 변수와 타입.
컴퓨터 시스템 하드웨어 컴퓨터 시스템 소프트웨어 C P U Control Unit 입 력 장 치 출 력 장 치 ALU
Chapter 03. 관계 데이터베이스 설계.
Database Management System
화일구조.
Linux/UNIX Programming
Linux/UNIX Programming
데이터 동적 할당 Collection class.
6장. 물리적 데이터베이스 설계 물리적 데이터베이스 설계
AT MEGA 128 기초와 응용 I 기본적인 구조.
 파일 아카이브와 압축 명령 익히기.
14 뷰(View) 뷰의 개념 뷰 관리.
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
시스템 인터페이스 Lab1 X-window 및 명령어 사용.
멀티미디어시스템 제 4 장. 멀티미디어 데이터베이스 정보환경 IT응용시스템공학과 김 형 진 교수.
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
발표자 : 이지연 Programming Systems Lab.
4. 셸을 이용한 명령어 입력. Unix 시스템 쉘 간단한 셸 명령 명령 매개변수(Command arguments)
구조체(struct)와 공용체(union)
ER-관계 사상에 의한 관계데이터베이스 설계 충북대학교 구조시스템공학과 시스템공학연구실
실습과제 (변수와 자료형, ) 1. 다음 작업 (가), (나), (다)를 수행하는 프로그램 작성
제 4 장 Record.
06. 디바이스의 등록과 해제 김진홍
07. DB 설계 명지대학교 ICT 융합대학 김정호.
File IO 정보물리.
14 뷰(View) 뷰의 개념 뷰 관리.
 6장. SQL 쿼리.
9장 파일 시스템 이성연.
임시테이블과 테이블변수 SQLWorld Study Group - 최명환 -.
7 생성자 함수.
Linux/UNIX Programming
6 객체.
Linux/UNIX Programming
Presentation transcript:

1. 화일의 기본개념

 화일의 종류 D I I = P(D) 데이타 (Data) 처리 (processing) 정보 (information) ▶ 정보(Information)  데이타(Data) D I 데이타 (Data) 처리 (processing) 정보 (information) (in tape, disk) (Computer) I = P(D)

▶ 중요 용어 (1) 데이타 필드 (field), 애트리뷰트 (attribute), 데이타 항목 (item) 이름을 가진 논리적 데이타의 최소 단위 특정 객체(object, entity)의 한 성질의 값 레코드 타입 (record type) 논리적으로 서로 연관된 데이타 필드(항목)들의 집합 엔티티 타입 레코드 어커런스(record occurrence) 한 레코드 타입의 인스턴스(instance) 레코드 타입의 각 필드에 따라 실제 값이 들어가 어떤 특정 객체를 나타내는 것 일반적으로 레코드(record)라고 함

▶ 중요 용어 (2) 화일(file) 데이타의 집합을 왜 화일로 구성하는가? 보조기억장치에 저장된 같은 종류의 레코드 집합 Tape(SAM), Disk (ISAM, VSAM) 하나의 응용 목적을 위해 함께 저장된 레코드 예 : 급여, 인사, 재고, 재무, 회계 등 데이타의 집합을 왜 화일로 구성하는가? 주기억장치에 전부 적재하기에 데이타 양이 너무 많다 프로그램은 특정시간에 데이타 집합의 일부만 접근한다 데이타 전부를 주기억장치에 한꺼번에 저장시킬 필요가 없음 데이타를 특정 프로그램의 수행과 독립적으로 보관시켜 데이타의 독립성(independency) 유지하기 위함 – 여러 응용 프로그램이 공용하기 쉬움

▶ 화일의 분류 (1)  기능에 따라 마스터 화일 (master file) 트랜잭션 화일 (transaction file) 보고서 화일 (report file) 작업 화일 (work file) 프로그램 화일(program file) 텍스트 파일 (text file)

(1) 마스터 화일 (master file) 어느 한 시점에서 조직체의 업무에 관한 정적인 면을 나타내는 데이타의 집합 어느 한 시점에서 조직체의 업무에 관한 정적인 면을 나타내는 데이타의 집합 예(제조 회사) : 급여 마스터 화일, 고객 마스터 화일, 인사 마스터 화일, 재고 마스터 화일, 자재 요청 마스터 화일 비교적 영구적(permanent)인 데이타, 즉 역사적 데이타 (historical status data)를 포함 ★ 사전 화일 (dictionary file) 마스터 화일의 특수한 형태 데이타에 대한 기술(description) - 타입, 크기, 이름, 활용 등과 데이타에 대한 설명을 보관

(2) 트랜잭션 화일 (transaction file) 마스터 화일의 변경 내용을 모아 둔 화일 마스터 화일을 변경(update)하기 위한 데이타 화일 새로운 레코드 삽입(insert), 현존 레코드의 삭제(delete), 현존 레코드의 내용 수정(modify, replace) ★ 트랜잭션 (transaction) 논리적인 작업 단위 하나의 건수로 처리되어야 하는 분리될 수 없는 단일 작업

(3) 보고서 화일 (report file) 사용자에게 정보 검색의 결과를 보여주기 위해 일정한 형식을 갖춘(formatted) 데이타를 저장하고 있는 화일 하드카피(hard copy) 보고서 출력 단말 장치 화면에 디스플레이

(4) 작업 화일 (work file) 어느 한 프로그램에서 생성된 출력 데이타를 다른 프로그램의 입력 데이타로 사용하기 위해 임시로 만드는 화일(temporary file) - 시스템이 자동으로 만드는 작업 화일 예 : 정렬을 위한 화일 - 프로그램이 만드는 작업 화일 예 : 수강신청 변경 화일

(5) 프로그램 화일 (program file) 데이타를 처리하기 위한 명령어들을 저장하고 있는 화일 고급언어(C, JAVA), 어셈블리어, 작업 제어 언어(job control language) 등

(6) 텍스트 화일 (program file) 문자 숫자(alphanumeric)와 그래픽 데이타를 포함하고 있는 파일 - 텍스트 편집기의 입력과 출력으로 사용 - 여러 텍스트 편집기에 의해 처리될 수 있음

▶ 화일의 분류 (2)  프로그램의 화일 접근 목적에 따라 입력 화일 (input file) 프로그램이 읽기(READ)만 하는 화일 (2) 출력 화일 (output file) 프로그램이 기록(WRITE)하여 만든 화일 (3) 입/출력 화일 (input/output file) 프로그램의 실행 중 읽기도 하고 기록하기도 하는 화일

화일의 연산 화일 사용시 두 가지 중요한 면 화일 사용의 형식 화일 연산의 성격

▶ 화일 사용의 형식 일괄처리(batch) 형식 대화(interactive) 형식 마스터 화일 효율적으로 접근하도록 트랜잭션들을 구성함 트랜잭션들을 그룹화하여 처리하는 성능이 주요 관심사 대화(interactive) 형식 트랜잭션이 터미널에 도착하는 대로 구성하고 처리함 개개 트랜잭션의 처리 성능이 주요 관심사

▶화일에 대한 기본 연산 생성 기록(갱신, 삽입, 삭제) 판독(화일 이름, 블록 명세) 삭제 개방과 폐쇄(버퍼의 할당과 반환)

(1) 생성 (creation) 데이타 조직의 설계 - skeleton design : data definition 데이타 수집(collection)과 확인(validation) 데이타 적재(loading) 공간 할당 → 데이타가 한꺼번에 적재 한 번에 한 레코드씩 구성

(2) 기록 (write) 마스터 화일의 내용을 기록 레코드 내용의 변경 (update) 새로운 레코드의 삽입(insert) 레코드 삭제(delete)

(3) 판독 (read) 마스터 화일의 내용을 판독 화일 이름, 판독해야 할 블록 명세 디렉토리 조사(기록 연산과 비슷)

(4) 삭제 (delete) 화일의 삭제 화일 위치 검색 디스크 공간 반환, 디렉토리 엔트리 삭제

(5) 개방과 폐쇄 (open, close) 화일의 개방 화일의 폐쇄 연산을 수행하기 위한 준비 단계 판독, 기록 가능 버퍼 할당 화일의 폐쇄 디스크에 버퍼 데이타 기록 버퍼 반환

화일 구조 선정 요소 주기억 장치 최대 비교 연산 횟수로 평가 데이타 접근시간은 모두 일정한 것으로 가정 보조 저장 장치 데이타 접근 시간이 메인 메모리에 비해 상당히 길다 보조 저장 장치의 접근 횟수가 프로그램 성능 평가 요소 ㅡ> 화일 구조 선정의 중요성

화일 구조 선정 요소 화일 구조 선정 요소 가변성 활동성 사용빈도수 응답 시간 화일 크기 화일 접근 유형

(1) 가변성(volatility) 화일의 성격 가변성(volatility) 내용이 변하지 않는 정적 화일 (과거의 기록) 내용이 자주 변하는 동적 화일 (현재의 상황 데이타) 가변성(volatility) 전체 레코드 수에 대해 추가되거나 삭제되는 레코드 수 가변성이 높은 동적 화일은 빠른 접근과 갱신이 필요

(2) 활동성(activity) 화일의 활동성 주어진 기간 동안에 화일의 총 레코드 수에 대해 접근한 레코드 수의 비율 활동성이 높으면 순차 화일 구조 유리

(3) 사용 빈도수 (frequency of use) 화일의 사용 빈도수 일정 기간 동안의 화일의 사용 빈도수 가변성과 활동성에 밀접히 관련 사용 빈도수와 화일 구조 제한된 화일 접근 방법이 사용 빈도수에 장애 빈도수가 낮으면 순차 화일 구조 유리 빈도수가 높으면 임의 접근 구조 유리

(4) 응답 시간(response time) 응답 시간과 화일 구조 검색이나 갱신에 대해 요구하는 지연 시간 빠른 응답 시간 조건에는 임의 접근 방법 선택 정렬된 키를 이용한 순차 접근 방법 가능

(5) 화일 크기(file size) 화일 크기와 화일 구조 h 레코드 수와 각 레코드 길이가 화일 크기 결정 시간이 지남에 따라 화일 크기 성장 (레코드 길이 확장, 레코드 수 증가) 성장을 유연하게 수용할 수 있는 구조 필요 h

(6) 화일 접근 유형 화일 접근 유형과 화일 구조 연산의 유형과 접근 형식에 따라 화일 구조 결정 ex) 1. 판독 위주 접근 ? 갱신 위주 접근 ? 2. 순차 접근 주도 ? 임의 접근 주도 ?