728x90
반응형
모델링의 정의

 

인류의 가장 보편적인 특징이면서 욕구 중의 하나는 의사소통을 하면서 그에 대한 기록을 남기는 것이다.

어떤 현상에 대해 기록하고 남겨 자신 또는 사람에게 적절한 의미를 주기 위해 고대부터 기록의 문화는 발전해 왔다.

모델이라고 하는 것은 모형, 축소형의 의미로서 사람이 살아가면서 나타날 수 있는 다양한 현상에 대해 일정한 표기법에 의해 표현해 놓은 모형이라고 할 수 있다. 이 역시 사람이 어떤 목적을 달성하기 위해 커뮤니케이션의 효율성을 극대화한

고급화된 표현 방법으로 설명 될 수 있다.

 

사람이 살아가면서 나타날 수 있는 다양한 현상은 사람, 사물, 개념 등에 의해 발생된다고 할 수 있다.

모델링은 이것을 표기법에 의해 규칙을 가지고 표기하는 것 자체를 의미한다.

즉, 모델을 만들어가는 일 자체를 모델링으로 정의할 수 있다.

 

 


모델링의 특징
  • 추상화현실세계를 일정한 형식에 맞추어 표현하는 표현을 한다는 의미
  • 단순화복잡한 현실을 제한된 언어나 표기법을 통해 이해하기 쉽게 하는 의미
  • 명확화누구나 이해하기 쉽게 하기 위해 대상에 대한 애매모호함을 제거하고 정확하게 현상을 기술하는 것을 의미

 

데이터 모델링이 필요한 주요 이유
  • 업무정보를 구성하는 기초가 되는 정보들에 대해 일정한 표기법에 의해 표현
  • 분석된 모델을 가지고 데이터베이스를 생성하여 개발 및 데이터 관리에 사용하기 위한 것
  • 데이터 모델링 자체로서 업무를 설명하고 분석하는 부분에 의미를 가지고 있음

 

데이터 모델링을 할 때 유의해야 할 사항
  • 중복(Duplication):
    여러 장소의 데이터베이스에 같은 정보를 저장하지 않도록 하여 중복성을 최소화한다.
  • 비유연성(Inflexibility):
    데이터의 정의를 데이터의 사용 프로세스와 분리하여 유연성을 높힌다.
  • 비일관성(Inconsistency):
    데이터간의 상호 연관관계를 명확하게 정의하여 일관성 있게 데이터가 유지되도록 한다.

 

개념-논리-물리데이터 모델 (모델링의 3단계 진행)

특별히 데이터 모델은 데이터베이스를 만들어내는 설계서로서 분명한 목표를 가지고 있다.

현실세계에서 데이터베이스까지 만들어지는 과정은 아래 그림과 같이 시간에 따라 진행되는 과정으로서
추상화 수준에 따라 개념적 데이터 모델, 논리적 데이터 모델, 물리적 데이터 모델로 정리할 수 있다.

 

데이터모델링 내용
개념적
데이터 모델링
추상화 수준이 높고 업무중심적이고 포괄적인 수준의 모델링 진행
전사적데이터모델링,  EA 수립시 많이 이용
논리적
데이터 모델링
시스템으로 구축하고자 하는 업무에 대해 Key, 속성, 관계 등을 정확하게 표현
재사용성이 높음
물리적
데이터 모델링
실제로 데이터베이스에 이식할 수 있도록 성능, 저장 등 물리적인 성격을 고려하여 설계

 

데이터 베이스의 3단계 구조

ANSI-SPARC의 3단계 구성의 데이터독립성 모델은 외부단계와 개념적 단계, 내부적 단계로 구성되어
서로 간섭되지 않는 모델을 제시하고 있다.

항목 내용 비고
외부스키마
(External
Schema)
- View 단계 여러 개의 사용자 관점으로 구성
즉 개개 사용자 단계로서 개개 사용자가 보는 개인적 DB 스키마
- DB의 개개 사용자나 응용프로그래머가 접근하는 DB 정의
사용자 관점
접근하는 특성에 따른 스키마 구성
개념스키마
(Conceptual
Schema)
- 모든 사용자 관점을 통합한 조직 전체 관점의 통합적 표현
- 모든 응용시스템들이나 사용자들이 필요로 하는 데이터를 통합한
조직 전체의 DB를 기술한 것으로 DB에 저장되는 데이터와 그들간의
관계를 표현하는 스키마
통합관점
내부스키마
(Internal
Schema)
- 내부단계, 내부 스키마로 구성, DB가 물리적으로 저장된 형식
- 물리적 장치에서 데이터가 실제적으로 저장되는 방법을 표현하는
스키마
물리적 저장구조

데이터베이스 스키마 구조는 3단계로 구분되고 각각은 상호 독립적인 의미를 가지고 고유한 기능을 가진다.
데이터 모델링통합관점의 뷰를 가지고 있는 개념 스키마를 만들어가는 과정으로 이해할 수 있다.

 

- 두 영역의 데이터 독립성

 

이렇게 3단계로 개념이 분리되면서 각각의 영역에 대한 독립성을 지정하는 용어가 바로 논리적인, 물리적인 독립성이다.

독립성 내용 특징
논리적
독립성
- 개념 스키마가 변경되어도 외부스키마에 영향을 미치지 않도록 지원
- 논리적 구조가 변경되어도 응용 프로그램에 영향이 없음
- 사용자 특성에 맞는 변경가능
- 통합 구조 변경가능
물리적
독립성
- 내부 스키마가 변경되어도 외부/개념 스키마는 영향을 받지 않도록 지원
- 저장장치의 구조변경은 응용프로그램과 개념 스키마에 영향이 없음
- 물리적 구조 영향 없이 개념구조
변경 가능
- 개념 구조 영향 없이 물리적인 구조 변경 가능

 

데이터 모델의 표기법인 ERD에 대한 이해
  • 1976년 피터첸(Peter Chen)에 의해 Entity-relationship Model(E-R Model)이라는 표기법이 만들어짐
  • ERD 작성하는 작업순서:
    1. 엔터티 그린다.(도출)
    2. 엔터티를 적절하게 배치한다.
    3. 엔터티간 관계를 설정한다.
    4. 관계명을 기술한다.
    5. 관계의 참여도를 기술한다.
    6. 관계의 필수여부를 기술한다.

  • 관계의 명칭은 관계 표현에 있어 매우 중요한 부분에 해당한다.

  • 일반적으로 사람의 눈은 왼쪽에서 오른쪽,
    위쪽에서 아래쪽으로 이동하는 경향이 있다. 따라서 가장 중요한 엔터티를 왼쪽 상단에 배치한다.

 

# Reference:

 

데이터 모델의 이해

1. 모델링의 이해 가. 모델링의 정의 인류의 가장 보편적인 특징이면서 욕구 중의 하나는 의사소통을 하면서 항상 그에 대한 기록을 남기는 것이다. 어떤 현상에 대해 기록하고 남겨 자신 스스로

dataonair.or.kr


Summary

 

  1. 모델링
    • 다양한 현상을 추상화, 단순화하여 일정한 표기법에 의해 표현하는 것
    • 모델이란 현실 세계의 추상화된 반영
  2. 모델링 특징
    • 추상화: 일정한 형식에 맞춰서 표현
    • 단순화: 제한된 표기법이나 언어로 표현
    • 명확화(=정확화): 애매모호함을 제거하여 이해가 쉽게 표현
  3. 모델링의 관점
    • 데이터 관점(what): 업무와 데이터 및 데이터 사이의 관계를 모델링
    • 프로세스 관점(how): 업무가 실제로 하고 있는 일, 해야 하는 일 모델링
    • 데이터와 프로세스와의 상관 관점(interaction): 데이터에 대한 업무 처리 방식의 영향을 모델링

    • 데이터 모델링의 중요성과 유의점
      • 중요성: 파급효과, 간결한 표현, 데이터 품질 유지
      • 유의점:
        - 중복: 여러 장소에 같은 정보 저장 금지
        - 비유연성: 데이터의 정의를 데이터 사용 프로세스와 분리
        - 비일관성: 모델링 할 때 데이터 간 상호 연관 관계 명확히 정의

  4. 데이터 모델링의 3단계
    • 개념적 모델링 (계획/분석) : ERD도출, 업무중심, 포괄적인 수준의 모델링
    • 논리적 모델링 (분석) : 테이블 도출, (key, 속성, 관계)를 표현 재사용성, 정규화 수행
    • 물리적 모델링 (설계) : DB 구축, 물리적 성격, 개념적보다 구체적

  5. 데이터 독립성
    • 데이터의 구조가 변경되어도 응용 프로그램이 변경될 필요가 없음
    • 논리적 독립성 + 물리적 독립성으로 실현됨
    • 필요성: 데이터 중복성과 복잡도가 증가 → 요구사항 대응 저하, 유지보수 비용 증가
      • 데이터베이스 스키마 (Schema)
        - 데이터 모델링 대상(구조)
        - 데이터베이스 구조, 데이터 타입, 제약조건에 대한 명세
        - 데이터베이스 설계 단계에서 명시되며 자주 변경되지 않음
      • 데이터베이스의 3단계 구조
        - 외부 스키마: 응용프로그램 관점에서의 요구사항, 사용자 관점, DB 정의
        - 개념 스키마: 외부 스키마가 필요로 하는 데이터 모두 모아 놓은 것, 설계자 관점
        (=DB에 저장되는 데이터와 사용자 관계 표현 → 모든 사용자 관점 통합, 조직 전체 통합)
        - 내부 스키마: 데이터베이스가 물리적으로 저장된 형식, 개발자 관점
        ▷ 데이터 모델링은 통합 관점의 개념 스키마를 만들어 가는 과정
      • 사상 (Mapping)
        - 상호 독립적인 개념을 연결시켜주는 다리
        - 논리적 사상: 외부화면 및 사용자 인터페이스 스키마 구조는 개념스키마와 연결
        - 물리적 사상: 개념스키마 구조와 물리적 저장된 구조(table space)와 연결
      • 논리적 독립성
        - 논리적 사상(외부적-개념적) 을 통해 논리적 독립성 보장
        - 개념 스키마가 변경되어도 외부 스키마에는 영향이 없다.
        - 논리적 구조가 변경되어도 응용 프로그램에는 영향이 없다. 통합구조 변경 가능

      • 물리적 독립성
        - 물리적 사상 (개념적-내부적) 을 통해 물리적 독립성 보장
        - 내부 스키마가 변경되어도 외부/개념 스키마는 영향이 없다.
        - 응용 프로그램과 개념스키마에 영향 없이 저장장치 구조변경 가능, 물리적 구조
  6. 데이터 모델링 3요소 (개체, 속성, 관계 - Entity(Thing), Atrribute, Relationship)
    • 업무가 관여하는 어떤 것 (Thing) : 엔터티타입, 엔터티/ 엔터티, 인스턴스
    • 어떤 것이 가지는 성격/속성 (Attributes) : 속성/속성값
    • 어떤 것들의 관계 (Relationships) : 관계 / 페어링

  7. ERD (Entity Relationship Diagram)
    • 데이터 모델 표기법 : 엔터티를 사각형, 관계를 마름모, 속성을 타원형으로 표현

  8. ERD 표기법을 이용하여 모델링 하는 방법
    1. 엔터티를 그린다 (도출)
    2. 엔터티 배치 (배치)
    3. 엔터티간 (식별자) 관계 설정 (관계설정)
    4. 관계명 기술
    5. 관계 참여도 기술
    6. 관계 필수여부 기술

  9. 좋은 모델링의 요건
    • 완전성: 업무에서 필요로 하는 모든 데이터가 데이터 모델에 정의되어야 한다.
    • 중복배제: 동일한 사실은 반드시 한번만 기록한다.
    • 업무규칙: 업무규칙이 데이터 모델에 표현되어야 한다.
    • 데이터 재사용: 회사 전체 관점에서 공통 데이터 도출, 전 영역에서 사용할 수 있도록 설계
    • 통합성: 동일한 데이터는 조직의 전체에서 한번만 정의되고 이를 참조하고 활용한다.

728x90
반응형

'Language > RDBMS' 카테고리의 다른 글

속성(Attribute)  (0) 2023.03.07
엔터티(Entity)  (0) 2023.03.07
인덱스(Index)  (0) 2023.03.07
뷰(View)  (0) 2023.03.06
[DDL] 명령어를 활용한 테이블 정의  (0) 2023.03.04

+ Recent posts