데이터 모델의 이해
모델링의 특징
•
추상화 : 현실세계를 일정한 형식에 맞추어 표현을 한다
•
단순화 : 복잡한 현실세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현
•
명확화 : 대상의 애매모호함을 제거하고 정확하게 현상을 기술
모델링의 세 가지 관점
•
데이터 관점(What) : 업무가 어떤 데이터와 관련이 있는지 또는 데이터간의 관계는 무엇인지에 대해서 모델링
•
프로세스 관점(How) : 업무가 실제 하고 있는 일은 무엇인지 또는 무엇을 해야 하는지 모델링
•
상관 관점(process) : 업무가 처리하는 일의 방법에 따라 데이터는 어떻게 영향을 받고 있는지 모델링하는 방법
데이터 모델이 제공하는 기능 : 가시화, 명시화, 문서화, 다양한 관점, 구체화
데이터 베이스 3 단계 구조
•
외부 스키마 : 사용자 관점
•
개념 스키마 : 통합 관점
•
내부 스키마 : 물리적 관점
데이터 독립성
•
논리적 독립성
•
물리적 독립성
외부적/개념적 사상 : 논리적 사상
개념적/내부적 사상 : 물리적 사상
데이터 모델링 용어
데이터 모델링의 세가지 요소 : 어떤 것, 성격, 관계
개념 | 복수/집합 개념, 타입/클래스 | 개별/단수 개념, 어커런스/인스턴스 |
어떤것(Thing) | 엔터티 타입 | 엔터티 |
어떤것(Thing) | 엔터티 | 인스턴스/ 어커런스 |
연관 | 관계 | |
성격 | 속성(Attribute) | 속성값 |
좋은 데이터 모델의 요소
: 완전성, 중복 배제, 업무 규칙, 데이터 재사용, 의사소통, 통합성
엔터티
엔터티의 특징
•
업무에서 필요로 하는 정보여야 한다.
•
식별이 가능해야 한다.
•
인스턴스의 집합이여야 한다.
•
업무 프로세스에 의해 이용되어야 한다.
•
속성을 포함해야 한다.
•
최소 한 개 이상의 관계가 존재해야 한다.
엔터티의 분류
•
유무형에 따른 분류
◦
유형: 물리적인 형태가 있어야 한다.
◦
개념 : 개념적 정보로 구분
◦
사건: 업무를 수행함에 따라 발생된다.
•
발생시점에 따른 분류
◦
기본(키) : 업무에 원래 존재하는 정보. 독립적으로 생성 가능. 타 엔터티의 부모역할을 하게 된다.
◦
중심(메인) : 업무에 있어서 중심적인 역할을 한다.
◦
행위(액션) : 두 개 이상의 부모엔터티로부터 발생.
속성
속성은 업무에서 필요로 하는 인스턴스에서 관리하고자 하는 의미상 더 이상 분리되지 않는 최소의 데이터 단위이다.
속성의 분류
•
기본 속성
•
설계 속성 : 업무상 원래 존재하지 않지만 설계를 하면서 도출해내는 속성
•
파생 속성
◦
다른 속성으로부터 계산이나 변형이 되어 생성되는 속성
◦
이 속성이 없어도 다른 속성을 이용하여 결과를 도출할 수 있는 특징을 가진 속성
용어정리
•
도메인 : 가질 수 있는 값의 범위를 정의한 것.
•
관계차수 : 두개의 엔터티 간 관계에서의 참여자의 수를 표현하는 것
식별자
식별자의 특징 : 유일성, 최소성, 불변성, 존재성
식별자 분류
분류 | 식별자 | 설명 |
대표성 여부 | 주식별자 | 엔터티 내에서 각 행을 구분할 수 있는 구분자 |
대표성 여부 | 보조식별자 | 대표성 가지지 못해 참조관계 연결 못한다. |
스스로 생성 여부 | 내부식별자 | 엔터티 내부에서 스스로 만들어지는 식별자 |
스스로 생성 여부 | 외부식별자 | 타 텐터티와의 관계를 통해 타 엔터티로부터 받아오는 식별자 |
속성의 수 | 단일식별자 | 하나의 속성으로 구성된 식별자 |
속성의 수 | 복합식별자 | 둘 이상의 속성으로 구성된 식별자 |
대체여부 | 본질식별자 | 업무에 의해 만들어지는 식별자 |
대체여부 | 인조식별자 | 인위적으로 만든 식별자 |
식별자 관계
•
식별자 관계
◦
자식엔터티의 주식별자로 부모의 주식별자가 상속이 되는 경우를 식별자 관계라고 지칭한다.
◦
부모로부터 받은 식별자를 자식엔터티의 주식별자로 이용하는 경우는 Null 값이 오면 안되므로 반드시 부모엔터티가 생성되어야 자기 자신의 엔터티가 생성되는 경우이다.
•
비식별자 관계
◦
부모엔터티로부터 속성을 받았지만 자식엔터티의 주식별자로 사용하지 않고 일반적인 속성으로만 사용하는 경우가 있다. 이와 같은 경우를 비 식별자 관계라고 하며 다음의 네 가지 경우에 비식별자 관계에 의한 외부속성을 생성한다.
◦
외부식별자는 FK 로써의 역할을 한다.
◦
부모의 식별자는 자식에게 식별자 역할을 하지 않고 FK 로써의 역할을 한다.