SMALL
데이터 모델링이란?
- 정보 시스템을 구축하기 위한 데이터 관점의 업무 분석 기법
- 현실 세계의 데이터에 대해 약속된 표기법에 의해 표현하는 과정
- 데이터베이스를 구축하기 위한 분석/설계의 과정
모델링의 특징
- 현실세계를 일정한 형식에 맞추어 표현하는 추상화의 의미를 가짐
- 시스템 구현, 업무분석, 업무 형상화의 목적이 있음
- 복잡한 현실을 제한된 언어나 표기법으로 이해하기 쉽도록하는 단순화의 의미를 가짐
- 애매모호함을 배제하고 누구나 이해 가능하도록 정확하게 현상을 기술하는 정확화의 의미를 가짐
- 데이터 모델링 자체로 업무를 설명하고 분석하는 부분에서도 매우 중요한 의미를 가짐
데이터 모델링 유의사항
중복(Duplication)
- 데이터 모델은 같은 데이터를 사용하는 사람, 시간, 그리고 장소를 파악하는데 도움을 줌으로써 데이터베이스가 여러 장소에 같은 정보를 저장하는 잘못을 하지 않도록 한다.
비유연성(Inflexibility)
- 데이터의 정의를 데이터의 사용 프로세스와 분리한다. → 데이터 혹은 프로세스의 작은 변화가 애플리케이션과 데이터베이스에 중대한 변화를 일으킬 수 있는 가능성을 줄인다.
비일관성(Inconsistency)
- 데이터의 중복이 없더라도 비일관성은 발생할 수 있다.
- 데이터와 데이터간의 상호 연관 관계에 대해 명확하게 정의하여야 한다.
- 사용자가 처리하는 프로세스 혹은 이와 관련된 프로그램과 테이블의 연계성을 높이는 것은 데이터 모델이 업무 변경에 대해 취약하게 만드는 단점.
개념적 데이터 모델링
- 추상화 수준이 높다.
- 업무 중심적이고 포괄적인 수준의 모델링 진행.
- 전사적 데이터 모델링
- EA(Enterprise Architect) 수립시 많이 사용
논리적 데이터 모델링
- 시스템으로 구축하고자 하는 업무에 대해 key, 속성, 관계 등을 정확하게 표현, 재사용성이 높음.
물리적 데이터 모델링
- 실제 데이터베이스에 이식할 수 있도록 성능, 저장 등 물리적인 성격을 고려하여 설계.
데이터베이스 스키마 구조 3단계
데이터베이스 스키마 구조는 3단계로 구분되고 각각은 상호 독립적인 의미를 가지고 고유한 기능을 가진다.
개념 스키마
- 모든 사용자 관점을 통합한 조직 전체 관점의 통합적 표현
- 데이터 모델링은 통합 관점을 가지고 있는 개념 스키마(Conceptual Schema)를 만들어 가는 과정.
외부 스키마
- 사용자 뷰(View)
- 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의
- 전체 데이터베이스의 한 논리적인 부분 (서브 스키마)
- 같은 데이터베이스에 대해서도 서로 다른 관점을 정의 할 수 있도록 허용
- 일반 사용자는 SQL을 사용하여 DB를 사용한다.
내부 스키마
- 물리적 저장장치 입장에서 본 데이터베이스 구조, 물리적인 저장 장치와 밀접한 계층
- 실제 데이터베이스에 저장될 레코드의 물리적인 구조를 정의
- 데이터 항목의 표현방법, 내부 레코드의 물리적 순서 등을 나타냄
- 시스템 프로그래머, 설계자가 보는 관점의 스키마
'Database' 카테고리의 다른 글
DROP, TRUNCATE, DELETE 비교 (0) | 2023.02.07 |
---|---|
SQL 명령어 (0) | 2023.02.07 |
정규화, 반정규화 (0) | 2023.02.06 |
성능 데이터 모델링 (0) | 2023.02.06 |
엔터티 (0) | 2023.02.06 |
댓글