정규화란?
○ 이상(Anomaly) : 데이터의 중복과 종속으로 인해 발생되는 문제점
§ 삭제이상 (Deletion Anomaly) : 튜플단위로 삭제가 되는데 삭제 하면서 생기는 이상현상
§ 삽입이상 (Insertion Anomaly) : 튜플단위로 삽입 되는데 원하지 않는 자료가 삽입되거나, 자료가 부족해 삽입이 되지 않는 문제
§ 갱신이상 (Update Anomaly) : 자료를 갱신하는 과정에서 정확하지 않거나 일부의 튜플만 갱신됨으로 인해 정보가 모호해지거나 일관성이 없어지는 경우
○ 함수적 종속(Functional Dependency) : 속성 A, B 가 있을 때 A의 값을 알면 B 값을 알 수 있거나, A 값으로 인해 B 값이 달라진다면 함수적 종속 관계에 있다.
A -> B 로 표시 할 수 있고 A는 '결정자', B는 '종속자'
§ 완전 함수 종속 (Full Functional Dependency) : 릴레이션에서 한 속성이 오직 기본키에만 종속 되는 경우
§ 부분 함수 종속 (Partial Functional Dependency) : 릴레이션에서 한 속성이 기본키가 아닌 다른 속성에 종속되거나, 기본키가 2개 이상인 합성키로 구성된 경우 이중 일부 속성에 종속이 되는 경우
§ 이행적 함수 종속 (Transitive Functional Dependency) : 릴레이션 A,B,C 간의 종속이 A -> B , B -> C 일 때, A -> C 가 성립되는 경우 즉, A를 알면 B를 알 수 있고, B를 알면 C를 알 수 있을 때, A를 알면 C를 알 수 있는 경우
○ 정규화 (Normalization) : 논리적 설계 단계에서 발생할 수 있는 종속으로 인한 이상(Anomaly) 현상의 문제점을 해결하기 위해, 속성들 간의 종속 관계를 분석하여 여러 개의 릴레이션으로 분해 하는 과정
§ 제 1정규형 (1NF : First Normal Form)
□ 도메인이 원자값
® 중복되는 속성값이 있을 때 모든 도메인이 각각의 튜플로 구성되도록 분해
§ 제 2정규형 (2NF : Second Normal Form)
□ 부분 함수 종속을 제거
□ 1정규형을 만족 하면서 릴레이션을 구성하는 모든 속성이 기본키에 완전 함수 종속이 되도록 분해하는 과정
§ 제 3정규형 (3NF : Third Normal Form)
□ 이행적 함수 종속 관계를 분해
□ 일반 속성이 기본키에 종속 된 것이 아니라 일반 속성에 종속 되어있는 경우
□ 예를들어 학번을 알면 전공을 알수 있고 전공을 알면 담당교수를 알 수 있을 때 학번 과 전공으로…. 전공과 담당교수로 테이블을 나누어 이행적 함수 종속 관계를 해결한다.
§ 보이스-코드 정규형 (BCNF : Boyce-Codd Normal Form)
□ 모든 결정자가 후보키가 되도록 하는 과정
§ 제 4정규형 (4NF : Fourth Normal Form)
□ 다치종속(MVD : Multivalued Dependency) 관계가 성립되는 경우 분해 하는 정규형
® 다치종속이란 함수 종속과는 달리 하나의 속성값이 대응되는 속성의 집합을 결정하는 종속관계를 말하며, 릴레이션의 속성이 3개 이상일 때 존재한다. A ->> B 라고 표기
® 하나의 속성값과 여러 개의 속성값이 종속된 관계를 다치 종속(MVD) 이라고 한다
§ 제 5정규형 (5NF : Fifth Normal Form)
□ 릴레이션에 존재하는 조인 종속이 후보키를 통해서만 성립 이 되도록 하는 정규형
□ 조인 종속은 원래의 릴레이션을 분해한 뒤 자연 조인한 결과가 원래의 릴레이션과 같은 결과가 나오는 종속성을 말한다.
'개인공부정리 > 정보처리기사' 카테고리의 다른 글
[정보처리기사] 실기 알고리즘 풀이 2탄 버블정렬 (0) | 2016.10.28 |
---|---|
[정보처리기사] 버블정렬이란? (0) | 2016.10.28 |
[정보처리기사] 실기 알고리즘 풀이 1탄 최소공배수와 최대공약수 구하기 (0) | 2016.10.27 |