Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Проблемы

В Microsoft SQL Server 2016 или SQL Server 2017 в Windows производительность может снизиться при следующих условиях:

  • При выполнении нескольких одновременных операций INSERTSELECT во временных таблицах.

  • При запросе sys.dm_os_waiting_tasks. В этом случае в столбце resource_description отображаются ожидания на страницах PFS для нескольких запросов.

Причина

Параллелизм INSERT для операций INSERTSELECT появился в Windows SQL Server 2016 г. или SQL Server 2017 г. InSERT в локальных временных таблицах (только те, которые определены префиксом #, а не глобальные временные таблицы, определяемые префиксами ##) теперь автоматически включаются для параллелизма без указания указания TABLOCK, необходимого для не временных таблиц. 

Хотя параллелизм INSERT обычно повышает производительность запросов, при наличии значительного числа параллельных операций с временной таблицей INSERTSELECT состязание может быть значительным на страницах PFS. В некоторых случаях это может привести к общему снижению производительности.

Решение

Эта проблема впервые устранена в SQL Server 2016 с пакетом обновления 1 (SP1). После применения SQL Server 2016 с пакетом обновления 1 (SP1) в INSERT.. По умолчанию функция SELECT to local temporary tables отключена, что сокращает количество состязаний на странице PFS и повышает общую производительность параллельной рабочей нагрузки. Если требуется параллелизм INSERT с локальными временными таблицами, пользователи должны использовать подсказку TABLOCK при вставке в локальную временную таблицу.

Если вы включили флаг трассировки 9495, упомянутый в разделе обходного решения, рекомендуется отключить и удалить флаг трассировки после применения SQL Server 2016 с пакетом обновления 1 (SP1), так как флаг трассировки 9495 отключает параллельную вставку независимо от указания TABLOCK.

Сведения о накопительном пакете обновления

Эта проблема была исправлена в следующем накопительном обновлении для SQL Server 2016 г.:

Сведения о накопительных обновлениях для SQL Server

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×