본문/내용
1. 데이터베이스의 정규화와 비정규화의 차이점에 대해 설명하세요.
데이터베이스의 정규화와 비정규화는 데이터의 저장 효율성과 성능을 최적화하는 방법으로 각각의 특징과 차이점이 있습니다. 정규화는 데이터 중복을 최소화하고 일관성을 유지하기 위해 테이블을 여러 개로 나누고, 관계를 통해 연결하는 과정입니다. 예를 들어, 고객 정보와 주문 정보가 한 테이블에 있으면 업데이트 시 중복된 값을 수정해야 하는 오류가 발생할 수 있으나, 정규화 후 고객 테이블과 주문 테이블로 분리하면 이러한 문제를 방지할 수 있습니다. 정규화는 데이터 무결성을 높이지만, 복잡한 JOIN 연산이 많아 조회 성능이 떨어질 수 있다는 단점이 존재합니다. 반면 비정규화는 성능 향상을 위해 일부 데이터를 중복 저장하거나 테이블을 병합하는 방식으로 설계됩니다. 실무에서 고객 주문 시스템에 비정규화를 적용할 경우, 특정 보고서 조회 시 JOIN 연산 없이 바로 데이터를 읽어와 처리 속도를 30% 이상 높인 사례가 있습니다. 수치로 보면, 정규화 상태에서는 평균 조회 시간이 150ms인데 비해, 비정규화 상태에서는 105ms로 개선되었으며, 대량 데이터 처리에서도 비정규화가…