ER/Studio 데이터모델링이란 - 6.정규화
2012.01.04 02:14
1. 정규화 정의
1972년 E.F CODE 박사에 의해 제안된 이론으로 실세계에서 발생하는 데이터를 수학적인 방법에 의해 구조화시켜 체계적으로 관리할 수 있도록 한 이론
2. 정규화 필요성
가. 엔티티를 구성하는 속성간의 중복을 제거하여 데이터베이스를 최적화
나. 속성간의 함수종속성에 의해 발생하는 이상현상을 제거
이상현상 | 내용 |
---|---|
입력이상 | 데이터 입력 시 필요없는 속성까지 입력해야 하는 현상 |
수정이상 | 데이터 수정시 원하지 않는 데이터까지 수정되는 현상 |
삭제이상 | 데이터 삭제 시 필요한 데이터까지 삭제되는 현상 |
3. 정규화 종류
정규화 종류 | 내용 | 함수종속성 |
---|---|---|
1차 정규화 | 모든 속성은 원자값을 가짐 복수의 속성 값을 갖는 속성을 분리 |
|
2차 정규화 | 주식별자에 종속적이지 않은 속성의 분리 부분 종속 속성을 분리 |
부분함수종속성 |
3차 정규화 | 속성에 종속적인 속성의 분리 이전 종속 속성의 분리 |
이행함수종속성 |
보이스-코드 정규화 | 다수의 주식별자 분리 | |
4차 정규화 | 속성간의 다중종속성 제거 | 다중종속성 |
5차 정규화 | Join 종속성 제거 | Join 종속성 |
1) 1차 정규화
반복되는 속성이나 그루브이 속성을 제거하고, 새로운 엔티티를 추가한 후에 기존의 엔티티와 일대다의 관계를 형성한다.
하나의 제품에 대해 여러 개의 주문서가 접수된 내용이다.
위의 예에서 데이터의 내용이 반복되는 속성으로 인해 일부 속성이 중복된다면 입력, 수정, 삭제시 이상 현상이 발생하게 된다.
- 입력 이상 : 주문이 발생되어야만 제품 정보를 등록할 수 있다.
- 수정 이상 : 마우스의 수량을 9702에서 15000으로 변경하고자 한다면 데이터를 3번 수정해야 한다.
- 삭제 이상 : 제품번호가 1201인 스피커를 주문한 내역을 삭제하면 제품명, 재고수량 정보도 모두 삭제된다.
제품에 관련된 정보로부터 반복되어 생성되는 주문 관련 정보를 분리함으로써 1차 정규화를 수행한다.
2) 2차 정규화
복합식별자로 구성된 경우 해당 엔티티 안의 속성들은 복합식별자 전체에 의존적이어야 한다.
만일 복합식별자 일부에 의존적인 속성이 존재한다면 이를 제거해야 한다.(부분종속속성 제거)
제품번호 + 주문번호에 종속적인 속성 : 주문수량
주문번호에 종속적인 속성 : 수출여부, 고객번호, 사업자번호, 우선순위
- 입력 이상 : 고객정보 입력 시 주문정보도 입력해야 함
- 수정 이상 : 만약 주문번호 AB345의 우선순위를 1에서 10으로 수정할 경우, 1001+AB345와 1007+AB345를 같이 수정해야 함
- 삭제 이상 : 주문번호 삭제시 고객번호도 함께 삭제됨
주문번호에 완전히 종속적인 속성을 분리하여 별도의 엔티티를 구성했다.
3) 3차 정규화
한 엔티티 안의 모든 주식별자가 아닌 속성들은 주식별자에 의존해야 한다. 속성에 종속적인(이전종속) 속성이 있다면 분리해야 한다.
- 입력 이상 : 새로운 고객 등록 시 주문이 없으면 입력이 안됨
- 수정 이상 : 한 고객이 여러 번 주문한 경우 고객 정보가 반복적으로 발생. 고객 정보 수정시 여러 개의 데이터를 수정해야 한다.
- 삭제 이상 : 고객번호 4520이 주문을 취소하면 주문 정보만 삭제되는 것이 아니라 고객 정보도 모두 삭제된다.
고객번호에 종속적인 속성을 분리하여 별도의 엔티티를 구성했다.
4) 보이스-코드 정규화
데이블에 존재하는 식별자가 여러 개 존재할 경우 식별자가 중복되어 나타나는 현상을 제거
주식별자 후보 : 납품업체코드 + 제품코드
납품회사명 + 제품코드
이 중 하나를 선택하면 3차 정규화까지 만족하게 된다.
- 입력 이상 : 새로운 사반(주) 에서 새로운 제품을 납품하면 납품업체코드 01과 남품회사명 사반(주)가 모두 입력. 중복 입력으로 인한 문제 발생
- 수정 이상 : 납품회사명을 수정하려 하면 데이터가 중복되어 존재하므로 여러 로우에 해당하는 데이터를 수정해야 함
- 삭제 이상 : 제품코드가 B001 이고 납품업체코드가 03인 납품정보를 삭제하면 시그마(주)라는 납품업체 정보가 사라짐