1. 모델링의 이해
모델링이란, 모델을 만들어가는 일 자체를 말한다.
모델링의 특징
- 추상화 : 다양한 현상을 일정한 양식인 표기법에 의해 표현
- 단순화 : 복잡한 현상을 규약에 의해 제한된 표기법이나 언어로 표현
- 명확화 : 애매모호함을 제거하고 정확하게 현상을 기술
모델링의 3가지 관점
- 데이터 관점 : 어떤 데이터와 관련 있는지, 데이터간의 관계는 무엇인지
- 프로세스 관점 : 업무가 실제하고 있는 일은 무엇이고 무엇을 해야하는지
- 상관 관점 : 일의 방법에 따라 데이터는 어떻게 영향을 받고 있는지
2. 데이터 모델의 기본 개념의 이해
모델링의 정의
- 정보시스템을 구축하기 위한 데이터 관점의 업무 분석 기법
- 현실세계의 데이터(What)에 대해 약속된 표기법에 의해 표현하는 과정
- 데이터베이스를 구축하기 위한 분석/설계의 과정
3. 데이터 모델링의 중요성 및 유의점
데이터 모델링 중요성
- 파급효과 (Leverage)
- 복잡한 정보 요구사항의 간결한 표현 (Conciseness)
- 데이터 품질 (Data Quality)
데이터 모델링 유의점
- 중복 (Duplication)
- 비유연성 (Inflexibility)
- 비일관성 (Inconsistency)
4. 데이터 모델링의 3단계 진행
- 개념적 데이터 모델링 : 추상화 수준이 높고 업무 중심적이고 포괄적인 수준의 모델링 진행, 전사적 데이터 모델링, EA 수립시 많이 이용
- 논리적 데이터 모델링 : 시스템으로 구축하고자하는 업무에 대해 Key, 속성, 관계 등을 정확하게 표현, 재사용성이 높음
- 물리적 데이터 모델링 : 실제로 데이터베이스에 이식할 수 있도록 성능, 저장 등 물리적인 성격을 고려하여 설계
6. 데이터 모델링에서 데이터독립성의 이해
(5번은 별 내용이 없어서 정리하지 않음)
데이터베이스 3단계 구조
외부스키마
- 사용자 관점, 업무상 관련이 있는 데이터 접근
- 관련 데이터베이스의 뷰를 표시한다
- 응용 프로그램이 접근하는 데이터베이스를 정의
개념스키마
- 설계자 관점, 사용자 전체 집단의 데이터베이스 구조
- 전체 데이터베이스 내의 규칙과 구조를 표현
- 통합 데이터베이스 구조
내부스키마
- 개발자 관점, 데이터베이스의 물리적 저장 구조
- 데이터 저장 구조, 레코드 구조, 필드 정의, 인덱스 등을 의미
두 영역의 데이터 독립성
논리적 독립성
- 개념 스키마가 변경되어도 외부 스키마에는 영향을 미치지 않도록 지원하는 것
- 논리적 구조가 변경되어도 응용 프로그램에 영향 없음
- 사용자 특성에 맞는 변경 가능
- 통합 구조 변경 가능
물리적 독립성
- 내부스키마가 변경되어도 외부/개념 스키마는 영향을 받지 않도록 지원하는 것
- 저장장치의 구조변경은 응용프로그램과 개념스키마에 영향 없음
- 물리적 구조 영향 없이 개념구조 변경 가능
- 개념 구조 영향 없이 물리적인 구조 변경 가능
사상
논리적 사상
-외부적 뷰와 개념적 뷰의 상호 관련 성을 정의함
물리적 사상
- 개념적 뷰와 저장된 데이터 베이스의 상호관련성 정의
7. 데이터 모델링의 중요한 세 가지 개념
1) 업무가 관련하는 어떤 것 (Things) 2) 어떤 것이 가지는 성격 (Attributes) 3) 업무가 관여하는 어떤 것 간의 관계 (Relationships)
8. 데이터 모델링의 이해관계자
9. 데이터 모델의 표기법인 ERD의 이해
10. 좋은 데이터 모델의 요소
- 완전성
- 중복배제
- 업무규칙
- 데이터 재사용
- 의사소통
- 통합성
글에서 나오는 코드와 내용은 책 SQL 전문가 가이드에서 가져옴을 알립니다.
'📚CS > SQL' 카테고리의 다른 글
데이터 모델링의 이해 - 정규화와 성능 & 반정규화와 성능 (0) | 2023.07.21 |
---|---|
데이터 모델링의 이해 - 성능 데이터 모델링의 개요 (0) | 2023.07.21 |
데이터 모델링의 이해 - 식별자 (0) | 2023.07.20 |
데이터 모델링의 이해 - 관계 (0) | 2023.07.20 |
데이터 모델링의 이해 - 속성 (0) | 2023.07.20 |