데이터 모델의 개념

clay·2023년 2월 14일
0

소프트웨어 개발

목록 보기
45/47
post-thumbnail

데이터 모델의 정의

데이터 모델은 현실 세계의 정보들을 컴퓨터에 표현하기 위해서 단순화, 추상화하여 체계적으로 표현한 개념적 모형이다.

  • 데이터 모델은 데이터, 데이터의 관계, 데이터의 의미 및 일관성, 제약 조건 등을 기술하기 위한 개념적 도구들의 모임이다.
  • 현실 세계를 데이터베이스에 표현하는 중간 과정, 즉 데이터베이스 설계 과정에서 데이터의 구조(Schema)를 논리적으로 표현하기 위해 사용되는 지능적 도구이다.
  • 데이터 모델 구성 요소: 개체, 속성, 관계
  • 데이터 모델 종류: 개념적 데이터 모델, 논리적 데이터 모델, 물리적 데이터 모델
  • 데이터 모델에 표시할 요소: 구조, 연산, 제약 조건
물리적 데이터 모델
실제 컴퓨터에 데이터가 저장되는 방법을 정의하는 물리 데이터베이스 설계 과정이다.

데이터 모델의 구성요소

  • 개체(Entity): 데이터베이스에 표현하려는 것으로, 사람이 생각하는 개념이나 정보단위 같은 현실 세계의 대상체이다.
  • 속성(Attribute): 데이터의 가장 작은 논리적 단위로서 파일 구조상의 데이터 항목 또는 데이터 필드에 해당한다.
  • 관계(Relationship): 개체 간의 관계 또는 속성 간의 논리적인 연결을 의미한다.

개념적 데이터 모델

개념적 데이터 모델은 현실 세계에 대한 인간의 이해를 돕기 위해 현실 세계에 대한 인식을 추상적 개념으로 표현하는 과정이다.

  • 개념적 데이터 모델은 속성들로 기술된 개체 타입과 이 개체 타입들 간의 관계를 이용하여 현실 세계를 표현한다.
  • 개념적 데이터 모델은 현실 세계에 존재하는 개체를 인간이 이해할 수 있는 정보구조로 표현하기 때문에 정보 모델이라고도 한다.
  • 대표적인 개념적 데이터 모델로는 E-R 모델이 있다.

논리적 데이터 모델

논리적 데이터 모델은 개념적 모델링 과정에서 얻은 개념적 구조를 컴퓨터가 이해하고 처리할 수 있는 컴퓨터 세계의 환경에 맞도록 변환하는 과정이다.

  • 논리적 데이터 모델은 필드로 기술된 데이터 타입과 이 데이터 타입들 간의 관계를 이용하여 현실 세계를 표현한다.
  • 단순히 데이터 모델이라고 하면 논리적 데이터 모델을 의미한다.
  • 특정 DBMS는 특정 논리적 데이터 모델 하나만 선정하여 사용한다.
  • 논리적 데이터 모델은 데이터 간의 관계를 어떻게 표현하느냐에 따라 관계 모델, 계층 모데르 네트워크 모델로 구분한다.

논리적 데이터 모델의 품질 검증

논리 데이터 모델 품질 검증은 완성된 논리 테이터 모델이 기업에 적합한지를 확인하기 위해 품질을 검증하는 것이다.

  • 논리 데이터 모델의 품질은 논리 데이터 모델 품질 기준에 따라 개체, 속성, 관계, 식별자, 모델 전반 등에 대하여 검토 체크리스트를 작성하고 체크리스트의 각 항목을 확인하는 방식으로 검증한다.
논리 데이터 모델 품질 기준
정확성, 완전성, 준거성, 최신성, 일관성, 활용성 등이 있다.
  • 개체 품질 검증 항목: 단수 명사 여부, 개체의 주 식별자, 개체 간 상호 배타성, 개체의 정규화 여부, 개체 상세 정의, 개체 관리 업무 기능, 개체에 2개 이상의 송성 존재 여부, 개체의 총 길이, 개체 동의어 여부, 개체 분산 요구 등
  • 속성 품질 검증 항목: 단수 명사 여부, 속성의 값 존재 여부 및 개수, 도메인 정의, 반복되는 속성, 그룹화 가능 속성, 주 식별자 및 비 식별자에 의존하는 속성, 다치 종속 속성 등
다치 종속
A, B, C 3개의 속성을 가진 테이블 R에서 어떤 복합 속성(A, C)에 대응하는 B 값의 집합이
A 값에만 종속되고 C 값에는 무관하면, B는 A에 다치 종속이라한다.

dependency
종속, 종속성, 의존성
  • 관계 품질 검증 항목: 관계의 명칭, 2개 이상의 노드와 관계 존재 여부, 노드의 기수성과 선택성, 필수적 관계, 유효한 관계, 중복된 관계, 외부 식별자 존재 여부, 참조 무결성 여부 등
기수성(Cardinality)
관계에 참여하는 각 개체에 대하여 가능한 관계의 수를 의미하며 관계 차수라한다.
예) 1:1, 1:M, M:N

선택성(Optionality)
관계가 필수인지 선택인지를 표현하는 것을 의미하며, 관계 선택 사양이라고도 한다.
예) 1:1, 1:0

정합성
데이터 정합성은 데이터가 서로 모순 없이 일관되게 일치해야함을 의미
  • 식별자 품질 검증 항목: 식별자의 명칭, 정의, 구성, 정합성, 크기, 순서 등
  • 전반적인 품질 검증 항목: 주제 영역 구성의 적절성, 데이터 모델 상에 정규화 여부, 다대다 관계 해소 여부, 이력 관리 대상 선정 확인, 이력 관리 방법의 적절성 확인

데이터 모델에 표시할 요소

  • 구조(Structure): 논리적으로 표현된 개체 타입들 간의 관계로서 데이터 구조 및 정적 성질을 표현한다.
  • 연산(Operation): 데이터베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세로서 데이터베이스를 조작하는 기본 도구이다.
  • 제약 조건(Constraint): 데이터베이스에 저장될 수 있는 실제 데이터의 논리적인 제약 조건이다.
profile
샤코타임 팬

0개의 댓글