data analysis & visualization

데이터모델링이란?

 1. 모델링 

   모델링 : 사람, 사물, 사건 간에 발생하는 다양한 현상을 표기법에 의해 규칙을 가지고 표기하는 것

 1) 모델링의 특징

   추상화 : 현실세계를 일정한 형식에 맞추어 표현해야 함.

   단순화 : 현실세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현해 쉽게 이해할 수 있도록 하는 개념

   명확화 : 누구나 이해하기 쉽게 모호하지 않게 기술해야 함.

  2) 모델링의 관점

   데이터 관점 : 업무가 어떤 데이터와 관련이 있는지 데이터 간에는 어떠한 관계가 있는지에 대한 관점

   프로세스 관점 : 업무가 실제 하고 있는 일은 무엇인지와 무엇을 해야하는지에 대한 관점

   데이터와 프로세스 관점 : 업무가 처리하는 일의 방법에 따라 어떤 영향을 받고 있는지에 대한 관점

   3) 모델링의 필요성

   - 파급효과 : 병행테스트, 통합테스트 수행중 데이터 모델의 변경이 불가피한 경우 전체 시스템 구축 프로젝트에 큰 위험요소가 발생

   - 시스템의 요구사항과 한계를 가장 명확하게 표현할 수 있는 도구

   - 데이터의 품질과 밀접한 관련

   4) 모델링의 유의점

   - 중복 : 데이터베이스가 여러장소에 저장되는 것을 유의해야 함

   - 비유연성 : 업무 변화에 따라 모델이 영향을 받으므로 모델 변경이 요구되는 경우 존재.

                 유지보수를 편하게 하기위해서는 데이터 정의와 프로세스를 분할 할 필요가 존재 
   - 비일관성 : 데이터의 중복이 없어도 비일관성이 존재할 수있으므로 모델링시에 데이터간 상호 연관관계에 대한 명확한 정의가 중요

 2. 데이터모델링

   1) 데이터 모델링의 정의

   - 정보 시스템을 구축하기 위한 데이터 업무 분석 기법

   - 현실세계의 데이터를 약속된 표기법에 의해 표현하는 과정

   - 데이터베이스를 구축하기 위한 분석/설계 과정

   2) 데이터모델링의 단계

   - 개념적 모델링 : 추상화 수준이 높으며 업무중심적, 포괄적 수준의 모델링 진행

    * 데이터의 요구사항 파악에서 시작

    * 자료의 중요도 파악

    * 핵심 엔터티 간의 관계 파악 및 ERD를 구축하는 단계

 

   - 논리적 모델링 : 시스템으로 구축하고자하는 업무에 대해 Key, 속성, 관계 등을 정확히 표현하는 단계

    * 정규화 : 논리데이터모델의 일관성 확보 및 중복 제거를 통한 속성들의 적절한 엔터티에 배치되도록 함으로써 신뢰성있는 데이터를 얻는 것

    * 상세화 : 식별자의 확정, 정규화, M:M 관계 해소, 참조무결성규칙정의 등을 의미

 

   - 물리적 모델링 : 실제 데이터베이스에 이식할 수 있게 성장, 저장 등 물리적 성격을 고려하여 설계

    * 물리적 스키마 : 테이블, 컬럼 등으로 표현되는 물리적 저장구조와 저장장치, 자료추출을 위해 사용된 방법 등을 정의하는 단계

 

   데이터 독립성의 목적

   - 유지보수 비용절감

   - 데이터 복잡도 감소

   - 중복된 데이터 감소

   - 요구사항 대응이 용이

 

   데이터 독립성의 이점

    - 각 View의 독립성을 유지, 계층별 View에 영향을 주지않고 변경이 가능

    - 단계별스키마에 따라 데이터 정의어와 데이터 조작어가 다름을 제공