인프런 커뮤니티 질문&답변
index rebuild관련
작성
·
480
0
- index rebuild는 성능 향상에 크게 도움이 되지 않으므로 주기적으로 할 필요는 없고 모니터링 후에 필요하면 해야 한다고 하셨는데요
모니터링에서 depth가 얼마나 깊으면 rebuld 하는건가요?
rebuild해야 하는 상황에 대해서 알고 싶습니다.
퀴즈
63%나 틀려요. 한번 도전해보세요!
Oracle에서 DB Time이 의미하는 것은 무엇일까요?
데이터베이스가 유휴 상태로 대기한 시간
데이터베이스 포그라운드 프로세스가 자원을 사용하거나 대기한 총 시간
클라이언트에서 SQL을 전송하고 결과를 받을 때까지의 전체 시간
백그라운드 프로세스가 디스크 I/O를 수행한 시간
답변 1
1
권 철민
지식공유자
안녕하십니까,
1. 과거에는 branch를 4~5개 넘게 액세스를 하면 rebuild를 추천했습니다.
analyze index 인덱스명 compute statistics 한 후에
select index_name, blevel from user_indexes where index_name='인덱스명'
해서 blevel 컬럼값이 4~5 이상이면 rebuild 대상으로 생각해 볼수 있습니다.
근데 강의 설명에서도 말씀 드렸듯이 이러한 방식은 과거 방식으로 불필요한 작업이 될 수 있습니다. analyze하는데도 시간이 걸리고, rebuild 하는 데도 많은 시간이 소모됩니다. 정말 index를 거쳐서 수행하는 sql의 성능이 과도하게 오래 걸리는것 같다고 판단될 때만 수행하는 것이 좋습니다.





답변 감사드립니다~