Понимание плана выполнения в SQL Server

Мне нужно понять, как читать план выполнения, я читал некоторые документы, но не ясен для меня.

Как я могу узнать, работает ли мой запрос ОК?

Что это значит:

Это пример 1 моего запроса 1

  1. вложенные петли
  2. интервал идет
  3. поиск кластеризованного индекса
  4. конкатенация
  5. вычислить скаляр
  6. Сортировать

sql-server,sql-execution-plan,

-2

Ответов: 1


1 принят

Честно говоря, это проголосовало (см. Мой комментарий). Но вам будет разумно прочитать статью Microsoft Technet о оптимизаторе на основе затрат, который охватывает то, о чем вы просите.

Я скажу это, основываясь на моем опыте, если план выполнения рекомендует индекс, то я предлагаю вам серьезно подумать об этом, поскольку обычно выигрывают показатели производительности, даже если индекс практически не имеет смысла (т. Е. SQL Server довольно хорош, но не совершенным, зная, чего он хочет). Теперь, если вы добавите индекс, а план выполнения рекомендует другой индекс, вам может потребоваться рассмотреть, какие столбцы вы возвращаете; как вы присоединяетесь; и / или ваш дизайн стола.

В конечном счете, вы пытаетесь получить план выполнения, чтобы показать поиск в кластерном индексе (лучше всего), затем кластерное сканирование индексов (OK), поиск индексов, сканирование индексов и предотвращение сканирования таблиц (т.е. кучи). Это, конечно, мое мнение.

https://technet.microsoft.com/en-us/library/2007.11.sqlquery.aspx

Другое свечение:

http://www.dbjournal.ro/archive/16/16_4.pdf

https://nirajrules.wordpress.com/2009/06/10/cost-based-optimization-cbo-vs-rule-based-optimization-rbo/

Для руководства и обсуждения практиков:

http://logicalread.com/sql-server-primary-key-vs-clustered-index-part-1-mb01/

http://logicalread.com/sql-server-primary-key-vs-clustered-index-part-2-mb01/

http://logicalread.com/sql-server-primary-key-vs-clustered-index-part-3-mb01/

SQL-сервер, SQL-выполнение плана,
Похожие вопросы