SQLD 자격증 공부하면서 정리한 내용들을 작성한 글입니다.
1. 데이터 모델의 이해
(1) 모델링의 정의
- 정보시스템을 구축하기 위한 데이터 관점의 업무 분석 기법
- 복잡한 현실세계를 일정한 표기법에 의해 표현하는 것
- DB 구축을 위한 분석, 설계하는 과정
(2) 모델링의 관점
- 데이터 관점(Data, What)
- 프로세스 관점(Process, How)
- 상관 관점(Interaction, Data vs Process)
(3) 모델링 특징 3가지
- 추상화 : 일정한 형식에 맞추어 표현
- 단순화 : 제한된 표기법, 언어로 표현해서 쉽게 이해하도록 표현
- 명확화 : 누구나 쉽게 이해하도록 애매모호함을 제거해 정확하게 현상을 기술
(4) 데이터 모델링이 필요한 이유
- 업무 정보를 일정한 표기법으로 표현
- 업무 흐름을 설명
- 분석된 모델로 DB 생성 및 개발
(5) 데이터 모델링의 진행 3단계(개념적 - 논리적 - 물리적)
- 개념적 데이터 모델링
- 추상화 수준이 높고 업무중심적이고 포괄적인 수준의 모델링
- 논리적 데이터 모델링
- 시스템으로 구축하고자 하는 업무에 대해 key, 속성, 관계 등을 정확하게 표현
- 재사용성이 높음
- 정규화 수행
- 물리적 데이터 모델링
- 실제로 데이터베이스에 이식할 수 있도록 성능, 저장 등 물리적인 성격을 고려하여 설계
- 개념적 데이터 모델링보다 구체적임
(6) 데이터 모델링의 유의점
- 중복 : 데이터베이스가 여러 장소에 같은 정보가 저장되는 것 주의
- 비유연성 : 데이터 정의를 데이터 프로세스와 분리해야 함(⭐분리해서 유일하게)
- 비일관성 : 데이터간 상호 연관관계를 명확히 정의해야 함(⭐일관되고 명확하게)