Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Частичное обновление статистики  [new]
selis76
Member

Откуда:
Сообщений: 387
Есть база в которую каждый день грузятся операции, и по ним формируются проводки т.е. идет много изменений. Иногда производится пересчет за месяц или квартал. Но в любом случае данные меняются на квартал назад и не более. Т.е. прошлые годы не меняются.
Статистика обновляется через Maintance Task в режиме Full scan как All existing statiscs. На нашу пол терабайтную базу время получается 20 минут.
Делается это в середине дня. Но база растет и хочется чтобы статистика обновлялась чаще и быстрее.
Вопрос а можно ли обновлять это частично?
Параметр Autoupdate statistics у базы включен но как я понимаю он не гарантирует обновление статистики когда удалилось и вставилось большое число записей. Читал тут http://www.sqlskills.com/blogs/erin/understanding-when-statistics-will-automatically-update/
Возможно ли заставить SQL сервер пересчитывать не всю статистику а только по тем записям которые вставились, изменились?
Режим скана по количеству строк\проценту как понимаю не учитывает этот нюанс.

Сергей С
7 май 14, 20:13    [15987651]     Ответить | Цитировать Сообщить модератору
 Re: Частичное обновление статистики  [new]
invm
Member

Откуда: Москва
Сообщений: 9823
Инкрементальная статистика появилась только в SQL Server 2014.
7 май 14, 20:38    [15987768]     Ответить | Цитировать Сообщить модератору
 Re: Частичное обновление статистики  [new]
selis76
Member

Откуда:
Сообщений: 387
invm,
печально :( у меня 2008r2
а какие обходные пути использовали до SQL 2014?
7 май 14, 20:41    [15987783]     Ответить | Цитировать Сообщить модератору
 Re: Частичное обновление статистики  [new]
invm
Member

Откуда: Москва
Сообщений: 9823
selis76,

Статистику нужно обновлять не "чаще и быстрее", а когда необходимо.
Если не обновлять в середине дня - что происходит?
7 май 14, 20:50    [15987833]     Ответить | Цитировать Сообщить модератору
 Re: Частичное обновление статистики  [new]
selis76
Member

Откуда:
Сообщений: 387
invm
selis76,

Статистику нужно обновлять не "чаще и быстрее", а когда необходимо.
Если не обновлять в середине дня - что происходит?

Ну если ктото вздумает пересчитать квартал (хотя это нечасто бывает но бывает), то получение отчетов может замедлится - видно что запросы начинают по другому плану идти. К сожалению хинтами влиять не может так как это 1С, а автоапдейт статистики живет своей жизнью
7 май 14, 22:50    [15988202]     Ответить | Цитировать Сообщить модератору
 Re: Частичное обновление статистики  [new]
invm
Member

Откуда: Москва
Сообщений: 9823
selis76
К сожалению хинтами влиять не может так как это 1С
Можно попробовать прикрутить хинты через plan guide
selis76
автоапдейт статистики живет своей жизнью
Trace Flag 2371 to Control Auto update Statistics threshold and behavior in SQL Server
7 май 14, 23:35    [15988367]     Ответить | Цитировать Сообщить модератору
 Re: Частичное обновление статистики  [new]
NickAlex66
Member

Откуда:
Сообщений: 319
selis76,

Можно посмотреть в сторону секционирования. Тогда статистику тужно обновлять не на всей табл, а только на тех секциях, что активно обновлялись. Тогда получится чаще, частично и быстрее.
8 май 14, 00:55    [15988527]     Ответить | Цитировать Сообщить модератору
 Re: Частичное обновление статистики  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
NickAlex66
Тогда статистику тужно обновлять не на всей табл, а только на тех секциях, что активно обновлялись.

как уже писали выше, все эти фишки появились только в SQL Server 2014...
тут может помочь топикстартеру статистика с условием
8 май 14, 08:51    [15988870]     Ответить | Цитировать Сообщить модератору
 Re: Частичное обновление статистики  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8804
Хорошо подумайте, так ли необходимо выполнять полное сканирование и всех таблиц базы для начала.
8 май 14, 11:09    [15989744]     Ответить | Цитировать Сообщить модератору
 Re: Частичное обновление статистики  [new]
Crimean
Member

Откуда:
Сообщений: 13147
а фулскан-то вам зачем?? ну а про ТФ 2371 уже сказали - читайте. вот альтернативное чтиво
http://blogs.msdn.com/b/saponsqlserver/archive/2011/09/07/changes-to-automatic-update-statistics-in-sql-server-traceflag-2371.aspx
8 май 14, 11:40    [15990007]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить