
Q1) 데이터베이스 정규화란 무엇인가요? 또, 정규화의 장단점은 무엇인가요?
1) 정규화란?
데이터의 중복을 최소화하고,
데이터 구조를 체계적으로 정리하는 과정
"같은 데이터를 여러 번 저장하지 않도록 테이블을 잘 나누는 작업"
데이터를 여러 개의 테이블로 분리하고,
각 테이블이 하나의 주제(엔터티)만 가지도록 설계하는 과정
예를 들어:

-> 이런 구조는 문제 있음
고객정보가 계속 반복됨
수정 시 오류 발생 가능
그래서 정규화하면,
고객 테이블
|고객ID|이름|주소|
주문 테이블
|주문ID|고객ID|
상품 테이블
|상품ID|상품명|가격|
-> 이렇게 각각 고객/주문/상품 테이블로 나눠서 중복제거 + 관계로 연결
1) 정규화 장점
2) 정규화 단점
"정규화는 데이터의 중복을 줄이고
무결성을 유지하지 위해 테이블을 구조적으로 분리하는 과정이며,
성능과 복잡도 사이의 Trade-off가 존재한다" >
😎