데이터베이스 파티션

From IT Wiki
Revision as of 22:13, 10 November 2019 by 175.119.151.228 (talk)


  • 파티션: 테이블 또는 인덱스 등을 나누어둔 단위
  • 파티셔닝: 성능 개선 및 관리를 위해 테이블 또는 인덱스 등을 파티션이라는 단위로 나누어 저장하는 설계 기법

파티셔닝 목적

  • 관리 측면: 파티션 단위 백업, 추가, 삭제
  • 성능 측면: 파티션 단위로 처리하여 DML 수행 경합 분산

파티션 유형

유형 설명
Range Partition
  • 파티션 키 값을 범위별로 분할
  • 주로 시계열 데이터에 대한 기간별 관리
Hash Partition
  • 키 값을 해싱한 값을 기준으로 분할
  • 데이터의 고른 분포로 병렬 처리 효과 극대화
List Partition
  • 이산적인 목록을 특정 칼럼을 기준으로 분할
Composition Partition
  • 상위 3가지 파티션 방법의 조합
  • Range 후 Hash 또는 List 구성 등

인덱스 파티션

유형 설명 장점
키 대응 기준 Local 테이블 파티션과 1:1 대응 인덱스 스캔 효율 높음
Global 테이블 파티션과 독립적으로 구성 인덱스 경합 분산에 유리
위치 기준 Prefixed 테이블 파티션과 인덱스 구성 시작 칼럼이 같음 대부분의 경우 성능 우수
Non-Prefixed 테이블 파티션과 인덱스 구성 시작 칼럼이 다름[1] 해당 인덱스 칼럼 기준으로 검색 시 유리
  1. 테이블의 인덱스가(year, month, day)인데 인덱스 파티션 구성은(day)인 경우