데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
안녕하세요.
공부를 하던 도중에 옵티마이저에 정보를 볼떄 궁금한게 있어서요.
sys.dm_exec_query_optimizer_info 해당 테이블에는 옵티마이저가 실행했던 정보를 볼수 있는것으로 알고 있습니다.
하지만 여기서 궁금한게 search0,1,2는 무엇을 의미 하는것 인가요?
BOL에도 내부전용이라고만 나오고 전혀 설명이 없습니다.
이것은 무엇을 의미 하는 것인가요?
한마디로 이 테이블을 딱 보면 이 서버는 어떤 서버구나....라는 것을 알 수 있습니다.
Search 0 Transaction Processing
심플한 옵티마이제이션이 일어난 숫자 (indexed view 나 parallel 등이 일어나지 않음)
Search 1 Quick Plan
좀더 복잡한 플랜 많은룰 사용 조인 reorder 등이 일어나고 최적화 cost 가 큰 쿼리들이 일어난 숫자
Search 2 Full Optimization
tf 8675 를 사용하면 볼 수 있음. 가장 최적화 코스트가 많이 들어간 옵티마이징 숫자
공부하는 진도가 너무 빠른듯 하기도 하고 대성하시길 바랍니다. !!
http://sqlblog.com/blogs/paul_white/archive/2012/04/29/query-optimizer-deep-dive-part-3.aspx