study:oracle:datadb:4week_2:chap1
문서의 이전 판입니다!
3.3.1. 힌트(Hint)의 활용 기준
힌트(HINT)란?
사용자의 요구를 옵티마이져에게 전달할 수 있는 중요한 보조 수단
- 과거 힌트가 탄생한 이유 : 초기 옵티마이져의 실수를 보완해주기 위해서 였음
- 현재 힌트가 사용되는 경우 : 잘못을 잡아주는 용도보다 옵티마이져가 가지고 있지 못하는 정보를 우리가 더많이 알고 있을 때나 우리의 특별한 목적을 관철하고자 할 때 사용하게 됨
힌트의 특징
- 옵티마이져는 사용자의 힌트를 참조할 뿐임
- 다른의미에서는 바둑에서나 장기를 둘때의 '훈수'와 매우 유사하여 도움이된다면 받아들이고 가치가 없다고 생각되면 무시함
힌트에 대한 고찰
- 힌트가 있다는 것 : 곧 그러한 유형의 액세스가 있다는 것을 의미함
- 새로운 힌트가 태어남 : 새로운 형태의 실행계획이 제공되었다는것이므로 숙지하여 활용해야 할것임
- 힌트가 다른것으로 대체 : 좀 더 나은방법으로 실행계획이 개선 되었음 의미함
- 힌트가 삭제 됨 : 이제 더 이상 그러한 방법의 실행계획이 제공하지 않겠다는 것을 의미하므로 우리가 영향을 받게 되는지에 대해 연구해 볼 필요가 있음
- 만약 10% 이상의 쿼리에 힌트가 적용되고 잇다면 그원인을 찾아보아야함
- 옵티마이져 모드 선택이 잘못될 가능성이 있음
- 인덱스 구성이 전략적이지 못했을 가능성이 높음
- 불필요한 힌트는 액세스 경로의 결정에 악 영향을 미치는 경우도 많음
- 너무 많은 힌트를 사용하게 되면 인덱스 구성이 변하였을때 애플리케이션을 찾아 일일이 수정해야 할지 모름
- 더 좋은 실행계획을 자연스럽게 옵티마이져가 찾을수 있음에도 불구하고 힌트로 인해 액세스 경로가 고정됨으로써 웅통성이 크게 저하될수 있음
결론
참조한문서
study/oracle/datadb/4week_2/chap1.1274861898.txt.gz · 마지막으로 수정됨: 저자 zummaz


