5. 자주 하는 실수 (Tip)
실수 1: 계획이 이상하면 곧바로 힌트를 붙인다
느린 쿼리에 힌트부터 붙이면 원인인 통계가 그대로 남습니다. 같은 표를 쓰는 다른 쿼리도 계속 틀린 예상을 받습니다. 예상 행 수와 실제 행 수를 비교하고, 크게 다르면 통계 수집을 먼저 시도합니다.
실수 2: 대량 적재 뒤에 통계를 수집하지 않는다
자동 수집은 적재 직후에 이미 끝나 있지 않습니다. 배치 마지막에 통계 수집을 넣어야 다음 조회부터 새 분포를 봅니다. 다만 수집이 오래 걸리는 큰 표는 샘플링 비율을 DB 문서에서 확인합니다.
실수 3: 힌트가 적용된 줄 알고 확인하지 않는다
Oracle 은 힌트가 틀려도 오류를 내지 않습니다. 별칭이 FROM 과 다르거나 인덱스 이름에 오타가 있으면 힌트는 조용히 무시됩니다. 힌트를 넣은 뒤에는 실행 계획에서 원하는 연산이 나왔는지 봅니다.
팁힌트를 써야 한다면 이유와 날짜를 주석으로 남깁니다. 예를 들어 "통계 치우침 때문에 고정, 재검토 필요" 라고 적어 두면 나중에 이 힌트를 지워도 되는지 판단할 수 있습니다.