본문 바로가기
정보처리기사/신처기

릴레이션, 키 구조와 정의, 종류. 정규화 과정

by tovantablack 2020. 8. 16.
728x90
728x90

<릴레이션 구조>: 개체/관계 릴레이션

튜플 Tuple : 릴레이션을 구성하는 각각의 행 => 속성의 모임 = 파일의 레코드

카디널리티/기수/대응수 = 튜플의 수 (가로줄)

속성 Attribute : DB를 구성하는 가장 작은 논리적 단위. 개체 특성 =파일의 데이터 필드/항목

디그리/차수 = 속성의 수 (세로줄)

도메인 domain : 하나의 애트리뷰트가 취할 수 있는 같은 타입의 원자값들의 집합 = 속성값 집합

 

<릴레이션 특징>

한 릴레이션에는 똑 같은 튜플 포함될 수 없음 = 한 릴레이션 안의 모든 튜플은 모두 상이함

튜플들 사이, 속성들 사이에는 순서가 없음

릴레이션은 시간에 따라 변함 -> 튜플들의 삽입, 삭제 등으로

속성의 명칭은 유일해야 하지만, 속성값은 동일 가능

튜플들을 유일하게 식벼라기 위해 속성들의 부분집합을 키로 설정함

속성값은 논리적으로 더 이상 쪼갤 수 없는 원자값만 저장함

 

[Key] 튜플들을 서로 구분할 수 있는 기준이 되는 애트리뷰트

후보키 Candidate Key : 기본키로 사용할 수 있는 속성들. 모든 릴레이션에 하나 이상 존재
모든 튜플에 대해 하나의 키 값으로 하나의 튜플만을 유일하게 식별하는 유일성과 모든 레코드들을 유일하게 식별하는 데 꼭 필요한 속성으로만 구성되어야 하는 최소성을 만족해야 한다.

기본키 Prinmary Key : 후보키 중 선정된 main key, 유일성과 최소성을 가지며 튜플을 식별하기 위해 반드시 필요한 키이다. 널 값, 중복된 값을 가질 수 없다.

대체키 Alternate Key : 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키 = 보조키

슈퍼키 Super Key : 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키. 릴레이션을 구성하는 모든 튜플 중 슈피키로 구성된 속성의 집합과 동일한 값은 나타나지 않는다. 유일성 만족, 최소성 불만족

외래키 Foreign Key : 기본키를 참조하는 속성 또는 속성들의 집합으로, 외래키로 지정되면 참조 릴레이션의 기본키에 없는 값은 입력할 수 없다.

 

[정규화 과정] 논리적 설계 단계에서 진행

비정규 릴레이션 -> 1 -> 2 -> 3 -> BCNF -> 4 -> 5 -> 중복이 배제된 릴레이션으로 쪼개짐!

 

1정규형: 릴레이션에 속한 모든 도메인이 원자값

2정규형: 기본키가 아닌 모든 속성이 기본키에 대하여 완전 함수적 종속 만족

3정규형: 기본키가 아닌 모든 속성이 기본키에 대해 이행적 종속을 만족하지 않음

BCNF 정규형: 결정자가 모든 후보키인 정규형. 3에서 후보키가 여럿 존재하고 서로 중첩되면 적용.

728x90
728x90

댓글