개발자꿈나무
관계 데이터 모델 본문
데이터 모델의 개념
- 데이터 모델의 정의
- 현실 세계의 정보들을 컴퓨터에 표현하기 위해서 단순화, 추상화하여 체계적으로 표현한 개념적 모형
- 데이터, 데이터의 관계, 데이터의 의미 및 일관성, 제약 조건 등을 기술하기 위한 개념적 도구들의 모임
- 현실 세계를 데이터베이스에 표현하는 중간 과정
데이터 모델의 종류
- 개념적 데이터 모델
- 현실 세계에 대한 인간의 이해를 돕기 위해 현실 세계에 대한 인식을 추상적 개념으로 표현하는 과정
- 속성들로 기술된 개체 타입과 개체 타입들간의 관계를 이용하여 현실 세계를 표현
- 현실 세계에 존재하는 개체를 인간이 이해할 수 있는 정보 구조로 표현하기 때문에 정보 모델이라고 함
- 대표적 데이터 모델 : E-R 모델 - 논리적 데이터 모델
- 개념적 모델링 과정에서 얻은 개념적 구조를 컴퓨터가 이해하고 처리할 수 있는 컴퓨터 세계의 환경에 맞도록 변환하는 과정
- 데이터 타입과 이 데이터 타입들 간의 관계를 이용하여 현실 세계를 표현
- 데이터 간의 관계를 어떻게 표현하느냐에 따라 관계 모델, 계층 모델, 네트워크 모델로 구분 - 물리적 데이터 모델
- 실제 컴퓨터에 데이터가 저장되는 방법을 정의하는 물리적 설계 과정
데이터 모델에 표시할 요소
- 구조 : 논리적으로 표현된 개체 타입들 간의 관계로서 데이터 구조 및 정적 성질을 표현
- 연산 : 데이터베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세로서 데이터베이스를 조작하는 기본 도구
- 제약 조건 : 데이터베이스에 저장될 수 있는 실제 데이터의 논리적인 제약 조건
관계 데이터 구조
- 릴레이션 : 정보 저장의 기본 형태가 2차원 구조의 테이블
- 투플 : 테이블의 한 행을 구성하는 속성들의 집합
- 애트리뷰트 : 테이블의 각 열을 의미
- 도메인 : 애트리뷰트가 취할 수 있는 값들의 집합
- 차수(Degree) : 애트리뷰트의 개수
- 기수(Cardinality) : 투플의 개수
* 릴레이션 특성
- 릴레이션의 투플들은 모두 상이
- 릴레이션에서 애트리뷰트들 간의 순서는 의미가 없음
- 한 릴레이션에 포함된 투플 사이에는 순서가 없음
- 애트리뷰트는 원자값으로서 분해가 불가능
- 키
- 후보키
- 속성 집합으로 구성된 테이블의 각 투플을 유일하게 식별할 수 있는 속성이나 속성의 조합들을 후보키라 함
- 투플의 유일성과 그 유일성을 만족시키는 애트리뷰트의 최소성을 만족해야 함 - 슈퍼키
- 한 릴레이션에서 한 투플을 유일하게 식별할 수 있도록 해주는 하나 또는 그 이상의 속성들의 집합
- 유일성은 갖지만 최소성을 만족시키지 못하는 애트리뷰트 집합 - 기본키
- 투플을 유일하게 식별할 수 있는 애트리뷰트 집합
- null과 중복 입력을 허용하지 않음 - 대체키
- 후보키 중에서 기본키를 제외한 나머지 키들 - 외래키
- 릴레이션들 간의 관계를 나타내기 위해 사용되는 키로 어떤 릴레이션의 기본키를 참조하는 애트리뷰트
- 후보키
관계 데이터 제약
- 데이터 무결성
- 무결성이란 데이터베이스에 저장된 데이터 값과 그것이 표현하는 현실 세계에 실제 값이 일치하는 정확성을 의미
- 무결성 제약조건은 데이터베이스 상태가 만족시켜야 하는 조건 - 무결성의 종류
- 개체 무결성 : 기본 릴레이션의 기본키를 구성하는 어떤 속성도 null일 수 없고, 중복 입력되지 않음
- 참조 무결성 : 외래키 값은 null이거나, 참조 릴레이션에 있는 기본키와 같아야 함 (외래키의 도메인은 참조되는 릴레이션의 기본키의 도메인과 같거나 작음)
- 도메인 무결성 : 특정 속성의 값이 그 속성의 정의된 도메인에 속한 값이어야 함
데이터 모델의 구성요소
- 개체
- 데이터베이스에 표현하려는 것
- 실세계에 독립적으로 존재하는 유형, 무형의 정보
* 개체의 구성 요소
- 개체 타입 : 속성으로만 기술된 개체의 정의
- 개체 인스턴스 : 개체를 구성하고 있는 각 속성들의 값을 가져 하나의 개체를 나타내는 것
- 개체 세트 : 개체 인스턴스의 집합
- 속성 : 개체가 가지고 있는 특성
- 단순 속성 : 더 작은 단위로 나누어지지 않는 속성 (성별)
- 복합 속성 : 더 작은 단위로 나누어질 수 있는 속성 (주소)
- 단일값 속성 : 개체 하나가 한 개의 값만 가질 수 있는 속성 (성명, 주민등록번호)
- 다중값 속성 : 개체 하나가 여러 개의 값을 가질 수 있는 속성 (취미) - 관계 : 개체 간의 관계 또는 속성 간의 관계 ( 1:1, 1:n, m:n )
728x90
'CS > 데이터베이스론' 카테고리의 다른 글
병렬 데이터베이스 분할 기법 (0) | 2024.03.07 |
---|---|
관계대수 및 관계해석 (0) | 2024.02.29 |
데이터베이스 시스템 (0) | 2024.02.25 |
데이터베이스 관리 시스템 (DBMS) (2) | 2024.02.25 |
데이터베이스 개요 (0) | 2024.02.12 |