카테고리 없음
6. 관계형 데이터 모델의 개념
zhsus
2023. 2. 1. 13:49
반응형
☞ 이 글은 Private 클라우드를 활용한 네트워크 & 서버 보안운영 관리 교육을 받으면서 정리한 내용입니다.
#1 관계형 데이터베이스
>> 관계형 데이터 모델(Relational Data Model)
- 데이터베이스에서 가장 많이 쓰이고 있는 논리적 모델
>> 관계형 데이터 모델의 특징
- 단순한 모델 구조
- 수학적 이론(집합론(Set Theory))에 기반한 모델의 강건(Sound)함
- 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)
▶ 한 속석이 가질 수 있는 값의 범위
- 도메인(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에 포함된 튜플들의 집함
- 릴레이션 스키마 : 릴레이션 이름 R과 n개의 속성 A1, ... , An으로 구성
>> 수학적 정의
- 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)
▶ 관계형 데이터 모델은 이 정규화 릴레이션만을 취급함
- 속성 값은 원자 값
반응형