DB는 Oracle 10g를 사용하고 있고요.
한개의 테이블이 데이타 량이 너무 많아 월기준으로 Partition을 생성하여 관리 하고 있습니다.
Partition 생성 조건은 매월 1일 다음달의 Partion을 생성하고
Analize는 매주 일요일 새벽 시간에 실행이 됩니다.
문제점은 이번달의 경우 5월분 Partition은 4월1일에 생성이 되었고
4월 28일에 Anlayze가 실행이 되었는데
5/1일은 휴무라서 데이타가 발생되지 않았고
6월 파티셔만 생성 하였습니다.
이 경우 5/2일 데이타를 생성해서 입력 하는 도중에
Select 및 Insert 문에서 처리 속도가 확연하게 떨어져서 결국 DB Lock이 발생하였고
5/2일 저녁에 Anlayze를 재 실행 한 후 정상적으로 돌아 왔습니다.
문제가 발생 한 쿼리의 Plan을 떠보면 Anlayze을 실행 하기 이전에는 Index를 재대로 못타는 현상이 보였으며
Analyze 실행 후 정상 적으로 Index를 태워서 문제가 해결 되었습니다.
이런 경우 해결 방법이 어떤게 있을까요.
이제 곧 다시 월초가 되어 또 발생을 하지 않을까 심히 걱정이 됩니다.
많은 조언 부탁드립니다. |