본문 바로가기
Database/Oracle

[ORACLE] USER_SUBPART_KEY_COLUMNS로 서브파티션 키 구조 완벽 분석

by Papa Martino V 2025. 8. 7.
728x90

USER_SUBPART_KEY_COLUMNS로 서브파티션 키 구조 완벽 분석
[ORACLE] USER_SUBPART_KEY_COLUMNS

1. USER_SUBPART_KEY_COLUMNS란?

USER_SUBPART_KEY_COLUMNS는 Oracle DB에서 복합 파티셔닝 테이블의 서브파티션 키 컬럼 정보를 보여주는 데이터 딕셔너리 뷰입니다. 이 뷰는 현재 접속한 사용자(스키마)의 객체에 대해서만 정보를 제공합니다. 이 뷰는 Composite Partitioning (예: Range-Hash, Range-List)을 사용하는 테이블의 서브파티션 정의를 파악할 때 필수적인 도구입니다.

2. 사용 목적

  • 파티셔닝 구조 이해: 테이블 설계 시 서브파티션 기준을 명확하게 파악 가능
  • 쿼리 성능 최적화: 파티션 키 접근 여부에 따라 쿼리 튜닝 전략 수립
  • DB 설계 문서화: 객체 구조의 명세 자동화 도구로 활용 가능

3. 주요 컬럼 설명

컬럼명 설명
NAME 테이블 이름
OBJECT_TYPE 객체 유형 (보통 TABLE)
SUBPARTITION_POSITION 서브파티션 정의 순서
COLUMN_NAME 서브파티션 키로 사용된 컬럼명
COLUMN_POSITION 서브파티션 키 내에서의 순서

4. 실전 활용 예제

다음 쿼리는 특정 테이블의 서브파티션 키 컬럼을 순서대로 조회합니다.

SELECT COLUMN_NAME, COLUMN_POSITION
FROM USER_SUBPART_KEY_COLUMNS
WHERE NAME = 'SALES_DATA'
ORDER BY COLUMN_POSITION;
      

이 쿼리는 SALES_DATA 테이블이 어떤 컬럼을 서브파티션 키로 사용하고 있는지 빠르게 확인할 수 있는 실용적 도구입니다.

5. 관련 파티션 키 뷰 비교

뷰 이름 역할 설명
USER_PART_KEY_COLUMNS 파티션 키 기본 파티션 키 컬럼 정보
USER_SUBPART_KEY_COLUMNS 서브파티션 키 서브파티션에 사용되는 컬럼의 위치와 이름
USER_PART_TABLES 파티셔닝 타입 Range, Hash, List 등 파티션 방식 확인

6. 고급 활용 전략

  • 서브파티션 인식 쿼리 작성: 서브파티션 키 컬럼에 조건을 줄 경우 파티션 프루닝 가능
  • 정렬과 병렬처리 계획 확인: 키 컬럼 정의 순서를 통해 정렬 및 분산처리 설계
  • 파티션 설계 감사: 복합 파티셔닝 구조가 의도대로 설정되었는지 스크립트로 자동 검증

7. 결론

USER_SUBPART_KEY_COLUMNS는 파티셔닝 구조의 이해뿐만 아니라, 성능 최적화, DB 설계 품질 확보를 위한 핵심 뷰입니다. 복잡한 대용량 테이블 구조를 체계적으로 관리하려면 이 뷰를 활용한 진단 루틴을 구성하는 것이 좋습니다.

참고 자료

728x90