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

Откуда:
Сообщений: 17
Здравствуйте, прошу помочь разобраться.

Есть запрос, который динамически генерируется. Различие в запросах в основном в том что имя таблицы временной другое, оно завязно на spid сессии.

Запрос довольно большой и почти весь он выполняется в темпдб.

Время выполнения обычно около секунды, но иногда он выполняется по часу и более.
26 сен 17, 11:50    [20823269]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
андрей.е,

ну так фаза луны, не иначе
26 сен 17, 11:50    [20823271]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
Настроил логгирование его плана раз в 1 минутк, с помошью sys.db_exec_query_plan(plan_hendle)

Но там почти все время null вместо плана, точнее раз в 10 минут только план есть
26 сен 17, 11:56    [20823288]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
iap
Member

Откуда: Москва
Сообщений: 46977
андрей.е
имя таблицы временной другое, оно завязно на spid сессии
Это зачем такой фокус?
И как оно "завязано"?
26 сен 17, 11:58    [20823295]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
Подскажите как можно стабилизировать быстрое выполнение запроса, который почти полностью из временных таблиц?
26 сен 17, 11:58    [20823296]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
iap
андрей.е
имя таблицы временной другое, оно завязно на spid сессии
Это зачем такой фокус?
И как оно "завязано"?


Там глобальные временные таблицы
26 сен 17, 11:58    [20823299]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
андрей.е
Подскажите как можно стабилизировать быстрое выполнение запроса, который почти полностью из временных таблиц?

выяснить почему разное время выполнения
26 сен 17, 11:59    [20823301]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
Чтобы имена в пределах еоннекта уникальные были
26 сен 17, 11:59    [20823303]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
TaPaK
андрей.е
Подскажите как можно стабилизировать быстрое выполнение запроса, который почти полностью из временных таблиц?

выяснить почему разное время выполнения


План, когда за секунду выполняется достать не получается 😞
26 сен 17, 12:00    [20823309]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
андрей.е,

если глобальная таблица, то там может и не в планах дело, а в блокировках. Ну и любой план получить не проблематично
26 сен 17, 12:02    [20823314]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
Тут еще темп дб не на физическом диске, а на виртуальном, который в оперативной памяти находится.
26 сен 17, 12:07    [20823332]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
iap
Member

Откуда: Москва
Сообщений: 46977
андрей.е,

PRINT @@VERSION что вернёт?
26 сен 17, 12:08    [20823333]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
TaPaK
андрей.е,

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




Блокировки отсутствуют, я их мониторю ккждую минуту в том же скрипте, который план возвращает.
26 сен 17, 12:09    [20823338]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
андрей.е
Тут еще темп дб не на физическом диске, а на виртуальном, который в оперативной памяти находится.

ну так ожидания посмотрите
26 сен 17, 12:10    [20823343]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 3708
iap
андрей.е,

PRINT @@VERSION что вернёт?


зачем же так? здесь обсуждение вообще некоего запроса, который то быстро, то медленно выполняется
26 сен 17, 12:17    [20823363]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
Dmitry V. Liseev
Member [заблокирован]

Откуда: Санкт-Петербург
Сообщений: 5490
Ролг Хупин
iap
андрей.е,

PRINT @@VERSION что вернёт?


зачем же так? здесь обсуждение вообще некоего запроса, который то быстро, то медленно выполняется
Автор приложил для этого максимум усилий. На временных таблицах скорее всего ни индексов, ни констрейнов, ни структуры. Потому нет статистики. Оптимизатор творит, что хочет. Эти временные таблицы сделаны глобальными, чтобы максимизировать вероятность блокировок. А диск с tempdb сделан виртуальным (возможно, речь о RAM-диске), чтобы данные постоянно вываливались в своп.
26 сен 17, 12:33    [20823436]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
TaPaK
андрей.е
Тут еще темп дб не на физическом диске, а на виртуальном, который в оперативной памяти находится.

ну так ожидания посмотрите


К сообщению приложен файл. Размер - 16Kb
26 сен 17, 12:33    [20823437]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
андрей.е
TaPaK
пропущено...

ну так ожидания посмотрите

нунафиг, хрустальный шар разбит
26 сен 17, 12:37    [20823452]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
TaPaK
андрей.е
пропущено...

нунафиг, хрустальный шар разбит


Это значения из суспроцессес для сессии, в которой запрос выполняется около часа, непосредстаенно во время выполнения запроса.
26 сен 17, 12:39    [20823458]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
андрей.е,

пиши OPTION(RECOMPILE) и иди с миром
26 сен 17, 12:44    [20823483]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
Dmitry V. Liseev
Ролг Хупин
пропущено...


зачем же так? здесь обсуждение вообще некоего запроса, который то быстро, то медленно выполняется
Автор приложил для этого максимум усилий. На временных таблицах скорее всего ни индексов, ни констрейнов, ни структуры. Потому нет статистики. Оптимизатор творит, что хочет. Эти временные таблицы сделаны глобальными, чтобы максимизировать вероятность блокировок. А диск с tempdb сделан виртуальным (возможно, речь о RAM-диске), чтобы данные постоянно вываливались в своп.


Индексов и констрентов там и правда нет, а что за структуру вы имели ввиду?

Правельно ли я понял что создание индексов на временных таблицах стабилизирует оптимизатор?
26 сен 17, 12:44    [20823485]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
TaPaK
андрей.е,

пиши OPTION(RECOMPILE) и иди с миром
спасибо, читаю про эту опцию.
26 сен 17, 12:46    [20823490]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
андрей.е,

ну прикидываясь гадалкой, у вас 5 потоков ждут 6й, что соответсвует не правильной оценке из за отсутсвия всего что бы могло помочь
26 сен 17, 12:47    [20823493]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
андрей.е
Member

Откуда:
Сообщений: 17
TaPaK
андрей.е,

ну прикидываясь гадалкой, у вас 5 потоков ждут 6й, что соответсвует не правильной оценке из за отсутсвия всего что бы могло помочь


Recompile тут значит не поможет?
26 сен 17, 12:50    [20823502]     Ответить | Цитировать Сообщить модератору
 Re: Запрос выполняется то секунду то час  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
андрей.е
TaPaK
андрей.е,

ну прикидываясь гадалкой, у вас 5 потоков ждут 6й, что соответсвует не правильной оценке из за отсутсвия всего что бы могло помочь


Recompile тут значит не поможет?

почему же, поможет. Но логичнее правильный индекс
26 сен 17, 12:51    [20823508]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить