반정규화와 성능
1. 반정규화의 정의 1) 정규화된 엔티티 / 속성 / 관계에 대해 시스템의 성능 향상과 개발 및 운영의 단순화를 위해서, 중복 / 통합 / 분리 등을 수행. 2) 데이터를 중복시켜 성능을 향상시키기 위한 기법. 3) 데이터 무결성이 깨질 수 있는 위험을 무릅쓰고, 데이터를 중복함. 왜냐하면, 데이터를 조회 할 때, I / O 량이 너무 많아, 성능 저하가 발생 되는 경우 이기 때문 이다. 또는, 조인이 너무 많아 성능 저하, 또는, 칼럼을 계산 할 때 성능 저하 등으로, 반정규화를 수행함. 2. 반정규화 절차 1) 반정규화도 난이도 높은 데이터 모델링 기술. 2) 칼럼의 반정규화 뿐만 아니라, 테이블의 반정규화도 종합적으로 고려. 3) 근데, 반정규화를 막연하게 중복 하는 것으로 하지는 않고, 성능을 ..
2023. 11. 10.
성능 데이터 모델링의 개요
1. 성능 데이터 모델링의 정의 데이터를 모델링 할 때 부터 (설계 단계 부터) 성능 향상을 목적으로 한다. 성능에 영향을 주는 것 들 : 정규화, 반정규화, 테이블 통합, 테이블 분할, 조인 구조, PK, FK 2. 성능 데이터 모델링 수행 시점 1) 성능 향상을 위한 비용은, 분석 / 설계 단계에 가까운 시점에 하면 할 수록, 비용이 절감. 2) 분석 / 설계 단계에 가까운 시점에 하면 할 수록, 재 업무 (Rework) 비용을 최소화 할 수 있음. 3) 분석 / 설계 단계에서 데이터베이스 처리 성능을 향상 시킬 수 있는 방법을 고려 해야함. 3. 성능 데이터 모델링 고려 사항 1) 데이터 모델링시, 정규화를 정확 하게 수행. 2) 데이터베이스 용량 산정을 수행. (데이터베이스의 용량이 얼마나 될지)..
2023. 11. 10.