본문 바로가기

카테고리 없음

[DB] 관계 데이터베이스(릴레이션)

[ 관계 데이터베이스 1] 


데이터 베이스 이전글(스키마) 바로가기


1) 관계 데이터 모델의 애트리뷰트, 투플


일반적으로 관계 데이터 모델은 하나의 개체에 관한 데이터를 릴레이션 하나에 담아 데이터베이스에 저장한다. 


- 테이블의 열은 관계 데이터베이스에서 애트리뷰트(attribute)라고 부른다. 


- 테이블의 행은 관계 데이터 베이스에서 투플(tuple)이라고 부른다. 


- 고객 릴레이션에서 각 투플은 고객 한 명에 대한 속성값들을 모아놓은 것으로 , 고객 개체의 인스턴스이다. 


- 아래의 그림에서 애트리뷰트는 4개이고, 투플도 4개이다. 


2) 도메인 


- 도메인이란, 속성(애트리뷰트)가 가질 수 있는 모든 값의 집합을 도메인이라고 한다. 


- 관계 데이터 모델에서는 분해할 수 없는 원자 값만 사용될 수 있다. 


- 이름, 나이 등의 속성은 가능한 값을 일일이 나열하기 어려우므로 그 특성을 고려해 데이터 타입으로 도메인을 정의한다. 


- 단순 도메인이란, 원자값으로 정의된 도메인이다. 


- 복합 도메인이란, 연,월,일을 결합한 <날짜>라는 하나의 도메인으로 정의한 도메인을 말한다.


3) 차수 


- ** 하나의 릴레이션에서 애트리뷰트의 개수를 차수라고 한다.


- 릴레이션의 차수는 일반적으로 자주 변하지 않는 특성을 가진다. 


- 아래의 그림에서 차수는 4이다. (학번, 이름, 학년, 학과)


4) 카디널리티


- ** 하나의 릴레이션에서 투플의 전체 개수를 카디널리티라고 한다. 


- 카디널리티는 일반적으로 자주 변하는 동적인 특성을 가진다. 


- 아래의 그림에서 카디널리티는 4개(투플의 개수)이다. 


5) 릴레이션 스키마 


-  릴레이션 스키마란, 릴레이션의 이름과 릴레이션에 포함된 모든 애트리뷰트의 이름으로 정의하는 릴레이션의 논리적 구조이다. 


- 릴레이션 이름(애트리뷰트1, 애트리뷰트2, 애트리뷰트3, .... , 애트리뷰트n)


- 릴레이션 스키마를 보면 릴레이션 이름이 무엇이고, 어떤 속성들로 구성되어 있는 지 전체 구조를 파악할 수 있다. 


6) 릴레이션 인스턴스 


- 릴레이션 인스턴스는 어느 시점에 릴레이션에 존재하는 투플들의 집합이다. 


- 릴레이션 인스턴스에 포함된 투플은 릴레이션 스키마에서 정의하는 각 속성에 대응하는 실제 값으로 구성되어있다. 


- 릴레이션 외연으로 부르기도 한다. 


- CRUD로 시간에 따라 변하기 때문에 동적이다.