데이터 모델의 이해
1. 모델링
모델링의 정의
현실세계를 추상화, 단순화, 명확화하기 위해 일정한 표현법에 의해 표현하는 기법
모델링의 특징
1) 추상화 -> 다양한 현상을 일정한 양식인 표기법에 의해 표현
2) 단순화 -> 복잡한 현실세계를 약속된 규약에 따라 제한된 표기법이나 언어로 표현하여 쉽게 이해할 수 있게 함
3) 명확화 -> 대상에 대한 애매모호함을 제거하고 정확하게 현상을 기술하는 것
모델링의 관점
1) 데이터 관점 -> 업무와 데이터, 데이터간의 관계에 대해 모델링
2) 프로세스 관점 -> 진행되고 있거나 진행되어야 하는 업무에 대해 모델링
3) 데이터와 프로세스의 상관관점 -> 업무에 따라 데이터가 영향을 받는지에 대해 모델링
2. 데이터 모델링
데이터 모델링의 정의
- 정보시스템을 구축하기 위한 데이터관점의 업무 분석 기법
- 현실세계의 데이터에 대해 약속된 표기법에 의해 표현하는 과정
- 데이터베이스를 구축하기 위한 분석/설계의 과정
데이터 모델링의 기능
- 시스템을 가시화, 명세화, 구조화, 문서화 할 수 있다
- 다양한 영역에 집중하기 위해 다른 영역의 세부 사항은 숨기는 다양한 관점을 제공한다
- 특정 목표에 따라 구체화된 상세 수준의 표현방법을 제공한다.
3. 데이터 모델링의 중요성 및 유의점
데이터 모델링의 중요성
1) 파급효과(Leverage)
- 시스템 구축 중에 데이터 모델링을 변경하는 것은 프로젝트의 큰 위험요소이기 때문에 데이터 설계가 매우 중요하다.
2) 복잡한 정보 요구사항의 간결한 표현(Conciseness)
- 데이터 모델은 시스템을 구축하는 많은 관련자들이 설계자의 생각대로 정보요구사항을 이해하고 이를 운용할 수 있는 애플리케이션을 개발하고 데이터 정합성을 유지할 수 있도록 하는 것이기 때문에 정보 요구사항이 정확하고 간결하게 표현되어야 한다.
3) 데이터 품질(Data Quality)
- 데이터 모델링의 유의점을 잘 지킨 데이터가 품질이 높다.
데이터 모델링의 유의점
1) 중복(Duplication)
- 데이터베이스가 여러 장소에 같은 정보를 저장하지 않도록 모델링 한다
2) 비유연성(Inflexibility)
- 데이터의 정의를 데이터의 사용 프로세스와 분리한다
3) 비일관성(Inconsistency)
- 데이터간 상호 연관 관계에 대해 명확히 정의 한다
4. 데이터 모델링의 3단계
1) 개념적 데이터 모델링
- 추상화 수준이 높고 업무 중심적이고 포괄적인 수준의 모델링
- 엔터티-관계 다이어그램을 생성한다.
- 이해하기 쉬워서 사용자와 개발자 모두 데이터 요구 사항을 발견할 수 있다.
2) 논리적 데이터 모델링
- 시스템으로 구축하고자 하는 업무에 대해 Key, 속성, 관계 등을 정확하게 표현
- 데이터 모델링 과정에서 가장 핵심이 되는 부분
- 식별자 확정, 정규화, M:M 관계 해소, 참조 무결성 규칙 정의 등
3) 물리적 데이터 모델링
- 실제로 데이터베이스에 이식할 수 있도록 성능, 저장 등 물리적인 성격을 고려하여 설계
'database > sql' 카테고리의 다른 글
[sqld] DDL / 데이터 정의어 사용방법 / Oracle, SQL Server (0) | 2022.03.04 |
---|---|
[sqld] SQL 기본 (0) | 2022.03.04 |
[sqld] 데이터 모델의 이해 2 (0) | 2022.02.19 |
[SQLD] SQLD 공부 기록 / 준비하게 된 계기 / 시험 목표 (0) | 2022.01.25 |
[SQLD, SQLP] 2022년도 SQLD, SQLP 시험 정보 / 응시 자격 / 합격 기준 / 응시료 / 시험 일정 (0) | 2022.01.25 |