powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Query Store
24 сообщений из 24, страница 1 из 1
Query Store
    #39855409
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Неоднократно сталкивался, что Query Store (QS) серьезно переходит лимит по размеру. Скажем установленно 2Гб, а он в легкую разбухает до 5Гб. И вроде бы ничего страшного если бы после этого он не начинал чиститься ну очень долго (и как обычно не во время). И при этом потребляет до 30-50% CPU.
И самое противное, что этот процесс не остановить, т.к. чистка происходит под системыми сессиями (<50) и убивать такую сессию как то не с руки. В течение этого процесса (если точнее сам процесс чистки состоит из нескольких подпроцессов, тут четкости от Майрософта нет) что либо (к примеру перевод в оффлайн или удаление всех данных) сделать с QS не возможно, блокируется.

У кого-либо есть инфа почему лимит размера не соблюдается строго?

Версия: 13.0.5337.0.
...
Рейтинг: 0 / 0
Query Store
    #39855423
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idol_111,

SIZE_BASED_CLEANUP_MODE
Определяет, будет ли автоматически активирована очистка, когда общий объем данных приблизится к верхней границе ограничения. Может иметь значение AUTO (по умолчанию) или OFF.
...
Рейтинг: 0 / 0
Query Store
    #39856142
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик,

я не совсем понял, что вы хотели сказать. Если Вы спрашиваете в каком режиме у меня работает QS, то это AUTO в большинстве случаев.
Прочитайте внимательно мой топик.
...
Рейтинг: 0 / 0
Query Store
    #39856143
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это конечно, лишь мои предположения, но считаю нужным поделиться.

Похоже, что чистка начинает сбоить, когда совпадают два вида чистки: по размеру и по дате.
Сам процесс чистки состоит (это лишь мои догадки, т.к. документации/инфы на эту тему ноль) из нескольких подпроцессов. И при определенных условиях один тип чистки блокирует другой на довольно продолжительное время (часы).
...
Рейтинг: 0 / 0
Query Store
    #39856151
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
единственное что смог найти близкое на эту тему.
...
Рейтинг: 0 / 0
Query Store
    #39857645
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Неплохая статья по теме топика с полезными ссылками.
И не большая дискуссия в комментариях, проливащая свет на многие вопросы по топику.
...
Рейтинг: 0 / 0
Query Store
    #39857663
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idol_111,

Я намекнул, что авточистку можно отключить
...
Рейтинг: 0 / 0
Query Store
    #39892683
Danion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Включена авто очистка, срок хранения 3 дня. Но за 2 дня забиваются выделенные 10 ГБ и переходит в режим Read Only.
В отчётах данных старше 3 дней нет, но и свежих (после первого достижения максимального размера) тоже нет. Чем забивается место при очистке данных старше 3 дней не ясно.
Версия 17 CU17 Enterprise.
Ещё раздражает, что при изменении параметров вешает цепочки блокировок.

Кто-то сталкивался с подобным?
...
Рейтинг: 0 / 0
Query Store
    #39892844
Фотография Александр Гладченко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В 2016/17 QDS - это зло, если есть возможность не использовать - не используйте. Его клинит с другими "чёрными ящиками" - FTS, AO, CDC... Если пришлось включать, под хранение выделяйте место с огроменным запасом, ну, скажем гигов 100, храните же минимум дней, плюс повключаейте все те настройки и флаги, что нагуглите...
В общем, это один из элементов экстрима в головах разработчиков скуля :( ...хотя наживка очень на вид заманчивая...
...
Рейтинг: 0 / 0
Query Store
    #39892905
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня он по кругу тоже не работал, после заполнения переходил в состояние остановки сбора. Может настройки какие поковырять...
...
Рейтинг: 0 / 0
Query Store
    #39892931
Danion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Жаль конечно, возможности у него интересно расписаны и пару дней нормально то работает. Для кривых запросов, которые пока поправить нельзя - опция force plan помогает выбрать хотя бы более удачный план.
А вот гигантские размеры при его возможности вешать блокировки на пользовательские запросы (при изменении параметров или обнулении истории) я не рискну ставить. Он сейчас при 10 ГБ висит минуты 2 намертво, а при 100 ГБ...
...
Рейтинг: 0 / 0
Query Store
    #39893713
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Danion
Жаль конечно, возможности у него интересно расписаны и пару дней нормально то работает. Для кривых запросов, которые пока поправить нельзя - опция force plan помогает выбрать хотя бы более удачный план.
А вот гигантские размеры при его возможности вешать блокировки на пользовательские запросы (при изменении параметров или обнулении истории) я не рискну ставить. Он сейчас при 10 ГБ висит минуты 2 намертво, а при 100 ГБ...

Вы статьи, которые я дал, и комментарии к ним читали?
Там все описанно про блокировки и как их избежать.
...
Рейтинг: 0 / 0
Query Store
    #39893715
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр Гладченко
В 2016/17 QDS - это зло, если есть возможность не использовать - не используйте. Его клинит с другими "чёрными ящиками" - FTS, AO, CDC... Если пришлось включать, под хранение выделяйте место с огроменным запасом, ну, скажем гигов 100, храните же минимум дней, плюс повключаейте все те настройки и флаги, что нагуглите...
В общем, это один из элементов экстрима в головах разработчиков скуля :( ...хотя наживка очень на вид заманчивая...

Не согласен. В слепую ставить конечно нельзя, но вещь крайне эффективная.

Как везде и написанно, наиболее опасно ставить где куча запросов ad-hoc.
Нельзя доводить систему до состояния, когда ей надо чиститься из-за переполнения по размеру, по дате - без проблем.
Именно когда она начинает чиститься по размеру и происходят блокировки (см. статьи наверху) при попытке чего-то изменить. В этом случае ее трогать нельзя.

Опишу один мой случай, который показывает все это в красках.
Терабайтная OLTP база, к которой обращение в основном типа ad-hoc. К тому же какие-то уроды закодили часть параметров прямо в скрипт. Т.е. для сервера это каждый раз разные запросы, и они тяжелые, т.е. попадают в QS.
Максимально удавалось хранить 3-4 дня и занимало это все до 12Гб и около 700000 запросов.
После продолжительных баданий разработчик пофиксил лишь один запрос (на котором я настаивал). Итог: размер рухнул до 30Мб, 30000 запросов. И после этого уже смог увеличить хранение до месяца при стабильном размере 3Гб.

QS очень помогает оперативно привести в чувство тяжелый запросы, используя force plan.
Грузит сервер менее 1%.

Короче, не нарадуюсь. Это еще без статистики, т.к. пока на 2016.
...
Рейтинг: 0 / 0
Query Store
    #39893717
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idol_111
Это еще без статистики, т.к. пока на 2016.

хотел написать - без ожиданий.
...
Рейтинг: 0 / 0
Query Store
    #39893766
Danion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Idol_111,

Ссылки смотрел:
Yes, Query Store can struggle in an ad hoc workload. Changing ANY Query Store requires a lock over the Query Store database object, which can block other Query Store background tasks over that database. So yes, any changes should be made when the system is not busy, and yes, you should have the catpure mode set to AUTO.
Там как раз написано, что такие блокировки данность хранилища и с ними ничего не сделаешь. Рекомендация производить изменения при минимуме нагрузки.
...
Рейтинг: 0 / 0
Query Store
    #39893778
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может стоит поработать над параметризацией запросов
...
Рейтинг: 0 / 0
Query Store
    #39893785
Danion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
a_voronin,

Это да, как и у Idol_111 есть одни и те же запросы, которые сервер считает разными. Сейчас проверил - часть запросов о которых писал разработчики поправили, часть нет.
...
Рейтинг: 0 / 0
Query Store
    #39894199
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Danion

Там как раз написано, что такие блокировки данность хранилища и с ними ничего не сделаешь. Рекомендация производить изменения при минимуме нагрузки.

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

Смотреть надо лишь на подобную команду:
Task State Command Total CPU (ms) Elapsed Time (in Sec)RUNNING QUERY STORE SIZE BASED CLEANUP 28860185 32304.432000
Если оно висит, то трогать QS бесполезно.
Какая при этом нагрузка без разницы.
...
Рейтинг: 0 / 0
Query Store
    #39894211
Фотография Александр Гладченко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Query Store
    #39894231
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр Гладченко

Эх, где ж Вы раньше были :) , в июле августе.

Помню пробовал что-то делать с SET DEADLOCK_PRIORITY HIGH, но детали уже не упомню. У меня не сработало.
...
Рейтинг: 0 / 0
Query Store
    #39894242
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idol_111
Эх, где ж Вы раньше были :)
Это же полная очистка, а изначально вы, как я понял, вели речь о стандартной очистке, которая поддерживает некий заданный размер, и которая делается (внутри) командами DELETE?
...
Рейтинг: 0 / 0
Query Store
    #39894267
Danion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Idol_111,

"Это не данность хранилища. Это косяк/особенность процесса чистки по размеру. Этот процесс может занимать слишком много времени (часы), и лишь это проблема - длительность этого процесса."

Так я не про блокировки во время очистки по размеру. Эта очистка вообще не хочет работать. У меня любое изменение параметров хранилища вызывает блокировки. Большинство короткие, типа увеличить размер хранилища, увеличить срок хранения. А вот отключение чистки по размеру где-то минуты на 3 всё повесило.

Пока оставлю сбор данных включенным и буду смотреть в сторону уменьшения количества запросов с разницей в переменной.
...
Рейтинг: 0 / 0
Query Store
    #39895310
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvg
Idol_111
Эх, где ж Вы раньше были :)
Это же полная очистка, а изначально вы, как я понял, вели речь о стандартной очистке, которая поддерживает некий заданный размер, и которая делается (внутри) командами DELETE?
Александр просто привел вариант, как можно убить чистку по размеру без перезагрузки сервера.
...
Рейтинг: 0 / 0
Query Store
    #39895312
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Danion
Эта очистка вообще не хочет работать.

тут я не понял.
Danion
У меня любое изменение параметров хранилища вызывает блокировки.

А это не нормально. Никогда не встречал чтобы кто-нибудь жаловался на это.
Вы проверьте, что блокирует и тогда будет что обсудить.
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Query Store
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]