기술 정보
home
채널 소개
home

AUTO_COALESCE 기능과 비활성화 시 대체 방안

문서 유형
기술 정보
분야
관리/환경설정
키워드
auto_coalesce
적용 제품 버전
6FS06
7FS02

개요

AUTO_COALESCE 기능에 대한 설명과 해당 기능을 비활성화 했을 경우 대체 방안에 대해 설명합니다.
AUTO_COALESCE는 인덱스 내 비어 있는 공간을 주기적으로 정리하여, 전체 인덱스 크기를 줄여주는 기능입니다. 즉, 여러 개의 빈 블록을 하나의 블록으로 병합하는 내부 메커니즘을 통해 인덱스 공간을 효율적으로 관리합니다.

방법

아래 예제를 통해 AUTO_COALESCE와 AUTO_COALESCE_INTERVAL 설정 값을 확인합니다.
SQL> select name, value, dflt_value from v$parameters where name = 'AUTO_COALESCE'; NAME VALUE DFLT_VALUE -------------------- -------------------- -------------------- AUTO_COALESCE 2 2 1 row selected.
SQL
복사
옵션
0 : 인덱스 병합 기능을 사용하지 않음
1 : LOB 인덱스에 대해서만 병합 수행
2 : 모든 인덱스에 대해 병합 수행 (기본값)
SQL> select name, value, dflt_value from v$parameters where name = 'AUTO_COALESCE_INTERVAL'; NAME VALUE DFLT_VALUE ------------------------------ -------------------- -------------------- AUTO_COALESCE_INTERVAL 100 100 1 row selected.
SQL
복사
옵션
AUTO_COALESCE_INTERVAL은 인덱스 병합 작업의 수행 주기를 의미합니다.
기본값 : 100  (10초)
Range  : 0 ~ 3600000 (0.1 second ~ 100 hours)
참고
AUTO_COALESCE를 비활성화한 상태로 운영할 경우, 단편화된 인덱스 블록으로 인해 인덱스 스캔 시 성능 저하가 발생할 수 있습니다. 또한 DML 작업이 많은 환경에서는 인덱스의 저장 공간이 지속적으로 증가할 수 있습니다.
이에 대한 대체 방안으로는 주기적으로 수동 COALESCE 또는 INDEX REBUILD 작업을 수행하는 것이 필요합니다.