본문 바로가기

database/sql

[sqld] 데이터 모델의 이해 1

반응형

 

데이터 모델의 이해

 

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) 물리적 데이터 모델링

- 실제로 데이터베이스에 이식할 수 있도록 성능, 저장 등 물리적인 성격을 고려하여 설계

 

 

반응형