728x90

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 설계 품질 확보를 위한 핵심 뷰입니다. 복잡한 대용량 테이블 구조를 체계적으로 관리하려면 이 뷰를 활용한 진단 루틴을 구성하는 것이 좋습니다.
참고 자료
- Oracle® Database VLDB and Partitioning Guide 21c
- Oracle® SQL Language Reference
- Oracle Help Center: https://docs.oracle.com/en/
728x90
'Database > Oracle' 카테고리의 다른 글
| [ORACLE] USER_SYNONYMS 뷰를 활용한 시노님 구조 완벽 이해 (0) | 2025.08.07 |
|---|---|
| [ORACLE] USER_SUMMARIES로 요약 뷰(MV) 기반 성능 최적화 이해하기 (0) | 2025.08.07 |
| [ORACLE] USER_SUBPART_HISTOGRAMS 뷰로 히스토그램 기반 서브파티션 최적화하기 (0) | 2025.08.07 |
| [ORACLE] USER_SUBPART_COL_STATISTICS로 파티션 컬럼 통계 완전 분석 (0) | 2025.08.07 |
| [ORACLE] USER_SOURCE 뷰 완전 해부와 실전 활용 전략 (0) | 2025.08.07 |