아이티-잉

공부하며 정리하는 IT블로그

Today 0  Total 179,997 
2020년! 복 많이 받으세요

데이터베이스 :: 이상(Anomaly)과 데이터 정규화

2016. 2. 24. 12:26

이상 Anomaly



데이터 중복으로 야기되는 문제들을 '이상'현상 이라고 한다.



학번

과목코드

이름

연락처

1601

C01

강하늘

010-1234-0000

1601

C02

강하늘

010-1234-0000

1602

A01

서현진

010-3210-9999

1603

B01

최유정

010-5555-1234

1603

C01

최유정

010-5555-1234

표1. 수강 릴레이션



1) 삭제 이상 Delete Anomaly

: 튜플 삭제시 연쇄삭제가 발생하는 현상.

ex) 학번 1602의 서현진학생이 A01 과목을 취소할 경우,

취소 사유를 물을 수 있는 유일한 정보인 연락처마저 잃게 된다.



2) 삽입 이상 Insert Anomaly

: 튜플 삽입시 지정하지 않은 속성값이 NULL을 갖는 현상.

ex) 학번 1602의 서현진학생의 전화번호만 추가하고 싶을 때,

과목코드가 비게되므로 NULL값을 가져 문제가 발생한다.



3) 갱신 이상 Update Anomaly

: 데이터 갱신시 일관성 유지가 안되는 현상.

ex) 최유정 학생이 연락처를 바꿨을 경우,

B01, C01 모두 갱신해야하는데 B01만 갱신할 경우 발생한다.






데이터 정규화 Data normalization



하나의 릴레이션에 하나의 의미만 존재하도록 릴레이션을 분해하는 과정.




1) 목적

: 이상(Anomaly)을 예방하고 효과적 연산을 제공한다.



2) 특징

: 이상현상 방지 / 저장공간의 최소화 / 자료 불일치 최소화 / 구조의 안정화



3) 정규형 Normal Form

: 특정 조건에 만족하는 릴레이션 스키마 형태를 의미한다.



4) 정규화 과정

비정규형

 

분해가능한 도메인 분해

정규형

→  모든 도메인이 하나의 값만 갖는다. 

부분 함수 종속 제거

정규형

→ 완전 함수적 종속 상태가 된다.

이행 함수 종속 제거

정규형


후보키가 아닌 함수 종속 제거

보이스 코드 정규형

 모든 결정자가 후보키인 상태다.

다치 종속 제거

제4 정규형

 

후보키를 거치지 않는 조인 종속 제거

제5 정규형

 


정보처리기사 필기시험을 준비중이라면 모두를 알아야 하지만,

실제로 많이 사용되는 정규형기법은 1, 2, 3 정규형이다.



5) 함수 종속

: 한 릴레이션의 두 속성이 갖는 도메인 값이 오직 하나일 때 함수 종속이라 하고,

속성 A의 도메인값에 대해 속성 B가 하나뿐일 때 A→B로 표기한다.

이때 속성 A는 결정자, 속성 B는 종속자라고 한다.


ex) 위의 표1. 에서 학번속성의 1601 도메인 값을 갖는 이름 속성이

오직 강하늘 뿐이므로 함수 종속 관계에 있다고 할 수 있다.



- 완전 함수 종속 : {A, B} → C 일때, {A → C} 또는 {B → C}가 성립되지 않는 경우를 말한다.

- 부분 함수 종속 : {A, B} → C 일때, {A → C} 또는 {B → C}가 성립되는 경우를 말한다.

- 이행 함수 종속 : {A → C}, {B → C} 일때, A가 C를 선택했음에도 B가 C를 선택한 것처럼 취급되는 경우다.




끝.