본문/내용
1. 데이터베이스의 정규화와 비정규화의 차이점에 대해 설명하시오.
데이터베이스의 정규화와 비정규화는 데이터 구조를 설계하는 방법으로 각각의 목적과 특징이 다릅니다. 정규화는 데이터 중복을 최소화하고 데이터 무결성을 높이기 위해 여러 테이블로 나누어 설계하는 과정입니다. 예를 들어, 고객 정보와 주문 정보를 별도 테이블로 분리하면 고객이 여러 번 주문하더라도 고객 정보가 중복 저장되지 않아 데이터 일관성을 유지할 수 있으며, 수시로 고객 정보 업데이트 시 데이터 정합성 확보가 용이합니다. 한편, 정규화가 심화될수록 JOIN 연산이 잦아지고 읽기 성능이 저하될 수 있으며, 데이터 조회 속도가 느려질 수 있습니다. 이에 비해 비정규화는 성능 향상을 위해 일부 데이터를 중복 저장하거나 테이블을 통합하는 방식입니다. 예를 들어, 주문당 고객 정보를 주문 테이블에 함께 저장하면 JOIN 연산이 줄어들어 조회 성능이 평균 30% 향상된 사례가 있습니다. 하지만, 이는 데이터 중복과 유지보수의 복잡성을 증가시키며, 한 고객의 주소 변경시 여러 곳을 일일이 수정해야 하는 문제점이 있습니다. 따라서, 대규모 조회가 잦거나 성능이 중요시 될 경…