모델링이란?
- 복잡한 "현실세계"를 단순화시켜 표현하는 것
- 사물 또는 사건에 관한 양상이나 관점을 연관된 사람이나 그룹을 위하여 명확하게 하는 것
- 현실 세계의 추상화된 반영
- 현실세계를 추상화, 단순화, 명확화 하기 위해 일정한 표기법에 의해 표현하는 기법
모델링의 특징
- 추상화는 현실세계를 일정한 형식에 맞추어 표현을 한다는 의미
- 단순화는 복잡한 현실세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현
- 명확화는 누구나 이해하기 쉽게 하기 위해 대상에 대한 애매모호함을 제거하고 정확하게 현상을 기술
모델링의 세가지 관점
- 데이터관점: 업무가 어떤 데이터와 관련이 있는지 또는 데이터 간의 관계는 무엇인지에 대해서 모델링하는 방법
- 프로세스 관점: 업무가 실제하고 있는 일은 무엇인지 또는 무엇을 해야 하는지를 모델링 하는 방법
- 상관 관점: 업무가 처리하는 일의 방법에 따라 데이터는 어떻게 영향을 받고 있는지 모델링하는 방법
데이터 모델링이란?
- 정보 시스템을 구축하기 위한 데이터 관점의 업무 분석 기법
- 현실세계의 데이터에 대해 약속된 표기법에 의해 표현되는 과정
- 데이터베이스를 구축하기 위한 분석/설계의 과정
데이터 모델이 제공하는 기능
- 시스템을 현재 또는 원하는 모습으로 가시화
- 시스템의 구조와 행동을 명세화
- 시스템을 구축하는 구조화된 틀을 제공
- 시스템 구축하는 과정에서 결정한 것을 문서화
- 다양한 영역에 집중하기 위해 다른 영역의 세부 사항은 숨기는 다양한 관점을 제공
- 특정 목표에 따라 구체화된 상세 수준의 표현방법을 제공
데이터 모델링의 중요성 및 유의점
- 파급효과: 시스템 구축 작업 중에서 다른 어떤 설계 과정보다 데이터 설계가 중요함
- 복잡한 정보 요구사항의 간결한 표현: 데이터 모델은 구축할 시스템의 정보 요구사항과 한계를 가장 명확하고 간결하게 표현할 수 있는 도구
- 데이터 품질: 데이터의 중복, 유연성, 비 일관성이 발생할 수 있음
데이터 모델링의 진행
- 개념적 데이터 모델링: 추상화 수준이 높고 업무 중심적이고 포괄적인 수준의 모델링 진행, 큰틀, EA(Enterprise Architecture)수립시 많이 사용
- 논리적 데이터 모델링: 시스템으로 구축하고자 하는 업무에 대해 키,속성,관계등을 정확하게 표현, 재사용성이 높음
- 물리적 데이터 모델링: 실제로 데이터베이스에 이식할 수 있도록 성능, 저장 등 물리적인 성격을 고려하여 설계
- 현실세계 -> 개념데이터모델링(추상적) -> 개념적구조 -> 논리데이터모델링 -> 논리적 구조 -> 물리 데이터모델링(구체적) ->물리구조(데이터베이스)
데이터베이스 3단계 구조
- 외부스키마
- 사용자 관점
- View 단계 여러개의 사용자 관점으로 구성, 즉 개개인의 사용자 단계로서 사용자가 보는 개인적 DB스키마
- DB의 사용자나 응용프로그래머가 접근하는 DB정의
- 개념 스키마
- 통합 관점
- 개념 단계 하나의 개념적 스키마로 구성 모든 사용자 관점을 통합한 조직 전체의 DB를 기술하는 것
- 모든 응용시스템들이나 사용자들이 필요로 하는 데이터를 통합한 조직 전체의 DB를 기술하는 것으로 DB에 저장되는 데이터와 그들간의 관계를 표현하는 스키마
- 내부 스키마
- 물리적 관점
- 내부 단계, 내부 스키마로 구성, DB가 물리적으로 저장된 형식
- 물리적 장치에서 데이터가 실제적으로 저장되는 방법을 표현하는 스키마
- 데이터 독립성
- 논리적 독립성: 개념스키마가 변경되어도 외부 스키마에는 영향X (논리적 구조가 변경되어도 응용 프로그램에 영향X)
- 물리적 독립성: 내부 스키마가 변경되어도 외부/개념 스키마는 영향X (저장 장치의 구조변경은 응용프로그램과 개념 스키마에 영향X)
데이터 모델링의 세가지 요소
- 업무가 관여하는 어떤 것
- 엔티티(고객), 인스턴스(이순신)
- 어떤 것 간의 연관
- 관계(고객-물건), 페어링(이순신-아이스크림)
- 어떤 것의 성격
- 속성(나이), 속성 값(18)
데이터 모델링 작업 순서
- 엔티티를 그린다.
- 엔티티를 적절하게 배치한다.
- 엔티티간 관계를 설정한다.
- 관계명을 기술한다.
- 관계의 참여도를 기술한다.
- 관계의 필수 여부를 기술한다.
데이터 모델링의 이해 관계자
좋은 데이터 모델의 요소
- 완전성: 업무에 필요한 데이터가 모두 정의되어야 함
- 중복 배제: 동일한 사실은 한번만 저장 해야함
- 업무 규칙: 데이터 모델 분석만으로도 비즈니스 로닉이 이해되어야 함
- 데이터 재사용: 데이터 통합성과 독립성 고려해야함
- 의사소통: 데이터 모델을 보고 이해 당사자들끼리 의사소통이 이루어져야 함
- 통합성: 동일한 데이터는 유일하게 정의해서 다른 영역에서 참조해야 함
'Computer Science > 데이터베이스' 카테고리의 다른 글
속성(Attribute) (1) | 2023.06.03 |
---|---|
엔티티(Entity) (0) | 2023.06.03 |
클러스터 인덱스 (0) | 2023.06.03 |
인덱스(요약) (0) | 2023.06.03 |
데이터베이스의 성능 (0) | 2023.06.03 |