2. Relational Data Model

2021. 5. 2. 19:59Computer Sciences/Database

데이터 모델

  • 데이터나 정보를 설명하는 표현 방법
  • 일반적으로 세 부분으로 구성됨
    1. 데이터 구조
    2. 데이터 운영
    3. 데이터 제약 조건
  • 중요한 데이터 모델
    1. 관계형 모델(The Relational Model)
    2. XML을 포함하는 부분구조화된 데이터 모델
  • 다른 데이터 모델
    1. 객체지향 데이터 모델
    2. 객체-관계형 모델
    3. 계층(트리) 모델
    4. 네트워크 모델

관계형 모델

  • 릴레이션(테이블)
  • 속성(컬럼)
    • title, year, length, genre
  • 스키마
    • 테이블의 구조
    • Movies(title, year, length, genre)
  • 튜플(행)
    • (Gone With the Wind, 1939, 231, drama)
  • 도메인
    • Movies(title: string, year: integer, length: integer, genre: string)

수학적 릴레이션

관계형 모델의 릴레이션(또는 테이블)

  • 릴레이션 = 수학적 릴레이션 + 릴레이션 이름 + 속성 이름
  • Ex: Movies(title, year, length, genre)
  • 컬럼 이름은 속성(attrirbute)라고 불린다.

스키마

  • 스키마 = 릴레이션 이름 + 속성
  • Movies 릴레이션의 스키마
    • Movies(title, year, length, genre)
  • 주의사항
    • 릴레이션 스키마의 속성은 집합(set)이다. 리스트가 아니다
    • 릴레이션에 대해 의사소통하기 위해 우리는 속성을 표준 순서로 명세해야 한다
  • 관계형 DB 스키마 = 개별적인 스키마들의 집합

튜플

  • 릴레이션(테이블)의 행
  • 튜플은 릴레이션의 각 속성에 대한 하나의 필드를 가지고 있다
  • Ex: Movies의 첫 번째 튜플은 (Gone With the Wind, 1939, 231, drama)

도메인

  • 관계형 모델은 각 튜플의 각 구성 요소가 아토믹함을 필요로 한다.
  • 즉, Integer나 String과 같은 요소 타입이어야 한다
  • 레코드 구조, 집합, 리스트, 배열, 다른 작은 부분으로 나누어질 수 있는 값을 합리적으로 가지는 타입은 허용되지 않는다
  • 도메인은 관계의 각 속성과 연관되어 있다. 즉, 릴레이션 DB의 도메인은 아토믹해야 한다.

릴레이션의 동등 표현

  • 릴레이션을 표현할 땐 스키마에 정의된 순서대로 표현한다
  • 여러 사람간에 원활한 의사소통을 위해
  • 만약 문제의 답을 순서대로 표현하지 않을 시 오답

릴레이션 인스턴스

  • 릴레이션은 고정적이지 않고 시간이 지나면서 변화할 수 있다
    • 튜플의 변화
    • 스키마의 변화
  • 주어진 릴레이션의 튜플의 집합을 그 릴레이션의 인스턴스라고 부른다

릴레이션의 키

  • 비정식 정의
    • 속성의 집합은 릴레이션의 키를 구성합니다.
    • 우리가 릴레이션 인스턴스의 두 튜플이 키의 모든 속성에 대한 같은 값이 없으면
  • 정식 정의
    • 릴레이션 R의 키는 하나 또는 그 이상의 속성의 집합 K이다
    • 상관없이 주어진 릴레이션 R의 각기 다른 튜플 r1, r2가 K의 원소인 키의 속성의 각 값이 동일하지 않으면

'Computer Sciences > Database' 카테고리의 다른 글

6-1. E/R 모델  (0) 2021.05.02
5. Bags and Extended Relational Algebra  (0) 2021.05.02
4. Relational Algebra  (0) 2021.05.02
3. Defining a Schema in SQL  (0) 2021.05.02
1. What is Database?  (0) 2021.05.01