Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Александр Шелёмин «SQL Server Performance 101»

DotNetRu
December 03, 2016

Александр Шелёмин «SQL Server Performance 101»

Как бы нам ни хотелось верить в то, что оптимизатор запросов всегда сделает всё сам, на практике нередко возникают ситуации, когда для того, чтобы добиться нужной производительности, нам приходится лезть во внутренности сервера баз данных.

В докладе мы поговорим о практических подходах к анализу перформанса SQL Server: профилировании и Extended Events, чтении планов выполнения и о том, о каких фичах SQL Server не стоит забывать в борьбе за производительность.

DotNetRu

December 03, 2016
Tweet

More Decks by DotNetRu

Other Decks in Programming

Transcript

  1. SQL Server Performance Оптимизация баз данных: ◦ Очень обширная область:

    сотни книг, блогов, курсов и т.д. ◦ Требует хорошего понимания архитектуры СУБД, логики работы оптимизатора
  2. SQL Server Performance Оптимизация баз данных: ◦ Очень обширная область:

    сотни книг, блогов, курсов и т.д. ◦ Требует хорошего понимания архитектуры СУБД, логики работы оптимизатора ◦ Скорее всего, нужна и интересна не всем
  3. SQL Server Performance С другой стороны, излишнее упрощение ◦ Не

    дает понимания происходящего ◦ Дает в лучшем случае однократный результат
  4. Историческая справка ◦ Edgar Codd 1970 – реляционная алгебра ◦

    Chamberlin/Boyce 1974 - SQL ◦ Patricia Selinger 1979 – оптимизатор запросов
  5. Execution plans Дают информацию о том, как выполняется запрос: ◦

    Какие индексы используются ◦ Какие физические операторы используются
  6. Execution plans Дают информацию о том, как выполняется запрос: ◦

    Какие индексы используются ◦ Какие физические операторы используются ◦ Как оптимизатор оценивает объем данных, передаваемых между операторами
  7. Execution plans Дают информацию о том, как выполняется запрос: ◦

    Какие индексы используются ◦ Какие физические операторы используются ◦ Как оптимизатор оценивает объем данных, передаваемых между операторами
  8. Grant Fritchey – SQL Server Execution Plans Itzik Ben-Gan –

    T-SQL Querying Paul White SQL Server Blogs