데이터 모델의 이해
모델링의 이해
- 정의 : 다양한 현상을 표기법에 의해 표기하는 것
- 특징
- 추상화 : 일정한 형식에 맞춰 표현
- 단순화 : 제한된 표기법이나 언어로 표현
- 명확화 : 이해가 쉽게 표현
- 3가지 관점
- 데이터 관점 : 업무와 데이터 사이의 관계
- 프로세스 관점 : 진행되고 있거나 진행되어야 하는 업무
- 상관 관점 : 데이터에 대한 업무 처리 방식의 영향
데이터 모델의 기본 개념 이해
- 정의 : 정보 시스템을 구축하기 위한 데이터 관점의 업무 분석 기법
- 제공 기능
- : 시스템 가시화, 시스템 구조와 행동 명세화, 시스템 구축의 구조화된 틀 제공 : 문서화, 세부 사항은 숨기는 다양한 관점 제공, 상세 수준의 표현방법 제공
데이터 모델링의 중요성 및 유의
- 중요성
- : 파급효과(Leverage), 간결한 표현(Conciseness, 복잡한 정보 요구 사항 및 한계를 간결하게 표현), 데이터 품질(유일성, 유연성, 일관성)
- 유의점: 비유연성 - 데이터 정의를 데이터 사용 프로세스와 분리
- : 비일관성
- : 중복 - DB가 여러 장소에 같은 정보를 저장하지 않게 함
데이터 모델링의 3단계 진행
- 개념적 데이터 모델링 : 추상화 수준이 높고 업무 중심적이고 포괄적인 수준의 모델링 진행
- 논리적 데이터 모델링 : 시스템으로 구축하고자하는 업무에 대해 Key, 속성, 관계 등을 정확하게 표현, 높은 재사용
- 물리적 데이터 모델링 : 실제로 데이터베이스에 이식할 수 있도록 성능, 저장 등 물리적인 성격 고려 설계
프로젝트 생명 주기(Life Cycle)에서 데이터 모델링
- 계획 > 분석 > 설계 > 개발 > 테스트 > 전환/이행 단계
- 계획, 분석 ⇒ 개념적 모델링 / 분석 ⇒ 논리적 모델링 / 설계 ⇒ 물리적 모델링
데이터 모델링에서 데이터 독립성의 이해
- 데이터 독립성의 필요성 : 유지 보수 비용 증가, 데이터 복잡도 증가, 데이터 중복성 증가, 요구사항 대응 저하
- 데이터베이스 3단계 구조
- 외부 단계(External) : 개별 사용자 관점
- 개념 단계(Conceptual) : 조직 전체의 관점
- 내부 단계(Internal) : 저장 장치의 관점
- 데이터 독립성 요소 : 외부 스키마 / 개념 스키마 / 내부 스키마
- 스키마란? 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것
- 두 영역의 데이터 독립성 : 논리적 독립성, 물리적 독립성
- 사상 ‘Mapping’ : “상호 독립적인 개념을 연결시켜주는 다리” / 외부적 / 개념적 사상 + 개념적 / 물리적 사상
데이터 모델링의 중요한 세가지 개념 - 데이터 모델링의 세가지 요소
- 업무가 관여하는 어떤 것(Things)
- 업무가 관여하는 어떤 것 간의 관계(Relationships)
- 어떤 것이 가지는 속성(Attributes)
데이터 모델링의 이해관계자
- 이해관계자의 데이터 모델링 중요성 인식
- 데이터 모델링의 이해관계자 : 개발자, DBA, 모델러, 현업업무전문가 등
데이터 모델의 표기법인 ERD의 이해
- 데이터 모델 표기법 : Entity를 사각형으로 표현, 관계를 마름모, 속성을 타원형으로 표현
- ERD(Entity Relationship Diagram) 표기법을 이용해 모델링하는 법
- : 엔터티 그리기 → 엔터티 배치 → 엔터티 간의 관계 설정 → 관계명 기술 → 관계의 참여도 기술(1:1, 1:N, M:N) → 관계의 필수 여부 기술(필수, 선택)
좋은 데이터 모델의 요소
- 완전성 / 중복배제 / 업무규칙 / 데이터 재사용 / 의사소통 / 통합성
'이론' 카테고리의 다른 글
[알고리즘 코테] 그리디 (0) | 2023.11.12 |
---|---|
[패스트캠퍼스 - 30개 프로젝트로 끝내는 추천시스템 강의 Chapter06. 추천시스템이 필요한 이유] (0) | 2023.10.29 |
[패스트캠퍼스 - 30개 프로젝트로 끝내는 추천시스템 구현 강의 Chapter01. 고전적인 추천시스템] (2) | 2023.08.27 |
[ADsP 2과목 요점 정리] (0) | 2023.08.20 |
[ADsP 1과목 요점 정리] (0) | 2023.08.12 |