반응형
Partition Pruning (파티션 프루닝)
파티션 프루닝이란?
하드파싱이나 실행 시점에서 SQL 조건절을 분석하여 읽지 않아도 되는 파티션 세그먼트를 엑세스 대상에서 제외시키는 기능.
-> 쉽게 정리하면 파티션을 나눠서 SQL 수행시 데이터 없는 파티션은 안 읽는것.(없는지 있는지 구분을 조건절을 분석하여 파악)
파티션 프루닝이 되고 있는 실행계획
그러면 파티션 프루닝이 실행계획에서는 어떻게 나타날까..?
PARTITION RANGE SINGLE 의 OPERATION이 발생하면 파티션 프루닝이 되고 있다고 생각하면 된다.
PARTITION RANGE ALL 의 OPERATION이 발생하면 파티션 프루닝이 안 되고 있다고 생각하면 된다.
그러면 파티션 프루닝이 안되는 경우도 있을까?
당연히 파티션 프루닝이 안되는 경우가 있다.
1. where 절 조건의 컬럼을 가공했을때 (ex. SUBSTR(),TRIM() 등)
2. HASH 파티션일 경우 등치조건(=)이나 in 조건이 아닐 때 (ex. like 등)
더 자세한건 추후에..+
반응형