본문 바로가기
Quality control (Univ. Study)/Database Design

Database System (1)

by 생각하는 이상훈 2023. 9. 6.
728x90

Data Model

데이타 모델은 데이터 추상화를 제공하기 위한 주요 도구에 해당한다. 데이타 타입, 관계, 제약 조건들을 명시하기 위해 사용할 수 있는 개념들의 집합이다. 데이타베이스에서 검색과 갱신을 수행하는 기본 연산들의 집합을 포함한다.

DB 응용의 동적 측면 또는 행동(behavior)를 명시하기 위한 개념들이 점차적으로 데이타 모델에 포함되고 있다. 대표적인 예시는 사용자 정의 연산(user defined operation)을 모델에 포함시키는 추세가 있다. 사용자 정의 연산의 예로는 STUDENT 개체에 적용 가능한 COMPUTE_GPA와 같은 것이 있다.


Schema diagram

STUDENT, COURSE, PREREQUISITE, SECTION, GRADE_REPORT 각각의 table을 볼 수 있다. 각각을 하나의 Entity로 볼 수 있는 것이다. 이때 DB에서는 각 Entity간의 Relationship 즉 ER이 굉장히 중요하다.


데이타 모델의 분류

물리적(저수준) 데이터 모델
• 데이터가 컴퓨터에 어떻게 저장되는지의 세부 사항을 명시하는 개념을 제공 

• 하드웨어에 의존적, 일반인의 이해가 어려움
• 레코드 형식, 레코드 순서, 접근경로 정의 (인덱스, 물리적 배치 등)

 

개념적(고수준) 데이터 모델
• 사용자들이 데이터를 인식하는 방식에 대한 개념을 제공
• 하드웨어에 독립적, 일반인의 이해가 쉬움
• Entity Relationship Diagram: 개체, 속성, 관계 -> 모델 자체의 구현은 어려움


표현(구현) 데이터 모델
• 고수준 모델과 저수준 모델 사이에 존재하며, 일반 사용자가 이해할 수 있는 개념 제공
• 데이터 저장 구조의 세부 사항을 은폐하지만, 컴퓨터 상에서 직접 구현 가능함
• 대표적 모델: 계층 모델, 네트워크 모델, 관계 모델

 

최신 데이터 모델: 객체 데이터 모델, NoSQL

 

데이타베이스 스키마 (또는 메타데이타)
– 데이타베이스에 대한 기술 (catalog, 데이터에 대한 데이터)이다.

– 데이타베이스 설계 과정에서 명시하며 자주 변경되지 않는다.


스키마 다이어그램
– 데이타베이스 스키마를 도식화한 것이다.
– 레코드 타입의 이름,데이타 항목의 이름, 일부 제약 조건 유형들과 같은 스키마의 일부 관점만을 나타낸다.
따라서 여러 다른 관점(항목의 데이터 타입, 파일간 관계, 제약 조건 등)은 표현되지 않는다.


Three-Schema Architecture

3단계-스키마 아키텍처의 목적은 크게 프로그램과 데이터의 분리(격리), 다중 뷰의 지원, 카타로그(메타 데이터) 저장/관리로 볼 수 있다.

3단계-스키마 아키텍처의 구조는 이름 그대로 아래와 같이 3단계로 구성되어있다.
제1단계: 내부 단계(internal level)
제2단계: 개념 단계(conceptual level)
제3단계: 외부 단계(external level) 또는 뷰 단계(view level)

1. 내부 단계
– 내부 스키마를 가지며, 내부 스키마는 물리적 데이타 모델을 사용
– 데이타 저장구조의 세부 사항과 데이타베이스에 대한 접근 경로를 기술


2. 개념 단계
– 개념 스키마를 가지며, 이는 전체 사용자를 위한 데이타베이스의 구조를 기술함
– 엔티티, 데이타 타입, 관계, 사용자 연산, 제약 조건들을 나타내는데 중점


3. 외부 단계 또는 뷰 단계
– 외부 스키마나 사용자 뷰들을 포함
– 특정 사용자 그룹이 관심을 갖는 부분을 나타내고 나머지는 은폐함

 

대학교 데이터베이스라면 아래와 같은 구조를 가질 수 있는 것이다.


데이타베이스 시스템환경

데이터 베이스와 그와 밀접한 관계가 있는 요소들과의 관계성을 표현한 전체적인 insight를 제공하는 표이다.


 

728x90