데이터 모델링 1
데이터 모델링
데이터 모델링이란
- 데이터 모델링은 데이터의 효율적인 관리와 사용을 위해 데이터를 구조화하고 조직화 하는 것이다.
- 데이터 모델링을 하기 위해선 클라이언트의 업무 프로세스를 이해해야한다.
- 현실세계를 데이터베이스로 표현 하기 위한 모든 과정이라고 볼 수 있다.
데이터 모델링의 특징
-
추상화
공통적인 특징을 찾고 간략하게 표현하는 과정이다.
-
단순화
복잡한 문제를 피하고 누구나 쉽게 이해할 수 있게 표현한다.
-
명확성
명확하게 의미가 해석되어야 하고 한 가지 의미를 가져야 한다.
예를들어 현실 세계의 윤정호를 데이터베이스로 표현한다고 했을 때 위의 특징들을 이용하여 효율적으로 윤정호를 표현 할 수 있다.
ex) 키 179cm, 몸무게 84kg, 경기도 수원 거주
데이터 모델링 단계
-
개념적 모델링(Conceptual Data Modeling)
-
고객의 비즈니스 프로세스와 규칙을 분석하여 업무 전체에 대해 모델링을 수행한다.
-
복잡하거나 중요하지 않은 부분은 최대한 배제한다.
-
업무적 관점으로 모델링하며 기술적인(어려운) 용어는 사용하지 않는다.
-
가장 추상화 수준이 높은 모델링 단계이다.
-
Entity와 속성을 도출하고 개념적 ERD를 작성한다.
-
-
논리적 모델링(Logical Data Modeling)
-
개념적 모델링을 논리적으로 변환하는 과정이다.
-
식별자를 도출, 필요한 모든 관계를 정의한다.
-
정규화를 수행하여 독립성을 확보한다.
-
정규화를 통해 재사용성을 높인다.
-
-
물리적 모델링(Physical Modeling)
- 데이터 베이스를 실제로 구축하는 단계(테이블, 인덱스, 함수 등)
- 성능 보안 가용성을 고려해서 구축한다.
ERD(Entity Relationship Diagram)
개체-관계 모델이이며, 데이터 모델링을 위해 데이터 모델을 그림으로 표기하기 위한 표시법이다.
Entity와 Entity 간의 관계를 정의하며 개념적 모델링 단계에서 시행한다.
ERD 작성절차
-
Entity를 도출하고 그린다.
- 업무에서 관리해야 하는 집합을 도출한다.
-
Entity를 배치한다.
- Entity를 도출한 후 배치한다.
- 중요 Entity를 왼쪽 상단에 배치한다.
-
Entity간의 관계를 설정한다.
-
관계명을 서술한다.
- 엔터티 간의 어떤 행위나 존재가 있는지 표현한다.
-
관계 참여도를 표현한다.
- 관계 참여도는 한 개의 Entity와 다른 Entity 간의 참여하는 관계 수를 의미한다.
-
관계의 필수 여부를 표현한다.
- 관계에 있어서 반드시 존재해야하는 것을 표시한다.
주의사항
- 중요한 Entity를 가급적 왼쪽 상단에 배치한다.
- ERD는 이해가 쉬워야 하고 최대한 단순하게 표시하여야 한다.
데이터 모델링 고려사항
- 데이터 모델의 독립성
- 독립성이 확보된 모델은 고객의 업무 변화에 능동적으로 대응할 수 있다.
- 독립성을 확보하기 위해서는 중복된 데이터를 제거해야 한다.
- 데이터 중복을 제거하는 방법 = 정규화
-
고객 요구사항의 표현
- 데이터 모델링으로 고객과 데이터 모델러 간에 의사소통을 할 수 있어야 하므로, 고객의 요구 사항을 간결하고 명확하게 표현해야 한다.
- 데이터 품질 확보
- 데이터 베이스 구축시에 데이터 표준을 정희하고 표준 준수율을 관리해야 한다.
- 데이터 표준을 확보해야 데이터 품질을 향상시킬 수 있다.
댓글남기기