카테고리 없음

6. 관계형 데이터 모델의 개념

zhsus 2023. 2. 1. 13:49
반응형

☞ 이 글은 Private 클라우드를 활용한 네트워크 & 서버 보안운영 관리 교육을 받으면서 정리한 내용입니다.

#1 관계형 데이터베이스

>> 관계형 데이터 모델(Relational Data Model)

  • 데이터베이스에서 가장 많이 쓰이고 있는 논리적 모델

>> 관계형 데이터 모델의 특징

  1. 단순한 모델 구조
  2. 수학적 이론(집합론(Set Theory))에 기반한 모델의 강건(Sound)함
  3. SQL이라는 간단한 비절차적 언어로 쉬운 데이터 처리 가능

>>  집합론

  • 창시자 : 독일 수학자 칸토어(Georg Cantor)
  • 집합의 특성
    • 우리의 직관 또는 사고의 대상 중에서 확정되어 있고 서로 명확히 구별되는 것들의 모임
    • 구체적, 객관적 기준에 의해 원소를 명확히 구분 가능해야 함
      ▶ 집합을 구성하는 원소 : 집합 내에서 유일하게 식별될 수 있어야 함
    • 논리적인 개념도 집합의 구성 요소가 될 수 있음
      ▶ 눈으로 보거나 손으로 만질 수 없더라도 첫 번째 조건을 충족하는 개념이라면 이 역시 집합이 될 수 있음

>> 집합

  • 군집(Collection) 
    - 동일한 유형의 원소들이 모여 있는 군집
    - 하위 타입 : Set, Bag, List, Array
  • Set
    - 원소의 중복 불가
    - 원소들 간의 순서 없음
  • Bag (또는 Multi-Set)
    - 원소의 중복 허용
    - 원소들 간의 순서 없음
  • List
    - 원소의 중복 불가
    - 원소들 간의 순서 있음
  • Array
    - 원소의 중복 허용
    - 원소들 간의 순서 있음

>> 관계형 데이터 모델의 구성요소

  • 구조
    - 릴레이션(또는 테이블)
  • 연산
    - 관계 대수(Relational Algebra)
    - 관계 해석(Relational Calculus)
  • 제약조건
    - 무결성(Integrity) 제약조건

#2 릴레이션(Relation)

>> 관계형 데이터 모델의 구조(Structure)

  • 2차원 테이블 구조
  • 테이블의 행(Row) : 튜플(Tuple)
    • 릴레이션은 튜플들의 집합
    • 개념적 모델의 개체(Entity)가 관계형 모델에서 한 튜플에 대응됨
    • 개념적 모델의 관계(Relationship)도 관계형 모델에서 한 튜플에 대응됨
  • 테이블의 열(Column) : 속성(Atrribute)
    • 도메인(Domain)
      ▶ 한 속석이 가질 수 있는 값의 범위

>> 속성(Attribute)

  • 관계형 데이터 모델에서 데이터의 가장 작은 논리적 단위
  • 관계형 모델에서는 이 데이터 값들을 더 분해하려고 해도 더 분해할 수 없는 원자 값(Atomic Value)만을 허용
    → 원자 값은 아무런 내부적 구조를 지니고 있지 않음

>> 도메인(Domain)

  • 하나의 속성이 취할 수 있는 값들의 집합
  • 도메인과 속성의 관계는 프로그래밍 언어에서 타입과 변수에 비유
    • 어떤 데이터 타입으로 선언된 변수는 언제 어느 떄고 그 선언된 데이터 타입의 값만을 가짐
      예) int x → 변수 x는 정수형 값만을 가진다.
  • 속성 정의 시 도메인도 함께 명세함으로써 실제 속성이 지니는 값이 합법적인지 아닌지를 데이터베이스 관리 시스템(DBMS)을 통해 검사 가능
  • 어떤 릴레이션 R이 n개의 도메인 D1, D2, ... , Dn으로 구성될 때
    → 릴레이션 R은 릴레이션 스키마와 릴레이션 인스턴스로 구성
    • 릴레이션 스키마 : 릴레이션 이름 R과 n개의 속성 A1, ... , An으로 구성
      R(A1, ... , An) ▶ 여기서 속성 Ai는 한 도메인 Di와 대응 됨
    • 릴레이션 인스턴스 : 어느 한 시점에 릴레이션 R에 포함된 튜플들의 집함

>> 수학적 정의

  • X : 카티션 프로덕트(Cartesian Product)
    • 집합론에서 사용되는 곱셈 연산
    • 두 집합에 속한 원소들을 이용하여 모든 가능한 쌍 만들기
  • t∈R : t를 릴레이션 R에 속한 한 튜플이라고 가정한 경우
    • t는 n개의 속성들로 이루어진 n-튜플<d1, d2, ..., dn>
    • 여기서, di 11 Di(1 ≤ i ≤ n) 즉, di는 도메인 Di에 속한 한 값
      ▶ n : 릴레이션 R의 차수(Degree), R의 Column 수(속성의 수)
      ▶ |R| : 릴레이션 R의 카디널리티(Cardinality), R의 Row 수(튜플의 수)

>> 릴레이션의 특성

  • 튜플의 유일성
    • 릴레이션은 튜플의 집합
    • 집합은 중복을 허용하지 않음
  • 튜플의 무순서성
    • 릴레이션은 튜플의 집합
    • 집합에서 원소들 간의 순서는 없음
  • 속성의 무순서성
    • 스키마는 속성들의 집합
  • 속성의 원자성(Atomicity)
    • 속성 값은 원자 값
      ▶ 원자(Atom) : 더 이상 쪼개 수 없는 물질의 최소 단위
    • 속성은 개체를 구성하는 가장 작은 논리적 단위
      ▶ 논리적으로 더 분해할 수 없음
    • 한 릴레이션에 나타난 속성값은 논리적으로 더 이상 분해될 수 없는 원자값
      ▶ 처리상의 단위 값 : Unit Value
    • 이 성질의 근본적인 의미 : 튜플의 속성값은 하나의 값만을 허용
      ▶ 반복 그룹, 즉 값의 집합은 허용하지 않음
      ▶ 반복 그룹을 허용하지 않는 릴레이션 ; 정규화 릴레이션(Normalized Relation)
      ▶ 관계형 데이터 모델은 이 정규화 릴레이션만을 취급함
반응형