본문 바로가기

컴퓨터공부/정보처리기사

[정보처리기사] 이상 / 함수적 종속, 정규화(Normalization), 1NF 정규화, 2NF 정규화 , 3NF 정규화, 보이스-코드 정규화 4차, 정규화 5차

by Life & study 2023. 7. 17.
반응형

[정보처리기사] 이상 / 함수적 종속, 정규화(Normalization), 1NF 정규화, 2NF 정규화 , 3NF 정규화, 보이스-코드 정규화 4차, 정규화 5차

[정보처리기사] 이상 / 함수적 종속

 

[정보처리기사] 이상 / 함수적 종속

함수적 종속

R = 테이블
X = 기본키 = 결정자
Y = 종속자

Y=  X에 함수적 종속, 함수적 결정을 한다고 표기
X->Y

X        Y
학번   이름
1001  홍길동
1002  김수강

이 있다면 

홍깅동의 데이터를 찾고자 한다면, 
학번과 이름을 동시에 조회해야 하는데,
이것을

= '함수적 종속'이라고 한다.
   '함수적 결정'

= 데이터베이스에서 항상 유지되어야 하는 조건 
   이라고도 한다.

완전 함수적 종속

( A , B)의 조건으로만, (C)를 도출할 수 있을 때, 
완전히 함수적으로 종속되어 도출 가능하는 상태



부분 함수적 종속

C의 조건으로도 (A , B)의 조건을 도출할 수 있는 부분이
있다면,
부분 함수적 종속이라고 한다.

[정보처리기사] 정규화(Normalization)

 

[정보처리기사] 정규화(Normalization)
데이터베이스의 정규화(Normalization)는 중복을 최소화하고 데이터의 일관성과 무결성을 유지하기 위한 과정입니다. 정규화는 일반적으로 1차 정규화부터 3차 정규화까지 총 3단계로 나누어 진행됩니다. 이하 각 단계별로 설명해 드리겠습니다.

테이블의 속성들에 상호종속적인 관계를 갖는 특성을
이용하여 테이블의 무손실 분해를 하는 과정을 
뜻한다.

중복을 제거하고,
삽삭갱
삽입, 삭제, 갱신 (이상현상)을 줄인다.

 

정규화의 순서,

 

비정규 릴레이션

1차 정규화(First Normal Form, 1NF): 테이블의 모든 속성이 원자값(Atomic Value)을 가지도록 분해합니다. 즉, 테이블의 각 속성은 더 이상 분해할 수 없는 단일 값이어야 합니다.

2차 정규화(Second Normal Form, 2NF): 테이블이 1차 정규화를 만족하면서, 기본 키(Primary Key)가 아닌 모든 속성이 기본 키에 대해 완전 함수적 종속(Fully Functional Dependent)이어야 합니다. 이를 통해 테이블의 중복을 최소화하고 데이터의 일관성을 유지할 수 있습니다.

3차 정규화(Third Normal Form, 3NF): 테이블이 2차 정규화를 만족하면서, 기본 키가 아닌 속성 간의 이행적 함수 종속(Transitive Functional Dependency)이 없어야 합니다. 이를 통해 테이블의 중복을 최소화하고 데이터의 일관성을 유지할 수 있습니다.

보이스-코드 정규화(Boyce-Codd Normal Form, BCNF): 테이블이 3차 정규화를 만족하면서, 모든 결정자(Candidate Key)가 후보 키(Candidate Key)에 대해 함수적 종속이어야 합니다. 이를 통해 테이블의 중복을 최소화하고 데이터의 일관성을 유지할 수 있습니다.

4차 정규화(Fourth Normal Form, 4NF): 테이블이 보이스-코드 정규화를 만족하면서, 다중 값 종속(Multi-Valued Dependency)이 없어야 합니다. 이를 통해 테이블의 중복을 최소화하고 데이터의 일관성을 유지할 수 있습니다.

5차 정규화(Fifth Normal Form, 5NF): 테이블이 4차 정규화를 만족하면서, 조인 종속성(Join Dependency)이 없어야 합니다. 이를 통해 테이블의 중복을 최소화하고 데이터의 일관성을 유지할 수 있습니다.



무손실 분해

 

[정보처리기사]  1NF 정규화

 

[정보처리기사]  1NF 정규화

 


[정보처리기사]  2NF 정규화

 

제2 정규형

하나의 릴레이션에서 부분 함수 종속성을 제거하고,
완전 함수 종속성만 가지게 만드는 과정을 말한다.

 


 

[정보처리기사]  3NF 정규화

 

 

이행적 함수적 종속

A-B-C 가 부분 연결된 상태를 분리해서 만드는 과정

 


 

[정보처리기사]  3.5NF

보이스-코드 정규화(Boyce-Codd Normal Form, BCNF)

 

3.5NF

보이스-코드 정규화(Boyce-Codd Normal Form, BCNF) 일 때,


부분 종속적인 관계가 많이 생길 때 발생하는데,

릴레이션에서 결정자가 아닌 속성을 중심으로
릴레이션을 나누는 것을 말한다.

 


 

4차 정규화

A의 결정자를 통하여 B의 값이 도출될 때,
B라는 값이 여러 개의 값을 가질 경우에 

A-B
A-C로 나누는 방법으로 정규화를 한다.



5차 정규화

릴레이션을 2개의 테이블로 쪼개도 부족해서
3개로 밖에 쪼갤 수밖에 없을 때
사용한다.

- 이 정규형은 후보키를 통해서만 성립되는 정규형이다.

 

 

 

 

반응형

댓글