Code Forest
1-2. 데이터모델링 기본 본문
모델링 |
현실세계를 추상화, 단순화, 명확화한 것.
추상화 |
구현방법을 생략. 단순히 입력/출력만을 설계. 즉, 제한된 표기법을 사용. |
단순화 |
불필요한 속성을 생략함. |
명확화 |
애매모호한 속성의 특징을 정확히 함. |
모델링 관점 |
데이터 관점 |
데이터 구조, 형식, 제약조건을 모델링. |
프로세스 관점 |
추상화된 트랜잭션를 모델링. |
상관 관점 |
데이터와 트랜잭션의 연관성을 모델링. 즉, 트랜잭션을 구현하는 모델링. |
데이터모델링 |
정보 시스템의 구축을 위하여 현실세계를 정해진 방식을 거쳐 정제한 것.
데이터모델링의 기능 |
시스템을 원하는 형태로 가시화 함. |
시스템의 구조, 행동, 구축과정을 문서화, 명세화 함. |
시스템을 구축하는 틀을 제공. |
특정 영역에 집중하기 위해 다른 영역을 숨길 수 있음. |
특정 목표에 따라 다양한 수준의 표현방법을 적용할 수 있음. |
데이터모델링 3요소 |
데이터 구조 |
데이터 구조의 3요소는 (엔터티, 속성, 관계) |
트랜잭션 |
|
제약조건 |
|
데이터모델링의 중요성 |
파급효과 |
미흡한 데이터모델링으로 인하여 문제 발생시, 그동안 축적된 데이터량에 비례하여 해결비용이 기하급수적으로 증가한다. |
요구조건 간결화 |
의뢰인이 원하는 요구조건을 쉽게 파악할 수 있다. |
데이터 신뢰성 |
미흡한 데이터모델링은 축적된 데이터들의 정확성을 보장할 수 없게된다. 따라서 신뢰성 또한 보장할 수 없다. |
데이터모델링의 진행 |
개념적 데이터모델링 |
포괄적이고 추상적으로 모델링하고 ER모델로 표현함. |
논리적 데이터모델링 |
데이터 구조 설계 및 정규화를 수행하는 단계. |
물리적 데이터모델링 |
저장매체의 물리적 특성을 고려하여 데이터의 저장형태를 모델링. |
개념적 관계유형 |
관계형 |
테이블 형태로 데이터가 표현되며, 릴레이션을 통하여 데이터간 관계를 표현. (기본-외래) |
계층형 |
트리 형태로 데이터가 표현되며, 링크를 통하여 데이터간 관계를 표현. (부모-자식) |
그래프형 |
그래프 형태로 데이터가 표현되며, 링크를 통하여 데이터간 관계를 표현 (오너-멤버) |
객체지향형 |
|
좋은 데이터모델링의 요소 |
완전성 |
필요한 속성 중, 누락된 것이 없어야한다. |
통합성 |
중복된 속성은 배제되어야 한다. |
명세성 |
요구조건, 제한사항 등이 명시되어야 한다. |
재사용성 |
독립성을 보장하여 해당 모델링이 재사용하기 편하도록 한다. |
데이터독립성의 필요성 |
고유기능을 명확히 하고, 외부변화에 덜 민감하게 함.
스키마 |
DB구조와 제약조건의 전반적인 정의가 명세된 것.
데이터 사전에 저장되며, 메타 데이터라고도 한다.
ANSI X3 계층 |
각 관점의 독립성과 사상(DDL, DML)이 다름을 보장한다.
외부 스키마는 사용자의 개수만큼 존재하지만,
개념, 내부 스키마는 전체 데이터베이스 내에서 유일하다.
논리적 독립성 |
외부 스키마와 개념 스키마를 분리시켜, 응용프로그램과 데이터베이스를 분리시킨다. |
물리적 독립성 |
개념 스키마와 내부 스키마를 분리시켜, 데이터베이스와 물리적 장치를 분리시킨다. |
사상 |
서로 독립된 스키마를 연결시키는 개념.
데이터모델링 내 용어들의 단수/복수형 |