데이터 모델의 개념
1. 데이터 모델의 정의
데이터 모델은 현실 세계의 정보들을 컴퓨터에 표현하기 위해 단순화, 추상화 하여 체계적으로 표현한 개념적 모형이다.
- 데이터베이스 설계 과정에서 데이터의 구조(Schema)를 논리적으로 표현하기 위해 사용되는 지능적 도구
- 데이터 모델 구성 요소 : 개체, 속성, 관계
- 데이터 모델 종류 : 개념적, 논리적, 물리적 데이터 모델
- 데이터 모델에 표시할 요소 : 구조, 연산, 제약 조건
2. 데이터 모델 구성 요소
개체(Entity)
- 데이터베이스에 표현하려는 것으로, 사람이 생각하는 개념이나 정보 단위 같은 현실세계의 대상체
- 독립적으로 존재하는 유,무형 정보로 서로 연관된 몇 개의 속성으로 구성
- 영속적(Persistence)으로 존재하는 개체의 집합
- 유일한 식별자(Unique Identifier)에 의해 식별 가능
- 다른 개체와 하나 이상의 관계가 있다
- 자료 흐름도(DFD)를 통해 업무 분석을 수행했을 경우 자료 흐름도의 자료저장소 를 이용한다.
- BPR(업무 프로세스 재설계)에 의해 업무 재정의한 경우 관련 개체 찾는다.
- 모든 개체명은 유일해야함
- 개체 인스턴스 : 각 속성들이 하나씩 값을 가져 하나의 개체를 나타내는 것. 결국 그냥 한 줄을 말함
- 개체 세트 : 개체 인스턴스 집합
- 개체 : 속성, 인스턴스를 통틀어 개체라고 한다.
속성(Attribute)
- 데이터베이스를 구성하는 가장 작은 논리적 단위
- 파일 구조상의 데이터 항목 또는 데이터 필드에 해당
- 개체를 구성하는 항목
- 속성의 수를 디그리(Degree) 또는 차수라고 한다
- 원시속성으로 판단되는 속성 후보는 버리지 않는다
- 서술형으로 지정하지 않는다
속성의 종류
기본 속성(Basic Attribute) | 업무 분석을 통해 정의한 속성 가장많고 일반적 예) 자동차명, 제조일, 연비 |
설계 속성(Designed Attribute) | 설계 과정에서 도출해내는 속성 예) 자동차코드 : A01-세단, A02-SUV |
파생 속성(Derived Attribute) | 다른 속성으로부터 계산이나 변형 등의 영향을 받아 발생 예) 계산값 : 총 판매 수량, 총 판매 금액 |
개체 구성 방식에 따른 분류
- 기본키 속성(Primary Key Attribute) : 개채를 식별할 수 있는 속성
- 왜래키 속성(Foreign Key Attribute) : 다른 개체와의 관계에서 포함된 속성
- 일반 속성 : 개체에 포함되어 있고, 기본키, 왜래키에 포함되지 않은 속성
관계(Relationship)
- 개체와 개체 사이의 논리적인 연결 의미
- 개체간의 관계와 속성간의 관계가 있다.
- 관계의 형태에는 일 대 일(1 : 1), 일 대 다(1 : N), 다 대 다(N:M) 관계가 있다. 이는 개체 집합 A의 원소가 개체 집합 B의 원소와 몇 개 만큼, 또 반대의 경우에는 얼마만큼 대응하느냐에 따라 나뉜다.
종속 관계(Dependent Relationship) : 두 개체 사이의 주/종 관계 표현한 것으로, 식별 관계와 비식별 관계가 있다.
중복 관계(Redundant Relationship) : 두 개체 사이에 2번 이상의 종속 관계가 발생
재귀 관계(Recursive Relationship) : 개체가 자기 자신과 관계를 갖는 것으로, 순환 관계(Recursive Relationship)이라고도 한다.
배타 관계(Exclusive Relationship) : 개체 속성이나 구분자 기준 특성 분할. 배타 AND - 하위 개체들 중 속성이나 구분자 조건에 따라 하나의 개체만 을 선택할 수 있다. 와 배타 OR - 하나 이상의 개체 선택. 이 있다.
식별 관계(Identifying Relationship) : A개체의 기본키가 B개체의 왜래키 이면서 동시에 기본키가 되는 관계
비식별 관계(Non-Identifying Relationship) : A 개체의 기본키가 B 개체의 비기본키 영역에서 왜래키가 되는 관계
관계의 표현
| : 필수(Mandatory)
O : 선택적(Optional)
< : 다중(Multiple)
3. 데이터 모델 종류
개념적 데이터 모델
- 속성들로 기술된 개체 타입과 이 개체 타입들 간의 관계를 이용하여 현실 세계를 표현한다.
- 현실 세계에 존재하는 개체를 인간이 이해할 수 있는 정보구조로 표현하기 때문에 정보 모델이라고도 한다.
- 대표적으로 E-R 모델
논리적 데이터 모델
- 개념적 모델링 과정에서 얻는 개념적 구조를 컴퓨터가 이해하고 처리할 수 있는 컴퓨터 세계의 환경에 맞도록 변환하는 과정
- 필드로 기술된 데이터 타입과 이 데이터 타입들 간의 관계를 이용하여 현실 세계 표현
- 일반적으로 데이터 모델은 논리적 데이터 모델
- 관계를 어떻게 표현하느냐에 따라 관계 모델, 계층 모델, 네트워크 모델로 구분
관계형 데이터 모델 / 관계형 데이터 베이스 알아보기
- 논리적 데이터 모델의 품질 검증은 개체, 속성, 관계, 식별자, 전반적인 품질 검증 으로 항목이 분류된다
4. 데이터 모델에 표시할 요소
구조(Structure) : 논리적으로 표현된 개체 타입들 간의 관계. 데이터 구조 및 정적 성질 표현
연산(Operation) : DB에 저장된 실제 데이터 처리하는 작업 명세. 데이터베이스를 조작하는 기본도구
제약 조건(Constraint) : 데이터베이스에 저장될 수 있는 실제 데이터 논리적인 제약 조건
출처
자료 참고:
시나공 정보처리기사 필기 2022를 참고하여 작성되었습니다
[1] https://rollercoaster25.tistory.com/70
[2] https://lipcoder.tistory.com/328
'정보처리기사 > 3과목' 카테고리의 다른 글
[정보처리기사 필기] 데이터베이스 저장 공간 테이블, 컬럼, 테이블 스페이스 개념 (0) | 2022.02.17 |
---|---|
[정보처리기사 필기] 정규화(Normalization) 와 반정규화(Denormalization) (0) | 2022.02.16 |
[정보처리기사 필기] E-R(개체-관계) 모델이란? (0) | 2022.02.16 |
[정보처리기사 필기] 관계형 데이터 모델/관계형 데이터 베이스 정리 (0) | 2022.02.14 |
[정보처리기사 필기] 논리 데이터베이스 설계 (0) | 2022.02.14 |
댓글