728x90
반응형
SMALL
정규화(Normalization)
데이터 정합성을 위해 작은 단위로 엔티티를 분리하는 과정
- 데이터 정합성: 데이터의 정확성과 일관성을 유지하고 보장하는 것
정규화를 할 경우 데이터 조회성능은 처리조건에 따라 향상할 수도, 저하될 수도 있다.
정규화를 할 경우 데이터 입력성능, 수정성능, 삭제성능은 일반적으로 향상된다.
1. 제 1 정규형
모든 속성은 반드시 하나의 값만 가져야 한다.
유사한 속성이 반복되는 경우도 대상이다.
하나의 속성이 다중값을 가지는 경우 어플리케이션에서 데이터를 꺼내 쓸 때 불필요한 split를 사용해야 하는 번거로움이 발생하기 때문이다.
1차 정규화 방법
- 속성값이 하나가 되도록 엔티티 분리
- 유사한 속성이 반복되지 않도록 엔티티 분리
한 엔티티 내에 유사한 속성이 반복될 경우 문제점
- 데이터가 늘어날 때 계속해서 속성을 추가해야 한다.
- 추가된 속성의 개수만큼 모든 인스턴스가 속성값을 갖고 있지 않을 경우 공간 낭비가 발생한다.
2. 제 2 정규형
엔티티의 모든 일반속성은 반드시 모든 주식별자에 종속되어야 한다.
주식별자가 복합식별자인 경우 일반속성이 주식별자의 일부에만 종속되는 문제가 발생된다.
2차 정규화 방법
- 주식별자에 대한 부분종속이 없도록 엔티티를 분리한다.
3. 제 3 정규형
주식별자가 아닌 모든 속성 간에는 서로 종속 될 수 없다.
3차 정규화 방법
- 다른 일반속성에 종속되지 않도록 엔티티를 분리한다.
4. 주의사항
지나친 정규화는 오히려 성능 저하를 일으킬 수 있다.
학습에 도움이 된 책
2022 유선배 SQL개발자(SQLD) 과외노트 : 네이버 도서
네이버 도서 상세정보를 제공합니다.
search.shopping.naver.com
728x90
반응형
LIST
'IT' 카테고리의 다른 글
백준 파이썬 알고리즘 연습 - 4673 셀프 넘버 (0) | 2022.08.08 |
---|---|
백준 파이썬 알고리즘 연습 - 15596 정수 N개의 합 (0) | 2022.08.07 |
데이터 모델링 이해하기 (0) | 2022.08.05 |
백준 알고리즘 연습(파이썬) 4344번 평균은 넘겠지 (0) | 2022.08.04 |
백준 알고리즘 연습(파이썬) 8958번 OX 퀴즈 (0) | 2022.08.03 |