[정보처리기사 필기] 데이터베이스 설계 - 061. 데이터 모델의 개념

1. 데이터 모델의 정의

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

2. 데이터 모델의 구성 요소

  • 개체 Entity :  데이터베이스에 표현하려는 것, 사람이 생각하는 개념이나 정보 단위 같은 현실 세계의 대상체
  • 속성 Attribute : 데이터의 가장 작은 논리적 단위로서 파일 구조상의 데이터 항목 또는 데이터 필드에 해당
  • 관계 Relationship : 개체 간의 관계 또는 속성 간의 논리적인 연결을 의미
    • 관계의 형태
      • 일 대 일 1 : 1 : 개체 집합 A의 각 원소가 개체 집합 B의 원소 한 개와 대응하는 관계
      • 일 대 다 1 : N : 개체 집합의 A의 각 원소는 개체 집합 B의 원소 여러 개와 대응하고 있지만, 개체 집합 B의 각 원소는 개체 집합 A의 원소 한 개와 대응하는 관계
      • 다 대 다 N : M : 개체 집합 A의 각 원소는 개체 집합 B의 원소 여러 개와 대응하고, 개체 집합 B의 각 원소도 개체 집합 A의 원소 여러 개와 대응하는 관계

3. 개념적 데이터 모델

  • 현실 세계에 대한 인간의 이해를 돕기 위해 현실 세계에 대한 인식을 추상적 개념으로 표현하는 과정
  • 속성들로 기술된 개체 타입과 이 개체 타입들 간의 관계를 이용하여 현실 세계를 표현
  • 정보 모델 : 현실 세계에 존재하는 개체를 인간이 이해할 수 있는 정보 구조로 표현
  • 대표적인 개념적 데이터 모델 : E-R 모델

4. 논리적 데이터 모델

  • 개념적 모델링 과정에서 얻은 개념적 구조를 컴퓨터가 이해하고 처리할 수 있는 컴퓨터 세계의 환경에 맞도록 변환하는 과정
  • 필드로 기술된 데이터 타입과 이 데이터 타입들 간의 관계를 이용하여 현실 세계를 표현
  • 데이터 모델의 대표
  • 특정 DBMS는 특정 논리적 데이터 모델 하나만 선정하여 사용
  • 논리적 데이터 모델의 구분 : 관계 모델, 계층 모델, 네트워크 모델

5. 데이터 모델에 표시할 요소

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