기획자의 데이터 공부 - 데이터 모델링의 이해
* 데이터 모델 표기법
- 피터첸이 Entity-relationship model (E-R model) 표기법을 만듦
- 엔티티는 사각형, 관계는 마름모, 속성은 타원형
* ERD 표기법을 이용하여 모델링하는 방법
- ERD는 업무에 지장을 안줌, 일정한 규칙으로 데이터 모델을 누구나 공통된 시각으로 파악하고 의사소통하게 함
- 실제 프로젝트에서 분석된 엔티티와 관계, 속성정보가 표현됨, 내부 인원과 고객과 대화할때 핵심 업무산출물
- ERD 작업순서
엔티티를 그린다
엔티티를 적절하게 배치한다
엔티티간 관계를 설정한다
관계명을 기술한다
관계의 참여도를 기술한다
관계의 필수 여부를 기술한다.
- 가장 중요한 엔티티를 왼쪽 상단에 배치하고 이것을 중심으로 다른 엔티티를 나열하며 전개
- ERD 관계서를 보고 관련있는 엔티티간의 관계를 설정한다
모두 PK로 속성이 상속되는 식별자 관계를 설정
중복되는 관계가 발생하지 않도록하고 circle 관계도 발생하지 않도록 유의하여 작성
- ERD 관계명의 표시 관계설정이 완료되면 연결된 관계에 이름을 부여
관계이름은 현재형을 사용하고 지나치게 포괄적인 용어는 사용하지 않음
- 실제 프로젝트에서는 관계 명 고려하지 않아도됨
대부분의 관계는 엔티티의 성질과 주식별자를 보고 유추가 가능
- 관계가 참여하는 성격 중 엔티티내에 인스턴스들이 얼마나 관계에 참여하는 지 나타내는 관계차수를 표현
- IE 표기법은 하나의 관계는 실선으로 표기, Barker 표기법으로는 점선과 실선을 혼합
다수 참여의 관계는 까마귀발 모양, 관계의 필수/선택 표시는 관계선에 원을 표현하여 그림
* 좋은 데이터 모델의 요소
- 완전성 : 업무에서 필요로 하는 모든 데이터가 데이터 모델에 정의됨
- 중복배제 : 하나이 데이터베이스 내에 동일한 사실은 반드시 한 번만 기록
- 업무규칙 : 데이터 모델링 과정에서 도출되고 규명되는 많은 업무규칙을 데이터 모델에 표현, 모든 사용자가 공유
- 데이터 재사용 : 재사용성을 향상시키고자 하면 데이터이 통합성과 독립성 고려
- 의사소통 : 해당 정보 시스템을 운용, 관리하는 많은 관련자들이 설계자가 정의한 업무규칙을 받아들이고 활용
- 통합성 : 동일 성격의 데이터를 한 번만 정의하기 위해 여러 업무에서 사용하기 용이하게 구조 정의
[본 글은 SQLD 자격증 공부를 위해 아카이빙한 글입니다.