여기 있는 모든 분께 감사드립니다! 중복 키를 수정하고, 더 이상 필요 없는 인덱스를 삭제한 후 다음을 성공적으로 실행했습니다.
REINDEX DATABASE discourse;
VACUUM VERBOSE ANALYZE;
CPU 사용량이 정상으로 돌아왔습니다. 다행이네요.
질문: 최적화되지 않은 데이터베이스나 손상된 인덱스가 왜 postmaster의 CPU 사용량을 이렇게 높이는 것일까요? 그냥 궁금해서요.
여기 있는 모든 분께 감사드립니다! 중복 키를 수정하고, 더 이상 필요 없는 인덱스를 삭제한 후 다음을 성공적으로 실행했습니다.
REINDEX DATABASE discourse;
VACUUM VERBOSE ANALYZE;
CPU 사용량이 정상으로 돌아왔습니다. 다행이네요.
질문: 최적화되지 않은 데이터베이스나 손상된 인덱스가 왜 postmaster의 CPU 사용량을 이렇게 높이는 것일까요? 그냥 궁금해서요.
깨진 인덱스는 기만적 요소(red herring)이라고 생각합니다. 분명히 좋지 않은 상태이지만, 수정해야 합니다.
진짜 큰 문제는 10~12 버전으로의 마이그레이션이 데이터베이스의 통계 정보 상태를 매우 나쁘게 만든다는 점입니다. 이로 인해 성능이 저하됩니다.
성능이 나쁜 이유는 쿼리 최적화기가 테이블 내 데이터에 대한 통계 정보가 완전히 부정확하기 때문에 쿼리에 대해 매우 나쁜 실행 계획을 선택하기 때문입니다.
우리는 vacuum을 통한 통계 정보 재구성을 자동화된 마이그레이션 프로세스에 통합할 것입니다.
@sam, 설명해 주셔서 감사합니다. 이해가 됩니다. 재구축을 자동 이동에 통합하는 것이 좋은 아이디어인 것 같습니다. 다시 한번 도움을 주셔서 감사합니다!