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

Откуда:
Сообщений: 82
Уважаемые коллеги,

Не могу понять, что происходит в системе. Перенесли базу с 2008 R2 на 2014 (SP2 12.0.5546), добавили к AlwaysOn. И стало медленнее. Один запрос отрабатывает за пару тройку секунд на 2008 и ползёт по 10-12 минут на новом. Память, CPU, диски (SSD) похоже не проблема.
Этот самый запрос начинает медленно выплёвывать данные по 100-150 записей. Во время выполнения IO низкое, никаких waittype в sys.dm_os_waiting_tasks, на сервере аномалий не видно. Индексы регулярно обрабатываем, чистил кэш DBCC FREEPROCCACHE (хеш запроса по sql_handle), всю базу DBCC FREESYSTEMCACHE ('<db name>'), обновлял статистику. Без толку, осталось перезапустить, но хочется понять да и вряд ли поможет.
В целом база работает медленнее немного, но этот запрос просто достал. Что ещё можно сделать/проверить?

Да, запрос постоянно сидит в RUNNABLE статусе, диск IO никакие, только CPUTime растёт как и предполагалось. Если запускаю на сервере, то такая же история.

Спасибо!
27 ноя 18, 08:51    [21745687]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
invm
Member

Откуда: Москва
Сообщений: 9123
sqluru
запрос постоянно сидит в RUNNABLE
Значит ждет процессорного ресурса.
Если, как пишите, с CPU проблем нет - смотрите в сторону настроек resource governor.
27 ноя 18, 10:12    [21745752]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
aleks222
Member

Откуда:
Сообщений: 855
[quot sqluru]но этот запрос просто достал. Что ещё можно сделать/проверить? /quot]

Боюсь показаться банальным, но самое эффективное - переписать запрос.

ЗЫ. Бить в бубен и ныть, канешно, проще. Но малопродуктивно.
27 ноя 18, 16:36    [21746324]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
step_ks
Member

Откуда:
Сообщений: 936
sqluru, при COMPATIBILITY_LEVEL=110 есть разница?
27 ноя 18, 16:56    [21746347]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
sqluru,

new CE 2014 problems
27 ноя 18, 17:00    [21746354]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
StarikNavy
Member

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

а план выполнения его на старом и на новом сервере одинаковы?
ну фраза " Индексы регулярно обрабатываем" не гарантирует что эти индексы нужные / используемые
27 ноя 18, 17:15    [21746375]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
sqluru
Member

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

Resource governor не используется.
28 ноя 18, 14:19    [21747403]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
sqluru
Member

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

Вроде бы никто не ныл, а коротко обрисовал картинку. Переписать запрос не самая умная идея, так как:

1. Работает прекрасно на старом сервере. Более того, на асинхронной реплике отрабатывает за 3-5 секунд
2. План выполнения тот же
3. Просто не представляется возможным так как это продукт компании, нам туда нельзя.

Сдаётся, что всё таки мозгов надо подкинуть серваку, но оно такое же работает (см. пунк 1).
28 ноя 18, 14:24    [21747408]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
sqluru
Member

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

Не могу поменять, оно уже на 120. На старом сервере база 3-месячной давности, не удалили в своё время. Но такой разницы быть не должно, данных добавилось не так много, планы выполнения такие же. Сервак перестартовывали.
28 ноя 18, 14:26    [21747412]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
sqluru
Member

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

Не подходит, мы давно на SP2, да и опять же на другом таком же работает как часы.
28 ноя 18, 14:28    [21747417]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
invm
Member

Откуда: Москва
Сообщений: 9123
sqluru
Да, запрос постоянно сидит в RUNNABLE статусе
sqluru
Resource governor не используется.
Еще раз - RUNNABLE означает, что процесс, обрабатывающий запрос, готов к выполнению, но нет процессорного ресурса для этого.
28 ноя 18, 14:41    [21747431]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
aleks222
Member

Откуда:
Сообщений: 855
sqluru
aleks222,

Вроде бы никто не ныл, а коротко обрисовал картинку. Переписать запрос не самая умная идея, так как:

1. Работает прекрасно на старом сервере. Более того, на асинхронной реплике отрабатывает за 3-5 секунд
2. План выполнения тот же
3. Просто не представляется возможным так как это продукт компании, нам туда нельзя.

Сдаётся, что всё таки мозгов надо подкинуть серваку, но оно такое же работает (см. пунк 1).


1. "Прекрасно" - это когда 1-2 мс (миллисекунды).
2. Чудес не бывает. Здесь не ясельки - сказки рассказывать не надо. На аналогичном оборудовании с одинаковым планом запросы выполняются одинаково.
3. Продолжайте ныть.

ЗЫ. Умелое переписывание запроса ускоряет его в сотни раз. Чего никаким наращиванием памяти такого не получить.
28 ноя 18, 14:47    [21747436]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
sqluru
Member

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

Как я написал ранее:

1. Работает прекрасно на старом сервере. Более того, на асинхронной реплике отрабатывает за 3-5 секунд вместо 13-15 минут.

При этом спецификация у них одинаковая 4 CPU core, по памяти 28 ГБ (этот медленный) против 10 ГБ (тут работает). Мистика, но видимо недостаток знаний.

Не могу понять, диск почти не работает, что подтверждается выплевыванием данных по 30-40 записей. При этом CPU выше 50-55% не поднимается. RUNNABLE status же намекает на процессор. Память тоже не причём, переиндексация и статистика каждую ночь, таблицы более менее статичные, растут понемногу (200-300 записей в неделю).
28 ноя 18, 14:50    [21747438]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
Количество переписанного при переезде с 2012-> 2014+ уже никто даже не считает, хотя все "Работает прекрасно на старом сервере."
28 ноя 18, 14:54    [21747449]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
Eleanor
Member

Откуда:
Сообщений: 2634
sqluru
При этом спецификация у них одинаковая…
RUNNABLE status же намекает на процессор

Случайно не забыли на новом сервере переставить Power Options в High Performance режим? Система может зажимать вам производительность процессора.
28 ноя 18, 14:57    [21747460]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
TaPaK
Количество переписанного при переезде с 2012-> 2014+ уже никто даже не считает, хотя все "Работает прекрасно на старом сервере."


+++
28 ноя 18, 14:59    [21747464]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
step_ks
Member

Откуда:
Сообщений: 936
sqluru
step_ks,
Не могу поменять, оно уже на 120.

Почему? Нет прав на alter database? Или БД занята?
28 ноя 18, 15:25    [21747517]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
sqluru
Member

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

Я конечно юмор понимаю и рад бы, но:

1. Работает прекрасно на старом сервере. Более того, на асинхронной реплике отрабатывает за 3-5 секунд

Асинхронная реплика тоже на 2014 SP2 - так что не уверен, что надо переписывать. Проблема на конкретном сервере.
28 ноя 18, 15:41    [21747536]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
sqluru
Member

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

Забыл, что можно теперь менять назад, но как ухе писал не раз:

1. Работает прекрасно на старом сервере. Более того, на асинхронной реплике отрабатывает за 3-5 секунд

А она 2014 и 120 compatibility. Надо рыть на сервере. Сейчас понял, что процессор поднимается где-то на 30% при работе этого запроса, но всё равно не до пика а около 70% на сервере. По идее, не конец света, но видимо тут собака порылась...
28 ноя 18, 15:44    [21747544]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
sqluru
Member

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

Спасибо, но вам скорее надо не на этот форум, а куда-нибудь по политике или семейным передрягам. Там такая лексика самое то.
28 ноя 18, 15:48    [21747546]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2375
sqluru
StarikNavy,
Как я написал ранее:
1. Работает прекрасно на старом сервере. Более того, на асинхронной реплике отрабатывает за 3-5 секунд вместо 13-15 минут.



блин. да, все мы наконец поняли что на старом сервере все хорошо. вы вобще читаете что вам пишут? или так и будете эту мантру про старый сервер повторять? что все таки с планами запросов?
28 ноя 18, 15:51    [21747551]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
step_ks
Member

Откуда:
Сообщений: 936
sqluru
step_ks,

Забыл, что можно теперь менять назад, но как ухе писал не раз:

1. Работает прекрасно на старом сервере. Более того, на асинхронной реплике отрабатывает за 3-5 секунд


Так мы же разбираемя не со старым и не с репликой.
28 ноя 18, 15:52    [21747554]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
sqluru
Member

Откуда:
Сообщений: 82
Для полности картины. На сервере работает AlwaysOn groups, относительно загружен. Но даже если перебрасываю всё на соседнюю реплику (synchronous), ситуация не меняется кардинально. Latency AlwaysOn 20-30 ms.

Спасибо всем за помощь, попробую CPU подкинуть.
28 ноя 18, 15:57    [21747561]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
sqluru
Member

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

Я же писал - 2. План выполнения тот же (на всех трёх).
28 ноя 18, 15:59    [21747566]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос на засыпку по медленному запросу  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
sqluru
StarikNavy,

Я же писал - 2. План выполнения тот же (на всех трёх).

Вы точно правильно их сравниваете? Актуальные сравниваете?
28 ноя 18, 16:00    [21747569]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить