Computer Science/데이터 베이스

[데이터베이스] 관계 모델(Relation Model)

바보1 2023. 10. 25. 23:43

앞의 글을 읽으시면 이해에 도움이 됩니다.

 

2023.10.25 - [Computer Science/데이터 베이스] - [데이터베이스] 약한 엔티티 타입(Weak Entity Type)

 

[데이터베이스] 약한 엔티티 타입(Weak Entity Type)

앞의 글을 읽으시면 이해에 도움이 됩니다. 2023.10.21 - [Computer Science/데이터 베이스] - [데이터베이스] ER 모델(Entity Type, Entity Sets, Attributes and Keys) [데이터베이스] ER 모델(Entity Type, Entity Sets, Attribute

hi-guten-tag.tistory.com


1. 관계형 모델(Relational Model)

 

 

  • 관계형 모델은 데이터베이스를 릴레이션들의 모임으로 표현합니다.
  • 릴레이션이란 테이블을 의미하고, 행은 튜플, 열은 애트리뷰트, 가능한 값들은 도메인에 의해 표현됩니다.

  • 위의 예시에서, STUDENT가 릴레이션이고, 튜플은 <Smith, 17, 1 CS>가 되고, 애트리뷰트는 Name, Student_number, Class, Major이 됩니다.

2. 도메인(Domain)

 

 

  • 도메인(Domain)은 D라고도 불리며 더 이상 나누어질 수 없는 원자 값들의 집합입니다.
  • 일반적으로 도메인을 명시하는 방법은 도메인에 속하는 값들의 데이터 타입 혹은 데이터 포맷을 명시하는 것입니다.
  • 일반적으로 전화번호의 도메인(데이터 타입)은 (ddd)ddd-dddd와 같은 형식의 문자열로 선언할 수 있습니다.
  • 이때 특정 애트리뷰트 Ai의 도메인은 don(Ai)라고 표기합니다.
  • 따라서 릴레이션 내에서 어트리뷰트의 이름이 도메인의 역할을 수행합니다.

3. 스키마(Schema)

 

 

  • R(A1, A2, ..., An)으로 표시하는 릴레이션 스키마(Relation Schema) 혹은 릴레이션의 내연(Intension of a Relation)은 R이라는 릴레이션 이름과 A1, A2, ..., An이라는 애트리뷰트들로 이루어집니다.
  • 각 애트리뷰트는 스키마 R에서의 어떤 도메인 D와 같은 역할을 수행합니다.
  • 이 릴레이션 스키마의 애트리뷰트 수를 릴레이션의 차수(Degree(or Arity) of the Relation)이라고 합니다.
  • 아래와 같은 릴레이션의 차수는 7입니다.


4. 튜플(Tuple)

 

 

  • 릴레이션 스키마 r은 n-튜플(n-Tuple)의 집합입니다. r은 r(R)으로도 표기할 수 있습니다.
  • 즉 r은 {t1, t2, ..., tm}입니다.
  • n-튜플은 n개의 값의 순서 리스트이며, t = <v1, v2, ..., vn>으로 표기합니다.
  • 즉 n-튜플에서 n이 의미하는 바는 하나의 튜플이 n개의 값을 가진다로 해석됩니다.
  • 또한 튜플을 표시할 때는 <>로 표시합니다.
  • 각 vi는 dom(Ai)의 원소이거나 NULL 값을 가집니다.
  • 예를 들어 r(R) = {<0, a>, <0, b>, <1, c>}라면, r은 3개의 2-튜플을 가집니다.

5. 릴레이션 상태(Relation State)

 

 

  • 릴레이션 상태(Relation State) 혹은 릴레이션의 외연(Extension of the Relation)은 R을 정의하는 도메인들의 카티션 곱(Cartesian Product)의 부분집합입니다.
  • Cartesian Product는 도메인 값들의 모든 가능한 조합을 의미합니다. 
  • 쉽게 말해서 특정 릴레이션의 상태는 모든 도메인들의 경우의 수 집합 중 부분집합입니다.
  • 따라서 위의 튜플에서 r(R)은 relation R의 특정 상태를 의미하고, r(R)은 dom(A1) * dom(A2) * ... * dom(An)에 속합니다.

  • 위의 예시에서 Relation Name은 STUDENT, 애트리뷰트는 Name, Ssn, Home_phone, Address, Office_phone, Age, Gpa가 됩니다.
  • 또한 튜플은 각 행이 되겠습니다.
  • 따라서 릴레이션 스키마는 STUDENT(Name, Ssn, Home_phone, Address, Office_phone, Age, Gpa)로 표시됩니다.

참고

 

 

경북대학교 컴퓨터학부 COMP0322-004 데이타베이스 수업

DATABASE SYSTEMS 7th / Elmasri, Navathe 저 / PEARSON / 2019년


다음 글에서는 릴레이션의 특성(Characteristics of Relation)에 대해 알아보겠습니다.

 

2023.10.26 - [Computer Science/데이터 베이스] - [데이터베이스] 릴레이션의 특성(Characteristics of Relation)

 

[데이터베이스] 릴레이션의 특성(Characteristics of Relation)

앞의 글을 읽으시면 이해에 도움이 됩니다. 2023.10.25 - [Computer Science/데이터 베이스] - [데이터베이스] 관계 모델(Relation Model) [데이터베이스] 관계 모델(Relation Model) 앞의 글을 읽으시면 이해에 도

hi-guten-tag.tistory.com

 

감사합니다.

지적 환영합니다.