데이터 모델링의 순서
업무 파악 -> 개념적 데이터 모델링 -> 논리적 데이터 모델링 -> 물리적 데이터 모델링
개념 데이터 모델은 건축물의 조감도와 같이 구축하고자 하는 업무 모델의 핵심 데이터 구조를 큰 그림으로써 전체 업무에 대한 큰 윤곽을 잡고 세부적인 단계로 나아갈 수 있게 한다(ERD를 이때 그림)
논리 데이터 모델이란 개념 데이터 모델을 상세화 하여 논리적인 데이터 집합, 관리 항목, 관계를 정의한 모델
물리 데이터 모델이란 논리 데이터 모델을 DBMS의 특성 및 성능을 고려하여 구체화시킨 모델
개념적 데이터 모델링
- 관계형 데이터 모델링의 극치
- 현실에서 개념을 추출하는 필터를 제공
- 개념에 대해 다른 사람들과 대화하게 하는 언어로써 작용 - ERD(Entity Relationship Diagram)
ERD
- ERD는 현실을 세개의 관점으로 볼 수 있게 하면서 이를 다른 사람도 알아볼 수 있게 표현하는 것
- 표로 만들 수 있음
1. 정보 : 정보를 발견하고 다른 사람에게 표현할 수 있게 함
2. 그룹 : 서로 연관된 정보를 그룹핑
3. 관계 : 정보와 그룹사의 관계를 확인
- 관계형 데이터 베이스는 내포관계를 허용하지 않음
관계형 데이터 베이스의 구성요소
1. Entity -> Table
2. Attribute -> Column
3. Relation -> PK. FK
4. Row -> Tuple
식별자
- 후보키(Candidate key) : 기본키가 될 수 있는 키
- 기본키(primary key) : 식별자
- 대체키(alternate key) : 기본키가 아닌 다른 키들, 성능 향상을 위해 Secondary index로 걸기도 함
- 중복키(composite key) : 식별자가 정해지지 않은 경우 여러 칼럼을 합쳐서 식별자를 만듬
Cardinality
1. 1:1 ==> 한 요소가 하나의 요소와 연결된 것
2. 1 : N ==> 하나의 요소가 여러개의 요소와 연결된 것(EX. 저자 - 글(1,2,3,4...) 과의 관계)
3. N:M(다대다 관계) => 여러 요소와 여러 요소가 연결된 것(EX. 글 작성에 여러명의 저자가 참여한 경우)
Optionality
저자는 댓글을 쓸지 선택할 수 있지만, 댓글은 무조건 저자가 있어야함
이때 저자는 Mandatory, 댓글은 Optional이다.
해당 포스팅은 생활코딩의 <관계형 데이터 모델링> 강의를 듣고 정리한 것입니다.
www.youtube.com/playlist?list=PLuHgQVnccGMDF6rHsY9qMuJMd295Yk4sa
'SQL & DB > 관계형 데이터 모델링' 카테고리의 다른 글
[관계형 데이터 모델링] 논리적 데이터 모델링, 물리적 데이터 모델링(정규화, 역정규화) (0) | 2021.04.12 |
---|