1-1.데이터 모델링의 이해
모델링의 특징
(현실세계) ->추상화 단순화 정확화 -> (모델)
모델링의 특징
추상화: 현실세계의 일정한 형식에 맞춰 표현
단순화: 복잡한 현실세계를 쉽게 이해할 수 있도록 하는 개념
명확화: 누구나 이해하기 쉽게 애매모함 제거, 정확하게 현상 기술
모델링의 세 가지 관점
데이터 관점(what, Data)
: 업무가 어떤 데이터와 관련이 있는지 또는 데이터간의 관계는 무엇인지에 대해서 모델링하 방법
프로세스 관점(How, Process)
: 업무가 실제로 하고 있는 일은 무엇인지 또는 무엇을 해야 하는지 모델링하는 방법
프로세스의 상관관점(Interaction)
:업무가 처리하는 일의 방법에 따라 데이터는 어떻게 영향을 받고 있는지 모델링하는 방법
데이터 모델이 제공하는 기능
시스템을 현재 또는 원하는 모습으로 가시화
시스템의 구조와 행동을 명세화
시스템을 구축하는 구조화된 틀 제공
시스템을 구축하는 과정에서 결정한 것을 문서화
다양한 영역에 집중하기 위해 다른 영역의 세부 사항을 숨기는 다양한 관점을 제공
특정 목표에 따라 구체화된 상세 수준의 표현방법 제공
데이터 모델링의 중요성 및 유의점
중요성
파급효과(Leverage)
복잡한 정보 요구사항의 간결한 표현 (Conciseness)
데이터 품질(Data Quality)
유의점
-중복: 같은 시간 같은 데이터 제공
-비유연성: 사소한 업무변화에 데이터 모델이 수시로 변경되면 안됨
데이터 정의를 사용 . 프로세스와 분리한다.
-비일관성: 데이터 간 상호 연관 관계에 대해 명확히 정의해야 한다.
데이터 모델링
(개괄적인 데이터 모델링 먼저 수행)=> 개념적=>논리적=>물리적, 데이터 모델링
개념적: 추상화 수준이 높고 업무중심적이고 포괄적인 수준의 모델링 진행
엔터티-관계 다이어그램=> 전사적 데이터 모델링 EA수립 시 이용
=> 데이터 요구 사항을 발견하는 것 지원
개념 데이터 모델이 현 시스템이 어떻게 변형 되어야 하는가를 이해하는데 유용
논리적: 비즈니스 정보의 논리적인 구조와 규칙을 명확하게 표현하는 기법
논리 데이터 모델 상세화 과정의 대표적 활동=식별자 확정, 정규화, M:M관계 해소, 참조 무결성 규칙 정의
시스템으로 구축하고자 하는 업무에 대해 Key, 속성, 관계 등을 정확하게 표현
재사용성이 높음
물리적: 실제로 데이터베이스에 이식할 수 있도록 성능, 저장 등 물리적인 성격을 고려하여 설계
프로젝트 생명주기(Life Cycle)에서 데이터 모델링
데이터 독립성 요소
외부 스키마 : 개개 사용자가 보는 개인적 DB 스키마
개념 스키마 : 모든 사용자 관점을 통합한 전체 DB 기술
내부 스키마 : 물리적 장치에서 데이터가 실제적 저장
두 영역의 데이터 독립성
논리적 독립성 : 개념스키마 변경 외부스키마에 영향X하도록 지원
논리적 구조가 변경되어도 응용 프로그램에 영향X
=> 사용자 특성에 맞는 변경가능, 통합 구조 변경가능
물리적 독립성 : 내부스키마 변경 외부 개념스키마에 영향X하도록 지원
저장장치의 구조변경은 응용프로그램과 개념스키마에 영향X
=>물리적 구조 영향 없이 개념구조 변경가능, 개념구조 영향 없이 물리적 구조 변경가능
Mapping( ) 사상 : 상호 독립적인 개념을 연결시켜주는 다리
논리적 사상 : 외부 스키마 개념 스키마
=> 사용자가 접근하는 형식에 따라 다른 타입의 필드를 가질 수 있음
개념적 뷰의 필드 타입은 변화가 없음
물리적 사상 : 개념 스키마 내부 스키마
=> 만약 저장된 데이터베이스 구조가 바뀐다면 개념적/내부적 사상이 바뀌어야 함
그래야 개념적 스키마가 그대로 남아있게 됨
데이터 모델링의 3요소
어떤 것(Things)
성격(Attributes)
관계(Relationships)
데이터 모델 표기법
1976 Entity Relationship Model 년 피터첸이 개발 - IE, Baker 기법이 많이 쓰임 - , , 엔터티 관계 속성으로 이뤄짐
ERD 작업순서
1. 엔터티 그림
2. 엔터티 배치
3. 엔터티 관계설정
4. 관계명 기술
5. 관계의 참여도 기술
6. 관계필수여부
좋은 데이터 모델의 요소
1. : 완전성 업무에 필요한 모든 데이터가 모델에 정의
2. : DB 중복배제 하나의 내에 동일한 사실은 한번만.
3. : 업무규칙 많은 규칙을 사용자가 공유하도록 제공
4. : 데이터 재사용 데이터가 독립적으로 설계돼야 함
5. : 의사소통 업무규칙은 엔터티 서브타입 속성 , , , 관계 등의 형태로 최대한 자세히 표현
6. : 통합성 동일한 데이터는 한번만 정의 참조 , 활용