데이터베이스 접근과정
태그 :
1.데이터베이스의 접근과정
가. 데이터베이스의 일반적인 접근 과정 개념도
1) 사용자 요구(레코드 검색)에 의해 파일 관리자에게 검색 요청
2) 파일 관리자는 레코드가 저장되어 있는 페이지(블록)에 대한 검색을 디스크 관리자에게 요청
3) 디스크 관리자는 페이지의 물리적 위치에 따라 디스크 입출력 발생
- (주기억 장치의 버퍼에 있을 경우 디스크 입출력 발생 안함)
3.데이터베이스 접근을 위한 구성요소
가. DBMS
- 사용자와 Database사이에 위치하여 DB를 관리하거나 사용자의 요구에 따라 DB에 대한 연산을 수행해서, 정보를 생성해 주는 소프트웨어
- 모든 응용프로그램들이 데이터베이스를 공용할 수 있게 관리해주는 소프트웨어 시스템
1) 관계형 DBMS(RDBMS)
- 70년대 EF Coddon에 의해 제안된 관계형 데이터모델에 기반한 데이터베이스 관리시스템
2) 객체형 DBMS(OODBMS)
- 객체 모델에 기반하여 정보의 저장 및 검색을 지원하는 DB
3) 객체관계형 DBMS(ORDBMS)
- OODBMS의 한계를 극복하기 위한 OODBMS기술과 RDBMS의 기술이 접목된 DBMS
4) DBMS간의 비교
항목 |
RDBMS |
OODBMS |
ORDBMS |
데이터모델 |
-단순정보타입 -날짜, 시간 등 |
-사용자 정의 타입 -복합정보 지원 |
-사용자 정의 타입 |
질의어 |
-SQL |
-QQL |
-봅합정보 지원 |
처리능력 |
-탁월 |
-보통 |
-SQL |
안정성 |
-탁월 |
-보통 |
-탁월 |
장점 |
-검증된 시스템 -대규모 정보처리 |
-복잡한 정보구조 -모델링 가능 |
-탁월 |
단점 |
-제한된 정보 -복잡한 모델 적용 곤란 |
-성능과 안정성에서 검증 미비 |
|
나. 디스크 관리자
1) 기본 I/O 서비스 (basic I/O service)
- 모든 물리적 I/O 연산에 대한 책임
- 운영체제의 한 구성요소
2) 물리적 디스크 주소 파악
- 파일 관리자가 페이지 P의 검색 요구시, 디스크 관리자는 페이지 P의 디스크상의 정확한 위치 파악
3) 파일 관리자 지원
- 디스크를 일정한 크기의 페이지로 구성된 페이지 세트들의 논리적 집단으로 취급하도록 지원
- 데이터 페이지 세트와 하나의 자유공간 페이지 세트
- 페이지 세트: 유일한 페이지 세트 ID를 갖는다.
- 페이지 : 해당 디스크 내에서 유일한 페이지 번호
4) 디스크 관리
- 페이지 번호 <- (사상) -> 물리적 디스크 주소 --> 파일 관리자를 장비에서 독립
- 파일 관리자의 요청에 따라 페이지 세트에 대한 페이지의 할당과 회수
5) 디스크 관리자(disk manager)의 페이지 관리 연산 (파일 관리자가 명령)
- 페이지 세트 S로부터 페이지 P의 검색
- 페이지 세트 S 내에서 페이지 P의 교체
- 페이지 세트 S에 새로운 페이지 P의 첨가 (자유공간 페이지 세트의 빈 페이지 할당)
- 페이지 세트 S에서 페이지 P의 제거 (자유공간 페이지 세트에 반납)
다. 파일 관리자
1) DBMS가 디스크를 저장 파일들의 집단으로 취급할 수 있도록 지원
2) 저장 파일(Stored file)
- 한 타입의 저장 레코드 어커런스들의 집합
- 한 페이지 세트는 하나 이상의 저장 파일을 포함
- 파일 이름 또는 파일 ID로 식별
3) 저장 레코드는 레코드 번호 또는 레코드 ID(RID:Record Identifier)로 식별
- 전체 디스크 내에서 유일
- <페이지 번호, 페이지 오프셋>
4) OS의 한 구성요소 또는 DBMS와 함께 패키지화
5) 파일 관리자의 연산
- 저장 파일 f에서 저장 레코드 r의 검색
- 저장 파일 f에서 새로운 레코드를 첨가하고 새로운 레코드 ID, r을 부여
- 저장 파일 f에서 저장 레코드 r의 제거
- 새로운 저장 파일 f의 생성
- 저장 파일 f의 제거
4. 디스크 구성 이미지와 탐색시간 공식
1) 디스크 구성 이미지
디스크 전체 모습 |
원판의 구성 |
2) 디스크 탐색 시간
탐색 시간(seek time) : 헤드를 해당 트랙으로 이동 회전 지연(rotational latency): 데이터가 포함된 섹터가 헤드 아래로 회전되어 올 때까지 대기 데이터를 전송 시간 : 데이터 전송 디스크 액세스 시간(access time) = 탐색 시간 + 회전 지연 + 데이터 전송시간 |
디스크 액세스 시간(access time) = 탐색 시간 + 회전 지연 + 데이터 전송시간
탐색시간 = s,
회전 지연시간 = r
데이터전송시간 = 트랙크기 / 데이터전송율 = x/t)