- HOME
- [종료]구루비 DB 스터디
- 2014년 상반기 - 오라클 데이터베이스 스터디
- 관계형 데이터모델링
- 관계형 모델이란 함수 종속(Functional Dependency)에 의해 정규화(Normalization)된 모델이 관계형 모델이다.
- 함수 종속이란?
- 어떤 릴레이션 R에서 X, Y가 릴레이션 R의 부분 속성(Attribute)라고 할 때 속성 X의 도메인 값 각각에 대해 시간에 관계 없이 항상 속성 Y의 도메인 값이 오직 한개만 연관된다면 Y는 X의 함수 종속이라고 하고, X(결정자) -> Y(종속자)로 표시한다.
R
사원번호 | 사원이름 | 성별 |
1111 | 이가혜 | 여성 |
2222 | 강정식 | 남성 |
3333 | 오정희 | 여성 |
- R 릴레이션에 포함된 속성으로 사원번호, 사원이름, 성별이 있을 때 사원이름, 성별은 사원번호에 함수 종속이다.
- 사원번호가 정해지면 이에 따라 사원이름, 성별의 값은 오직 한 개만 존재하기 때문.
릴레이션의 구조
- 릴레이션은 가로와 세로로 이루어진 테이블(표) 형태의 2차원 데이터
- 머리(Head) 부분인 어트리뷰트와 몸통(Body) 부분인 튜플로 구분
- 튜플의 집합이 릴레이션이다.
- 릴레이션에는 이름이 존재하며 2차원의 테이블 형태로 데이터(Value, 어트리뷰트 값)가 관리 된다.
- 각 행을 튜플(Tuple) 이라 하며 각 열을 어트리뷰트(Attribute) 라고 한다.
- 어트리뷰트 중에서 튜플을 유일하게 식별할 수 있는 어트리뷰트를 식별자(Identifier) 라고 한다.
- 이름.주소와 같은 어트리뷰트의 이름을 내포(Intension 또는 Head) 라고 한다.
- 1234, 홍길동 같은 실제 데이터를 외포(Extension 또는 Body) 라고 한다.
- 릴레이션의 이름과 내포를 스키마(Schema)라고도 한다.
- 릴레이션에는 튜플의 개수를 카디널러티(Cardinality) 라고 하며 어트리뷰트의 개수를 차수(Degree) 라고 한다.
- 차수가 1개 이상이고 카디널러티가 0개 이상이면 유효한 릴레이션이다.
- 튜플을 흔히 레코드(Record).로우(Row).인스턴스(Instance)라고도 부르며 어트리뷰트는 컬럼(Column).필드(Field)라고 부른다.
관계형 데이터베이스
- 관계형 데이터베이스(Relational Database)의 Relation은 관계(Relationship)이 의미하는게 아니라 릴레이션(Relation)에 의해 붙여진 이름이다.
- 관계형 데이터베이스에는 2차원 테이블 형태의 릴레이션이 존재하고 릴레이션에는 식별자가 존재
- 식별자 중에 외래 식별자가 존재해 주 식별자와 조인(Join)을 통해 릴레이션 사이의 연관 관계(Relationship)을 관리한다.
- 데이터를 중복해서 저장하지 않도록 설계하는 것이 관계형 데이터베이스 설계의 핵심이다.
관계형 모델의 제약 사항
- 릴레이션(Relation)에서 각 튜플(Tuple)은 유일해야 한다
- 어트리뷰트(Attribute)의 모든 값이 동일한 튜플이 존재할 수 없으며, 식별자의 값이 같은 튜플이 존재해서는 안된다.
- 어트리뷰트는 유일한 값이 사용돼야 하며 다중 값이나 복합값이 존재해서는 안된다.
- 전체 모델에서 릴레이션의 이름은 유일해야 하며, 릴레이션 내의 어트리뷰트 이름도 유일해야 한다.
- 릴레이션 내의 튜플의 순서는 중요하지 않다.
- 한 릴레이션에는 하나의 데이터 주제만이 포함될 수 있다.
- 모든 릴레이션은 함수 종속 규칙을 따라야 한다.
- 릴레이션이 정규화(Normalization)되지 않으면 관계형 모델이라 할 수 없다.
- 정규화된 릴레이션 사이에는 외래 식별자(Foreign Identifier)를 통해서 연관 관계가 성립하게 된다.
관계형 이론의 용어
- 엔터티 타입(Entity Type)은 인터티들의 집합(Set)을 의미한다.
- 엔터티 타입에 속한 특정 튜플을 엔터티(Entity)라고 한다.
- 엔터티 타입은 동일한 어트리뷰트를 가진 어트리뷰트를 가진 엔터티의 집합이다.
- 내포(Intension 또는 Head)가 엔터티 타입에 해당하며 실제 데이터인 외포(Extension 또는 Body)가 엔터티이다.
- HOME
- [종료]구루비 DB 스터디
- 2014년 상반기 - 오라클 데이터베이스 스터디
- 관계형 데이터모델링