seols

[SQLD 자격과정] CH02 데이터 모델과 성능 본문

강의/FASTCAMPUS_SQLD

[SQLD 자격과정] CH02 데이터 모델과 성능

설이야 2022. 10. 18. 16:17

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

성능 데이터 모델링 :  데이터 베이스 성능 향상을 목적으로 설계단계의 데이터 모델링때부터 성능과 관련된 사항이 데이터 모델링에 반영될 수 있도록 하는 것

 

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

정규화, 용량 산정, 트랜잭션의 유형 파악, 반 정규화 수행, 조정 등 수행, 데이터 모델 검증

 

2 정규화와 성능

결정자에 의해 함수적 종속을 가지고 있는 일반속성을 의존자로 하여 이상 현상 제거

데이터 중복 속성을 제거하고 결정자에 의하 동일한 일반 속성이 하나의 테이블로 집약되어 데이터 용량 최소화

조회 성능은 향상 or 저하/ 입력 수정 삭제 시에는 성능 향상

 

정규화 : 작은 단위의 테이블로 설계하는 과정

정규형 : 정규화 결과에 의해 도출된 데이터 모델이 갖춰야 할 특성

다치종속 : 다른 컬럼의 다수의 값을 알 수 있을 때, 다치종속관계임

 

정규화의 장점

유연성, 재활용 가능성, 중복이 최소화> 데이터 품질확보

 

정규화 이론

1차 정규화 : 복수의 속성값 분리

2차 정규화 : 부분종속 속성 분리

3차 정규화 : 이전종속 속성 분리

 

제 1 정규형

모든 속성은 원자 값을 가져야함.

다중 값을 가질 수 있는 속성은 분리되어야 함

제 2 정규형

모든 Nonkey 컬럼은 기본 키 전체에 종속

기본 키 일부 컬럼에만 종속적인 컬럼 분리

제 3 정규형

일반속성들간에도 종속관계가 존재하지 않아야 함

일반 속성들 간의 종속관계가 존재하는 것들을 분리

 

함수적 종속성에 의한 정규화 수행 필요

ex 결정자(주민등록번호) ---> 종속자(이름, 출생지, 주소)

 

3 반정규화와 성능

중복, 통합, 분리 등을 수행

데이터를 중복하여 성능을 향상시키기 위한 기법

디스크 입출력이 많거나, 경로가 멀거나 등 성능이 저하되는 경우 수행

>> 중복성의 원리를 활용하여 데이터 조회 성능을 향상

 

반정규화의 절차

1. 반정규화 대상 조사

2. 다른방법 유도 검토

3. 반정규화 적용

 

반정규화 기법

테이블 반정규화

칼럼 반정규화

관계 반정규화 : 데이터의 무결성을 깨뜨릴 위험X

 

4 대량 데이터에 따른 성능 

대량 데이터의 경우 트랜잭션이 발생하여 수평/수직분할 설계를 통해 성능저하 예방

대량 테이블 발생 현상 > 블록 I/O 횟수가 많아짐

로우 체이닝 : 하나의 데이터가 두 개 이상의 블록에 걸쳐 저장

로우 마이긔레이션 : 수정 데이터를 해당 블록에 저장하지 못하고 다른 블록의 빈공간에 저장

 

대량 테이블 성능 향상

수평 분할

RANGE PARTITION : 파티션 테이블을 생성하여 보관, 데이터 보관주기에 따른 테이블 관리 용이

LIST PARTITION : 특정 값에 따라 분리 저장 

HASH PARTITION : HASH 조건에 따라 알고리즘이 적용, 설계자는 어떻게 들어갔는지 알수 없음

 

5 데이터 베이스 구조와 성능

슈퍼 타입 : 하나의 테이블로 구성

서브 타입 : 각각의 서브테이블로 구성

개별 타입: 슈퍼 테이블, 서브테이블 모두 구성

> 트랜잭션은 처리 기준에 따라 테이블 구성이 필요

 

PK/FK 순서

PK가 여러개의 속성으로 구성된 복합식별자일때, 컬럼의 순서가 매우 중요

선두칼럼 조건이 없는 경우 테이블 전체를 읽음

FK 인덱스가 있어야 성능향상을 시킬 수 있음

 

6 분산 데이터베이스와 성능

분산된 데이터 베이스를 하나의 가상 시스템으로 사용할 수 있도록 한 데이터 베이스

분산 데이터 베이스의 투명성

분할 투명성, 위치 투명성, 지역 사상 투명성, 중복 투명서, 장애 투명성, 병행 투명성

 

분산 데이터베이스 장단점

장점 : 빠른 응답속도와 통신 비용절감, 각 지역 사용자 요구 수용 증대

단점 : 소프트웨어 개발 비용, 불규칙한 응답 속도

 

분산 데이터에비스 적용 기법

테이블 위치 분산, 테이블 분할 분산, 테이블 복제 분산, 테이블 요약 분산

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Comments