Programming/Oracle

인덱스 리빌딩(index rebuilding)

초록깨비 2021. 12. 27. 18:00
728x90

인덱스 리빌딩 주기적으로 해야한다??

 

 

인프런에서 오라클 인스턴스 성능개선 관련(권철민강사님) 수업 중에 인덱스 리빌딩에 대한 부분이 나왔습니다

 

인덱스 리빌딩을 주기적으로 해야한다

통계자료 생성을 하니 인덱스 리빌딩은 따로 하지 않아도 된다하는 얘기들이 많아서

어떻게 작업을 해야할지 고민이 많았었는데요

오늘 강사님이 속시원히 해결책을 알려주셨습니다

더이상 헷갈리지 않아야 겠습니다

 

db_file_sequential_read의 개선방안으로 

  index rebuild가 있으나 문제 해결에 도움이 되지 않은 경우가 대부분으로  모니터링을 통해서

 인덱스 리빌딩을 해야할지 결정 해야 한다고 합니다

 

 

 강사님 답변으로 과거에는 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의 성능이 과도하게 오래 걸리는것 같다고 판단될 때만 수행하는 것이 좋다고 합니다

 

 

 

 

 

728x90