[Certification]/[SQLD] Structured Query Language Develop

[SQLD] 2-3. 데이터 모델과 성능 - 대용량 데이터에 따른 성능, 수평분할, 수직분할, 테이블 분리, 로우체이닝

starterr 2024. 9. 7. 15:24
반응형

A. 대량 데이터 발생에 따른 테이블 분할 개요

1. 업무에 자주 사용되는 특정 데이터가 한 군데에 몰리는 현상에 의해 발생
2. 중요한 업무에 해당되는 데이터가 특정 테이블에 있는 경우에 발생
3. 트랜잭션이 분산 처리될 수 있도록 테이블단위에서 분할의 방법 적용 필요

 

대량 데이터 발생에 따른 테이블 분할 개요
대량 데이터 발생에 따른 테이블 분할 개요

 

 

B. 컬럼 수가 많은 테이블 성능

1. 데이터가 디스크에 넓게 분포할 가능성이 커져 디스크 I/O 가 대량 발생 가능성 있음
2. 트랜잭션 유형을 파악하여 자주 접근하는 칼럼과 접근 빈도가 낮은 칼럼을 1:1로 수직 분할
3. 필수 입력 속성인 컬럼들은 테이블 앞에 위치시켜 로우 길이를 줄일 수 있음
4. Null 값으로 존재하는 속성들을 재분석하여 데이터모델 재설계를 고려
5. 로우체이닝 발생 가능성이 증가

 

컬럼 수가 많은 테이블 성능
컬럼 수가 많은 테이블 성능

 

C. 대용량 데이터에 따른 성능

1. 테이블에 많은 데이터가 존재하는 경우 파티셔닝을 적용하거나 PK에 의해 테이블을 분할
2. 파티셔닝 테이블은 논리적으론 하나의 테이블이지만 물리적으로 분리되어 저장되는 테이블
3. 파티셔닝 테이블은 List Partition, Range Partition, Hash Partition이 존재

 

반응형

D. 3가지 파티션 테이블 적용

【Range Partition 적용】
1. 날자 또는 숫자 값으로 분리 가능하고 분리한 영역별로 트랜잭션이 발생하는 경우 적용
2. 데이터보관주기에 따라 파티션별로 데이터 삭제 가능


【List Partition 적용】
1. 대용량 데이터를 특정 값에 따라 파티션으로 분리 저장


【Hash Partition 적용】
1. 해시 알고리즘을 적용하여 나온 값으로 파티션으로 분리 저장
2. 테이블에 데이터가 정확하게 어떻게 들어갔는지 알 수 없음

 

E. 테이블 수평/수직분할 4원칙(절차)

1. 데이터 모델링 완료
2. 데이터베이스 용량 산정
3. 트랜잭션 처리 패턴 분석
4. 집중화된 단위(칼럼/로우)를 분석하여 테이블을 수평/수직 분할

 


 

[SQLD] 1-4. 데이터 모델의 이해 - 관계(Relationship) 정의, 분류, 표기법

 

[SQLD] 1-4. 데이터 모델의 이해 - 관계(Relationship) 정의, 분류, 표기법

A. 관계 정의1. 엔터티끼리 상호 연관성이 있는 상태를 의미 2. 데이터 모델 내에 존재하는 엔터티 간 논리적인 연관성 B. 관계 분류1. 존재 관계 : 존재 자체로 연관성이 있는 관계 2. 행위 관계 :

infoofit.tistory.com

 

[SQLD] 2-1. 데이터 모델과 성능 - 정규화와 성능 데이터 모델링, 용어, 정규화 종류

 

[SQLD] 2-1. 데이터 모델과 성능 - 정규화와 성능 데이터 모델링, 용어, 정규화 종류

정규화와 성능성능 데이터 모델링 정의1. 데이터베이스 성능 향상을 목적 2. 성능과 관련된 사항들이 데이터 모델링 작업에 반영될 수 있도록 하는 것 3. 작업 유형에 따라 성능 향상 목표를 분명

infoofit.tistory.com

 

[SQLD] SQLD 시험 안내/합격 기준/응시 자격 소개

 

[SQLD] SQLD 시험 안내/합격 기준/응시 자격 소개

SQLD(Structured Query Language Developer) 한국데이터산업진흥원(KDATA)에서 주관하는 국가공인자격시험으로, SQLD/SQLP 2종류로 나뉩니다. 자격기본법 제1조(목적)이 법은 자격에 관한 기본적인 사항을 정함

infoofit.tistory.com

 

 

반응형