정규화 (Normalization)

2024. 4. 9. 00:22·개발일기
728x90
반응형

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

가능한 한 중복을 제거하여 삽입, 삭제, 갱신 이상의 발생 가능성을 줄이는 것

 

비정규 릴레이션

 

           ↓    도메인 원자값

 

1. 제 1 정규형 (1NF : First Normal Form) 

테이블에 속한 모든 속성의 도메인이 원자 값만으로 되어 있는 정규형

 

           ↓    부분 함수적 종속 제거

 

2. 제 2 정규형 (2NF : Second Normal Form) 

기본키가 아닌 모든 속성이 기본키에 대하여 완전 함수적 종속을 만족하는 정규형

더보기

완전 함수적 종속

속성 Y가 다른 속성들의 집합 X 전체에 대해 함수적 종속이면서 속성 집합 X의 어떠한 진부분 집합에도 함수적 종속이 아닐 때, 속성 Y는 속성 집합 X에 완전 함수적 종속.

           ↓    이행적 함수적 종속 제거

 

3. 제 3 정규형 (3NF : Third Normal Form) 

기본키가 아닌 모든 속성이 기본키에 대해 이행적 함수적 종속을 만족하지 않는 정규형

더보기

이행적 함수적 종속

A → B 이고 B → C 일때 A → C를 만족하는 관계

           ↓    결정자이면서 후보키가 아닌것 제거

 

4. BCNF (Boyce-Codd Normal Form) 

테이블에서 모든 결정자가 후보키인 정규형

 

           ↓    다치 종속

 

5. 제 4 정규형 (4NF : Fourth Normal Form)

테이블 R에 다중 값 종속 A → → B 가 존재할 경우 R의 모든 속성이 A에 함수적 종속 관계를 만족하는 정규형

 

           ↓    조인 속성 이용

 

6. 제 5 정규형 (5NF : Fifth Normal Form) 

테이블 R의 모든 조인 종속이 R의 후보키를 통해서만 성립되는 정규형

 

 

 

비정규화( Denormalization, = 역정규화)

조인을 사용하여 다시 연결

 

조인을 사용하면 응답 속도가 떨어져 정규화에 위배되지만 성능은 향상됨

 

 

 

 

 

 

 

 

도부이결다조.....

728x90
반응형

'개발일기' 카테고리의 다른 글

DDD (Domain Driven Design)  (0) 2024.04.15
Front-end Framework  (0) 2024.04.15
실행 동영상  (0) 2024.04.11
openbabel 설치 - centos  (0) 2024.04.10
svn to git  (0) 2024.04.10
'개발일기' 카테고리의 다른 글
  • Front-end Framework
  • 실행 동영상
  • openbabel 설치 - centos
  • svn to git
길동이이이잉
길동이이이잉
길동이이이잉
코딩 일기
길동이이이잉
코딩 일기일까......?
삽질...... 일기일까?
반응형
250x250
  • 모든 글 (97)
    • 개발일기 (9)
      • Project (9)
      • React (1)
      • DB, SQL (7)
      • Spring (5)
      • AWS (1)
    • 코딩 테스트 (63)
      • 1. String(문자열) (12)
      • 2. Array(1, 2차원 배열) (12)
      • 3. Tow pointers, Sliding wi.. (6)
      • 4. HashMap, HashSet, TreeSe.. (5)
      • 5. Stack, Queue (8)
      • 6. Sorting and Searching (8)
      • 7. Recursive, Tree, Graph (11)
      • 8. DFS, BFS 활용 (0)
      • 9. ... (1)
    • 갔다왔다 워홀! (2)

인기 글

태그

유럽워홀
Tactical Design
워킹홀리데이
s3대용량파일업로드
reactnative
아일랜드
AWS
워홀
전술적 설계
달력프로젝트
spring
s3대용량업로드
React
Strategic Design
전략적 설계
아일랜드워홀
Oracle
유럽
aws업로드
SpringBoot

최근 글

hELLO· Designed By정상우.v4.5.3
길동이이이잉
정규화 (Normalization)

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.