[정보처리기사] 정보처리기사 실기 정리 9 (데이터 모델의 개념, 데이터 모델의 구성 요소)
미음제
·2021. 8. 14. 18:36
Section 36
데이터 모델의 개념
데이터 모델
현실 세계의 정보들을 컴퓨터에 표현하기 위해서
단순화, 추상화하여 체계적으로 표현한 개념적 모형이다.
아파트 모델 하우스 같은 개념.
데이터, 데이터의 관계, 데이터의 의미 및 일관성, 제약 조건 등을
기술하기 위한 개념적 도구들로 구성되어 있다.
✓ 데이터 모델 구성 요소 : 개체, 속성, 관계
✓ 데이터 모델 종류 : 개념적, 논리적, 물리적 데이터 모델
✓ 데이터 모델에 표시할 요소 : 구조, 연산, 제약 조건
개념적 데이터 모델
현실 세계에 대한 인간의 이해를 돕기 위해
현실 세계에 대한 인식을 추상적 개념으로 표현하는 과정이다.
속성들로 기술된 개체 타입과
이 개체 타입들 간의 관계를 이용하여
현실 세계를 표현한다.
정보 구조로 표현하기 때문에 정보 모델이라고도 한다.
대표적 개념적 데이터 모델로는 E-R 모델이 있다.
논리적 데이터 모델
개념적 모델링 과정에서 얻은 개념적 구조를
컴퓨터가 이해하고 처리할 수 있는
컴퓨터 세계의 환경에 맞도록 변환하는 과정이다.
특정 DBMS는 특정 논리적 데이티 모델 하나만 선정해 사용한다.
데이터 간의 관계를 어떻게 표현하느냐에 따라
관계 모델, 계층 모델, 네트워크 모델로 구분한다.
데이터 모델에 표시할 요소
요소 | 내용 |
구조(Structure) | 논리적으로 표현된 개체 타입들 간의 관계로서 데이터 구조 및 정적 성질 표현 |
연산(Operation) | 데이터베이스에 저장된 시제 데이터를 처리하는 작업에 대한 명세로서 데이터베이스를 조작하는 기본 도구 |
제약 조건(Constraint) | 데이터베이스에 저장될 수 있는 실제 데이터의 논리적인 제약 조건 |
Section 37
데이터 모델의 구성 요소
개체(Entity)
데이터베이스에 표현하려는 것으로,
사람이 생각하는 개념이나 정보 단위 같은
현실 세계의 대상체이다.
독립적으로 존재하거나 그 자체로서도 구별이 가능하며,
유일한 식별자(Unique Identifier)에 의해 식별된다.
다른 개체와 하나 이상의 관계(Relationship)이 있다.
✓ 교수 개체의 구성 요소
속성 | 개체가 가지고 있는 특성(교수번호, 성명, 전공, 소속) |
개체 타입 | 속성으로만 기술된 개체의 정의 |
개체 인스턴스 | 개체를 구성하고 있는 각 속성들이 값을 가져 하나의 개체를 나타내는 것으로 개체 어커런스(Occurrence)라고도 한다. |
개체 세트 | 개체 인스턴스의 집합 |
속성(Attribute)
데이터베이스를 구성하는 가장 작은 논리적 단위이다.
파일 구조상의 데이터 항목 또는 데이터 필드에 해당한다.
속성의 수를 디그리(Degree) 또는 차수라고 한다.
(교수 개체에서 디그리, 차수는 4이다)
속성은 속성의 특성과 개체 구성 방식에 따라 분류한다.
✓ 속성의 특성에 따른 분류
분류 | 내용 |
기본 속성(Basic Attribute) | ✓ 업무 분석을 통해 정의한 속성 ✓ 속성 중 가장 많고 일반적임 ✓ 업무로부터 분삭한 속성이라도 업무상 코드로 정의한 속성은 기본 속성에서 제외됨(=설계 속성) |
설계 속성(Designed Attribute) | ✓ 원래 업무상 존재하지 않ㄴ고 설계 과정에서 도출해내는 속성 ✓ 업무에 필요한 데이터 외에 데이터 모델링을 위해 업무를 규칙화하려고 속성을 새로 만들거나 변형하여 정의하는 속성 |
파생 속성(Derived Attribute) | ✓ 다른 속성으로부터 계싼이나 변형 등의 영항을 받아 발생하는 속성 ✓ 파생 속성은 되도록 적은 수를 정의하는 것이 좋음* |
* 파생 속성은 다른 속성의 영향을 받는 만큼
프로세스 설계 시 정합성 유지를 위해
유의해야 할 점이 많으므로
되도록 적게 정의하는것이 좋다.
✓ 속성의 개체 구성 방식에 따른 분류
분류 | 내용 |
기본키 속성(Primary Key Attribute) | 개체를 유일하게 식별할 수 있는 속성. ex) 주민등록번호 |
외래키 속성(Foreign Key Attribute) | 다른 개체와의 관계에서 포함된 속성 |
일반 속성 | 개체에 포함되어 있고 기본키, 외래키에 포함되지 않은 속성 |
고객이라는 개체에서 고객 아이디는 기본키 속성이다.
주문이라는 개체에서 주문 번호는 기본키 속성이다.
주문이라는 개체에서 주문 고객은 외래키 속성이다.
관계(Relationship)
개체와 개체 사이의 논리적 연결을 의미한다.
개체 간의 관계와 속성 간의 관계가 있다.
✓ 관계의 형태
형태 | 내용 |
일 대 일(1:1) | 개체 집합 A의 각 원소가 개체 집합 B의 원소 한 개와 대응하는 관계 |
일 대 다(1:N) | 개체 집합 A의 각 원소는 개체 집합 B의 온소 여러 개와 대응하고 있지만, 개체 집합 B의 각 원소는 개체 집합 A의 온소 한 개와 대응하는 관계 |
다 대 다(N:M) | 개체 집합 A의 각 원소는 개체 집합 B의 원소 여러 개와 대응하고, 개체 집합 B의 각 원소도 개체 집합 A의 원소 여러 개와 대응하는 관계 |
✓ 관계의 종류
종류 | 내용 |
종속 관계(Dependent Relationship) | ✓ 두 개체 사이의 주, 종 관계를 표현한 것(부모-자식) ✓ 식별 관계와 비식별 관계가 있음 |
중복 관계(Redundant Relationship) | 두 개체 사이에 2번 이상의 종속 관계가 발생하는 관계 |
재귀 관계(Recursive Relationship) | 개체가 자기 자신과 관계를 갖는 것으로, 순환 관계(Recursive Relationship)이라고 함 |
배타 관계(Exclusive Relationship) | 개체의 속성이나 구분자를 기준으로 개체의 특성을 분할하는 관계로, 배타 AND 관계와 배타 OR 관계로 구분함 |