Я только что выполнил запрос T-SQL через DTA, и одна из рекомендаций - СОЗДАТЬ СТАТИСТИКУ на одном из столбцов, который является частью многих запросов в файле кода SQL.
Мой вопрос, как именно статистика помогает в производительности?
Я только что выполнил запрос T-SQL через DTA, и одна из рекомендаций - СОЗДАТЬ СТАТИСТИКУ на одном из столбцов, который является частью многих запросов в файле кода SQL.
Мой вопрос, как именно статистика помогает в производительности?
Ответы:
статистика используется при создании плана выполнения запроса.
Статистика для оптимизации запросов - это объекты, которые содержат статистическую информацию о распределении значений в одном или нескольких столбцах таблицы или индексированного представления. Оптимизатор запросов использует эту статистику для оценки количества элементов или количества строк в результате запроса. Эти оценки количества элементов позволяют оптимизатору запросов создавать высококачественный план запросов. Например, оптимизатор запросов может использовать оценки количества элементов для выбора оператора поиска по индексу вместо более ресурсоемкого оператора сканирования индекса, что повышает производительность запросов.
См. Http://msdn.microsoft.com/en-us/library/ms190397.aspx для получения дополнительной информации.
Если DTA рекомендует использовать статистику по одному столбцу, необходимо автоматически отключить создание статистики? Автоматическое создание автоматически создает статистику по любому столбцу, используемому в предикате, поэтому обычно рекомендуется оставлять его включенным. Проверьте состояние автоматического обновления для этой базы данных, которое обычно должно быть включено.
Одно из лучших применений DTA - это определение недостающей многостолбцовой статистики, которую не создаст автоматическое создание. Но для одной колонки, автоматическое создание должно заботиться о них за вас.