본문 바로가기

SQL

SQL - 데이터모델링과 성능 (개요)

공부 정리용!

 

자료는 한국데이터산업진흥원 참고 사용   

https://dataonair.or.kr/db-tech-reference/d-guide/sql

 

SQL – DATA ON-AIR

 

dataonair.or.kr

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

1) 데이터 모델 구조에 의한 성능 저하 

2) 데이터가 대용량이 되며 발생하는 성능저하 

3) 인덱스 특성을 고려하지 않고 생성함으로 인한 성능 저하 

 

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

 

>> 정규화된 모델이라도 수직 또는 수평분할하여 적용하는 방법도 있고 논리적 테이블을 물리적 테이블로 전환시 데이터 성격에 따라 변환하는 방법도 포함 됨 

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

- 프로젝트 사전에 할 수록 비용이 들지 않음 

- 분석/설계 단계에서 데이터모델에 대한 성능을 고려한 데이터 모델링 수행 시 성능저하에 따른 재업무 (Rework)비용을 최소화 가능 

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

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

  > 데이터를 주요 관심사별로 분산 시켜 성능향상 효과 

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

 > 데이터 모델의 각각의 엔터티에 어느정도의 트랜잭션이 들어오는지 살펴봄 - 엔터티에 대한 용량 산정 

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

 > CRUD 매트릭스를 보고 파악 OR 객체지향 모델링을 적용하여 시퀀스 다이어그램을 보면 트랜잭션 유형 파악에 용이 

> 화면에 처리된 데이터의 종류를 보고 이벤트(입력, 수정, 삭제, 조회) 에 따라 데이터 처리 유추 가능 

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

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

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

>> 대량의 데이터가 처리되는 이력모델에 대한 성능 고려, PK, FK 순서가 인덱스 특성에 따라 성능에 영향을 미치는 영향도가 크므로 반드시 PK/FK 성능이 우수한 순서대로 칼럼의 순서를 조정 

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

>> 전체적으로 성능에 대한 충분한 고려가 되었는지 데이터 모델에서 재 검토 

 

 

 

SQL 자격검정 실전문제 (오답노트)

31. 다음 중 성능 데이터 모델에 대한 설명으로 가장 부적절한 것은?

1. 성능이 저하된 결과를 대상으로 데이터모델보다는 문제발생 시점의 SQL  을 중심으로 집중하여 튜닝한다 

2. 데이터 증가가 빠를수록 성능저하에 따른 성능개선비용은 증가한다. 

3. 데이터모델은 성능을 튜닝하면서 변경이 될 수 있는 특징이 있다. 

4. 분석/설계 단게에서 성능을 고려한 데이터모델링을 수행 할 경우 성능저하에 따른 Rework 비용을 최소화 할 수 있는 기회를 가지게 된다. 

 

33. 다음 중 아래에서 성능을 고려한 데이터 모델링의 순서로 가장 적절한것은?

가. 데이터 모델링을 할 때 정규화를 정확하게 수행한다. 
나. 용량과 트랜잭션의 유형에 따라 반정규화를 수행한다. 
다. 데이터베이스 용량산정을 수행한다. 
라. 데이터베이스에 발생되는 트랜잭션의 유형을 파악한다. 
마. 성능관점에서 데이터모델을 검증한다. 
바. 이력모델의 조정, PK/FK조정, 슈퍼타입/서브타입 조정 등을 수행한다. 

1. 가-나-다-라-마-바

2. 가-나-다-라-바-마

3. 가-다-라-바-나-마

4. 가-다-라-나-바-마

 

참고사이트 : 

https://dataonair.or.kr/db-tech-reference/d-guide/sql/?pageid=5&mod=document&uid=331 

 

성능 데이터 모델링의 개요

1. 성능 데이터 모델링의 정의 인프라가 갖추어 지지 않은 환경에서 과연 빠른 속도로 이동할 수 있을까? 길이 굽이굽이 굽어져 있고 곳곳에 신호등이 있는 도로에서 아무리 성능이 좋은 차라고

dataonair.or.kr

 

SQL 자격검정 실전문제
https://product.kyobobook.co.kr/detail/S000001399867

 

SQL 자격검정 실전문제 | 한국데이터진흥원 - 교보문고

SQL 자격검정 실전문제 | SQL 자격검정 실전문제는 국가공인 SQL 전문가 및 국가공인 SQL 개발자 자격시험 대비 수험서로 SQL 전문가 가이드에서 다루고 있는 데이터 모델링의 이해, SQL기본 및 활용,

product.kyobobook.co.kr

 

1/4