본문 바로가기
Infra

무조건적인 인덱스는 좋지 않다.

by GOMJ 2025. 3. 2.

이번에 조회 쿼리를 짜는데 속도가 너무 오래 걸렸다.

 

아무리 원장 테이블이라 해도 심하길래 실행 계획을 분석해봤다.

 

그런데 맹목적으로 믿었던 인덱스가 문제였다.

 

인덱스가 full scan을 타면서 loop join을 도는게 화근이었다. 대략 걸리는 시간은 3분이였다.

 

따라서 loop join 대신 hash join을 사용해야 겠다고 생각했고 인덱스를 사용하지 않고 hash join을 hint로 줬다.

 

그 결과 3초만에 조회가 가능하게 변경 완료했다.

 

다행이도 SQLP 공부를 하며 이번 경험과 비슷한 내용이 있던 것 같아 금방 해결할 수 있었다.

 

앞으로 실행 계획은 필수로 봐야할 듯 싶다.

'Infra' 카테고리의 다른 글

테이블 설계의 중요성  (0) 2025.03.16
erwin 오류  (0) 2025.03.09
[SQL] Window Function(윈도우함수)  (0) 2025.01.12
서버 이중화 (Active-Active, Active-Standby)  (0) 2025.01.12
Docker란 ?  (0) 2024.12.29