본문 바로가기
DB & SQL/데이터베이스 개론

관계 데이터 모델

by k-mozzi 2022. 2. 11.
반응형
Preface

 

이번 장에선 논리적 데이터 모델의 도구 중 하나인 관계 데이터 모델을 공부했다.

 

처음 데이터베이스 공부를 시작할 땐 그동안 공부했던 책들보다 어려울 것 같다는 생각을 했지만, 주로 단어의 의미만을 소개하는 탓인지 책이 잘 읽혀 막히는 부분 없이 쉽게 이해하며 넘어갈 수 있었다.

 

남은 2주 간 쭉쭉 진도를 나가 개강 전에 이번 책을 끝낼 계획이다.


 

1. 관계 데이터 모델의 개념

 

 

- 릴레이션: 관계형 DB에서 정보를 구분하여 저장하는 기본 단위

→ DB 테이블

 

 

- 관계 데이터 모델에선 하나의 개체에 관한 데이터를 릴레이션 하나에 담아 DB에 저장한다.

 

 

- 관계 데이터 모델의 기본 용어


1. 속성(애트리뷰트): 릴레이션의 열

 

 

2. 튜플: 릴레이션의 행

 

 

3. 도메인: 속성 하나가 가질 수 있는 모든 값의 집합

→ ex) vip, gold, silver, bronze 네 가지 값을 모아놓은 것

→ 도메인을 정의해두면 항상 올바른 값만 유지할 수 있지만, 일반적으로 속성의 특성을 고려한 데이터 타입으로 정의한다.

 

 

4. 널 값: 릴레이션의 있는 튜플의 속성 값을 모르거나, 적합한 값이 없는 경우 사용

 

 

5. 차수: 하나의 릴레이션에서 속성 전체의 개수

→ 자주 변하지 않는다.

 

 

6. 카디널리티: 하나의 릴레이션에서 튜플의 전체 개수

→ 자주 변한다.

 

 

7. 릴레이션 스키마(내포): 릴레이션의 이름과 릴레이션에 포함된 모든 속성의 이름으로 정의하는 릴레이션의 논리적 구조

 

 

8. 릴레이션 인스턴스(외연): 어느 한 시점에 릴레이션에 존재하는 튜플들의 집합

 

 

9. 데이터베이스 스키마: DB를 구성하는 릴레이션들의 스키마를 모아놓은 것

 

 

10. 데이터베이스 인스턴스: 어느 한 시점에 DB에 저장된 데이터 내용의 전체 집합


 

- 릴레이션의 특성

1) 튜플의 유일성: 하나의 릴레이션에는 동일한 튜플이 존재할 수 없다.

2) 튜플의 무순서: 하나의 릴레이션에서 튜플 사이의 순서는 무의미하다.

3) 속성의 무순서: 하나의 릴레이션에서 속성 사이의 순서는 무의미하다.

4) 속성의 원자성: 속성 값으로 원자 값만 사용할 수 있다.

 

 

- 키(key): 관계 데이터 모델에서 중요한 제약조건을 정의하는 역할을 담당

 

 

- 키의 종류


1. 슈퍼키: 유일성의 특성을 만족하는 속성 또는 속성들의 집합

→ 유일성: 하나의 릴레이션에서 키로 지정된 속성 값은 튜플마다 달라야 한다는 의미

 

 

2. 후보키: 유일성과 최소성을 만족하는 속성 또는 속성들의 집합

→ 최소성: 꼭 필요한 최소한의 속성들로만 키를 구성하는 특성

 

 

3. 기본키: 여러 후보키 중에서 기본적으로 사용할 키

→ 속성 이름에 밑줄을 그어 표현한다.

 

 

4. 대체키: 기본키로 선택되지 못한 후보키들

 

 

5. 외래키: 어떤 릴레이션에 소속된 속성 또는 속성 집합이 다른 릴레이션의 기본키가 되는 키

1) 다른 릴레이션과 관계를 맺어 연관성 있는 튜플을 연결시킬 수 있다.

2) 외래키가 되는 속성과 기본키가 되는 속성의 이름은 달라도 된다.

3) 외래키 속성의 도메인과 참조되는 기본키 속성의 도메인은 반드시 같아야 한다.

4) 하나의 릴레이션에 외래키가 여러 개 존재할 수도 있다.

5) 외래키를 기본키로 사용할 수도 있고, 외래키를 포함하여 기본키를 구성할 수도 있다.

6) 참조하는 릴레이션과 참조되는 릴레이션이 같을 수도 있다.

7) 기본키가 아니기 때문에 널 값을 가질 수 있고, 서로 다른 튜플이 같은 값을 가질 수도 있다.


 


 

2. 관계 데이터 모델의 제약

 

 

- 관계 데이터 모델의 제약조건: 데이터를 정확하고 유효하게 유지하는 무결성을 보장해야 된다는 규칙

1) 개체 무결성 제약조건: 기본키를 구성하는 모든 속성 값은 널 값을 가지면 안 된다.

2) 참조 무결성 제약조건: 외래키는 참조할 수 없는 값을 가질 수 없다.

 

728x90
반응형

'DB & SQL > 데이터베이스 개론' 카테고리의 다른 글

데이터베이스 언어 SQL  (0) 2022.02.17
관계 데이터 연산  (0) 2022.02.13
데이터 모델링  (0) 2022.01.31
데이터베이스 시스템  (0) 2022.01.26
데이터베이스 관리 시스템  (0) 2022.01.24

댓글