Certificate/정보처리기사

정보처리기사[2과목] | 데이터 모델링

구름솜:D 2024. 1. 17. 16:09
728x90

데이터모델링 설계 순서

1. 데이터 베이스 계획

2. 요구사항 분석 : DB에 저장될 내용을 정하기 위해 사용자 요구사항분석

3. 개념적 데이터 설계 : DBMS 독립적 개념 스키마 설계, 트랜잭션 모델링 및 정의

4. 논리적 데이터 설계 : DBMS에 맞는 스키마, 트랜잭션 인터페이스 설계

5. 물리적 데이터 설계 : DBMS에 맞는 물리적 구조 설계, 트랜잭션 세부 설계 

6. 구현

 

데이터모델링 3단계

1) 개념적 모델링(추상적)

- 실제 데이터에 대해서 개체간의 상관관계를 표현

- ex. 개체-관계모델(E-R모델, ER다이어그램)

2) 논리적 모델링

- 개념적 설계로 만들어진 엔티티와 속성간의 관계를 구조적으로 정의하는 것

 (DBMS의 데이터골격(스키마)구현)

- 시스템으로 구축하고자 하는 업무에 대해 key, 속성, 관계등을 정확하게 표현하는 모델링

3) 물리적 모델링(구체적)

- 논리적 데이터 설계에서 구조화된 데이터베이스를 실제 저장장치에 어떻게 저장할지 설계

- DBMS에 의존하는 데이터 형식, 뷰, 제약조건, 인덱스 등을 설정하는 단계

 (ex. 테이블정의서, 제약조건리스트, 인덱스명세서)

- 실제로 데이터베이스에 이식할 수 있도록 성능, 저장등의 물리적인 성격을 고려한 데이터 모델링

 

데이터 모델링 3요소

- 사물(Things) → 개체(Entity)

- 속성(Attribute)

- 관계(Relationship)

[개체(Entity)]

- 업무에 필요하고 변별이 가능하며 유용한 정보를 저장하고 관리하기 위한 사물(Things) 또는 집합적인 것

  ( = 자료수집의 대상이 되는 정보 세계에 존재하는 사물)

- 각 개체는 속성으로 알려진 특성들로 정의

- 구체적 또는 추상적인 사물로서, 서로 구분되는 특성에 따라 속성집합으로 표현

- 개체의 종류

1) 독립엔티티 : 사람, 물건, 장소, 개념처럼 원래부터 현실세계에 존재하는 엔티티 ex.사원, 고객

2) 중심엔티티 : 업무가 실행 되면서 발생하는 엔티티 ex.주문, 납품

3) 종속엔티티 : 중심엔티티로부터 분리된 엔티티

4) 교차엔티티 : 두 개 이상의 엔티티간에 발생하는 트랜잭션에 의해 발생하는 엔티티

[속성(Attribute, Filed)]

- 데이터베이스를 구성하는 가장 작은 논리적 단위

- 속성의 종류

1) 단일값속성(Single-valued Attribute)

 : 개체의 속성 중 주민번호 또는 학번과 같이 반드시 하나의 값만 존재

2) 다중값속성(Multi-valued Attribute)

 : 여러개의 값을 가질 수 있음

3) 단순속성(Single Attribute)

 : 더 작은 구성요소로 분해할 수 없는 속성

4) 복합속성(Composite Attribute)

-  이름같이 독립적인 의미를 좀 더 기본적인 성/이름 등의 속성으로 분해할 수 있는 속성

[관계(Relationship]

- 속성관계) 속성간의 관계

- 개체관계) 개체사이간의 관계

 

데이터 모델의 구성요소 3가지

- 구조(Structure)

- 연산(Operation)

- 제약조건(Constaint)

 

스키마(Schema)

- 데이터베이스의 전체적인 구조와 제약조건에 대한 명세를 기술, 정의한 것

1) 내부스키마(Internal Schema)

- 물리적 저장 장치 관점(기계관점)에서 본 데이터 베이스의 물리적 구조

2) 개념스키마(Conceptual Schema)

- 논리적관점(사용자관점)에서 본 전체적인 데이터 구조

3) 외부스키마(External Schema)

- 전체 데이터 중 사용자가 사용하는 한 부분의 논리적 구조 ≒ 서브스키마

 

 

DBMS

- 데이터베이스의 내용을 정의하고, 조작, 제어(관리)할 수 있도록 함으로써 모든 사용자나 응용프로그램들이 DB를 공유할 수 있도록 관리 및 운영하는 소프트웨어 시스템

- DBMS의 필수기능

1) 정의기능(Definition Facility)

- 저장될 데이터의 형태, 구조등을 정의(생성)하는 기능

2) 조작기능(Manipulation Facility)

- 데이터를 이용할 수 있도록 검색, 삽입, 수정, 삭제 지원

3) 제어기능(Control Facility)

- 데이터의 무결성, 유지, 보안, 병행수행 제어

  *무결성) 데이터베이스의 자료가 오류없이 정확성과 안전성을 유지하기 위한 제약조건이나 성질

 

무결성 제약조건

1) 개체무결성

- 기본키는 NULL값이 올 수 없고, 중복될 수 없음

2) 참조무결성

- 외래키는 NULL값 가능, 기본키는 NULL값 불가능

3) 도메인무결성

- 속성값이 정해진 범위 내로 구성되어야 함

4) 고유(Unique)무결성

- 고유값을 갖는 조건에서 각 속성값은 모두 달라야함

5) NULL무결성

- 속성값이 NULL값이 올 수 없는 제약조건

6) KEY(키)무결성

- 한 릴레이션(테이블)에는 최소한 하나의 키가 존재해야함