'SQLD공부법' 태그의 글 목록
my code archive
[SQLD / 자격증 공부] 요약 정리 6. 슈퍼타입, 서브타입 모델

슈퍼 타입/서브 타입 모델의 성능 고려 방법 업무를 구성하는 데이터 특징을 공통과 차이점의 특징을 고려하여 효과적으로 표현할 수 있음. 슈퍼 타입 : 공통 부분을 슈퍼 타입으로 모델링 서브 타입 : 공통으로부터 상속받아 다른 엔티티와 차이가 있는 속성만 모델링 논리적 데이터 모델에서 주로 이용(=분석 단계에서 많이 쓰임) 슈퍼/서브 타입 데이터 베이스 성능 저하 원인 3가지 트랜잭션은 항상 일괄 처리 & 테이블 개별 유지 => Union 연산에 의해 성능 저하 트랜잭션은 항상 서브타입 개별 처리 & 테이블 하나로 통합 => 불필요하게 많은 양의 데이터가 집약되어 성능 저하 트랜잭션은 항상 슈퍼+서브 타입 공통 처리 & 테이블 개별 유지 => 조인에 의해 성능 저하 슈퍼/서브 타입 변환 기준 데이터량이 소..

article thumbnail
[SQLD / 자격증 공부] 요약 정리 5. 반정규화 기법

📖반정규화 기법 테이블 반정규화 테이블 병합 1:1 관계 테이블 병합 1:M 관계 테이블 병합 슈퍼/서브 타입 테이블 병합 테이블 분할 수직 분할 : 칼럼 단위의 테이블을 디스크 I/O를 분산처리하기 위해 테이블을 1:1로 분리하여 성능 향상(트랜잭션의 처리되는 유형을 파악이 선행되어야함.) 수평 분할 : 로우 단위로 집중 발생되는 트랜잭션을 분석하여 디스크 I/O 및 데이터 접근의 효율성을 높여 성능을 향상하기 위해 로우 단위로 테이블을 쪼갬 테이블 추가 중복 테이블 추가 : 다른 업무이거나 서버가 다른 경우 동일한 테이블 구조를 중복하여 원격조인을 제거하여 성능을 향상 통계 테이블 추가 : SUM, AVG 등을 미리 수행하여 계산해 둠으로써 조회 시 성능을 향상 이력 테이블 추가 : 이력 테이블 중 ..

article thumbnail
[SQLD / 자격증 공부] 요약 정리 4. 성능 데이터 모델링, 정규화, 반정규화

📖성능 데이터 모델링의 개요 성능 데이터 모델링의 정의 일반적으로 성능이라고 하면 데이터 조회의 성능을 의미함. (데이터 입력, 수정, 삭제는 일시적이고 빈번하지 않고 단건 처리가 많은 반면 데이터 조회의 경우 반복적이고 빈번하며 여러 건을 처리하는 경우가 많기 때문) 성능 데이터 모델링이란 데이터 베이스 성능 향상을 목적으로 설계 단계의 데이터 모델링 때부터 성능과 관련된 사항이 데이터 모델링에 반영될 수 있도록 하는 것이다. 성능 데이터 모델링 수행 시점 프로젝트 수행 중에 있어 사전에 할수록 비용이 들지 않는다. 특히 분석&설계 단계에서 데이터 모델 성능을 고려한 데이터 모델링을 수행할 경우 성능 저하에 따른 재업무(Rework) 비용을 최소화할 수 있다. 분석&설계 단계에서 데이터베이스 처리 성능..

반응형
반응형