- [MySQL] 50. 정규화(4) -제 3 정규화(3NF)2024년 07월 08일
- Song hyun
- 작성자
- 2024.07.08.:11
728x90반응형[MySQL] 50. 정규화(4) -제 3 정규화(3NF)
1. 제 3 정규형이란?
-제 3 정규형은 데이터베이스 테이블이 제 2 정규형을 만족하며, 추가적으로 모든 비기본 키 속성이 기본키에만 종속되고, 기본 키가 아닌 다른 속성에는 종속적이지 않아야 한다.
=> 이를 '이행적 종속성이 없어야 한다' 라고 한다.
=> 이행적 종속= A->B, B->C의 종속 관계에서 A가 B에 종속되고, B가 C에 종속될 때, 간접적으로 A가 C에 종속되게 된다.
2. 정규화의 장점
(1) DB 수정 시 이상 현상(Anomaly)이 제거된다.
(2) DB 구조 확장 시, 디자인 최소화가 가능하다. (데이터 구조의 안전성 및 무결성 유지)
(3) 정규화된 DB 구조에서는 새로운 데이터 형의 추가로 인한 확장 시, 그 구조를 변경하지 않아도 되거나 일부만 변경해도 된다.
(4) 이는 데이터베이스와 연동된 응용 프로그램에 최소한의 영향만을 미치게 되고, 응용 프로그램의 생명을 연장 시킨다.
(5) 사용자에게 데이터 모델을 더욱 의미있게 제공된다.
(6) 정규화된 테이블들과 정규화된 테이블들간의 관계들은 현실세계에서의 개념들과 그들간의 관계들을 반영한다.
(7) 저장 공간의 최소화 가능
(8) 효과적인 검색 알고리즘 생성 가능
(9) 데이터 삽입 시 릴레이션 재구성의 필요성 감소
3. 정규화의 단점
(1) 조인의 증가
(2) 성능 저히
(3) 응답 시간의 지연
=>위와 같은 단점, 또는 조회하는 SQL 문장에서 조인이 많이 발생하여 이로 인한 성능 저하가 나타나는 경우, 반 정규화를 적용하는 전략이 필요할 수도 있다.
728x90반응형'MySQL > 응용 및 DB 접근' 카테고리의 다른 글
[MySQL] 52. UNION 연산자 (0) 2024.07.08 [MySQL] 51. 정규화(4) - 반정규화 (0) 2024.07.08 [MySQL] 49. 코드 예제: 제1,2정규화 실습하기 (0) 2024.06.13 [MySQL] 48. 정규화(3) -제 2 정규화(2NF) (0) 2024.06.13 [MySQL] 47. 정규화(2) -제 1 정규화(1NF) (0) 2024.06.13 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)