본문 바로가기

데이터 사이언스/SQL

[SQLD 학습 자료 요약] 데이터 모델링의 이해 2.1. 성능 데이터 모델링 개요

본 문서의 내용은 한국데이터산업진흥원에서 펴낸 SQL 전문가 가이드를 기반으로 자격증 취득에 도움이 될 개념을 정리한 것입니다.

SQL 전문가 가이드
국내도서
저자 : 한국데이터산업진흥원
출판 : 한국데이터산업진흥원 2020.05.29
상세보기

 

1. 성능 데이터 모델링 개요

1. 성능 데이터 모델링의 정의

성능 데이터 모델링이란 데이터베이스 성능향상을 목적으로 설계단계의 데이터 모델링 때부터 정규화, 반정규화, 테이블통합, 테이블분할, 조인구조, PK, FK 등 여러 가지 성능과 관련된 사항이 데이터 모델링에 반영될 수 있도록 하는 것으로 정의할 수 있다.

 

성능 데이터 모델링이 단순히 반정규화만을 의미하지 않음을 주목해야 한다. 성능데이터 모델링은 정규화를 통해서도 수행할 수 있고 인덱스의 특징을 고려해서 칼럼의 순서도 변형할 수 있다. 또한 대량의 데이터특성에 따라 비록 정규화된 모델이라도 테이블을 수직 또는 수평분할하여 적용하는 방법도 있고 논리적인 테이블을 물리적인 테이블로 전환할 때 데이터 처리의 성격에 따라 변환하는 방법도 성능 데이터 모델링의 범주에 포함될 수 있다.

 


2. 성능 데이터 모델링 수행시점

성능 향상을 위한 비용은 프로젝트 수행 중에 있어서 사전에 할수록 비용이 들지 않는다. 특히 분석/설계 단계에서 데이터 모델에 성능을 고려한 데이터 모델링을 수행할 경우 성능저하에 따른 재업무(Rework) 비용을 최소화 할 수 있는 기회를 가지게 된다.

 


3. 성능 데이터 모델링 고려사항

  1. 데이터 모델링을 할 때 정규화를 정확하게 수행한다.

    - 데이터를 주요 관심사별로 분산시키는 효과가 있음

  2. 데이터베이스 용량산정을 수행한다.

    - 어떤 엔터티(테이블)에 데이터가 집중되는지 파악할 수 있음

  3. 데이터베이스에 발생되는 트랜잭션의 유형을 파악한다.

    - CRUD 매트릭스 또는 시퀀스 다이어그램을 보면 파악하기에 용이하며 데이터 조회에 필요한 조인 관계 등을 파악할 수 있게 됨

  4. 용량과 트랜잭션의 유형에 따라 반정규화를 수행한다.

    - 테이블, 속성, 관계에 대해 포괄적인 반정규화 방법을 적용해야 함

  5. 이력모델의 조정, PK/FK 조정, 슈퍼타입/서브타입 조정 등을 수행한다.

    - 반드시 PK/FK를 성능이 우수한 순서대로 칼럼의 순서를 조정해야 함

  6. 성능 관점에서 데이터 모델을 검증한다.

 


↓SQL 전문가 가이드 요약 목록

더보기

 

따로 PDF 파일이 필요하신 분은 댓글을 통해 메일 주소 적어주시기 바랍니다.