Перейти до основного
Підтримка
Вхід
Вхід за допомогою облікового запису Microsoft
Увійдіть або створіть обліковий запис.
Вітаємо,
Виберіть інший обліковий запис.
У вас є кілька облікових записів
Виберіть обліковий запис, за допомогою якого потрібно ввійти.

Ознаки

У Microsoft SQL Server 2016 або SQL Server 2017 в ОС Windows продуктивність може знизитися за таких умов:

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

  • Коли ви запитуєте sys.dm_os_waiting_tasks. У цій ситуації у стовпці resource_description відображає очікування на сторінці сторінки вільного простору (PFS) для кількох запитів.

Причина

Паралелізм INSERT для операцій INSERTSELECT введено в SQL Server 2016 або SQL Server 2017 у Windows. InSERTs into localtemporary tables (only those identified by the # prefix, and not global temporary tables identified by ## prefixes) are now automatically enabled for parallelism without having to designate the TABLOCK hint that non-temporary tables require. 

Хоча паралелізм INSERT зазвичай покращує продуктивність запитів, якщо існує значна кількість одночасних операцій INSERTSELECT тимчасової таблиці, суперечки можуть бути значними для сторінок PFS. У деяких випадках це може призвести до загального зниження продуктивності.

Спосіб вирішення

Цю проблему вперше вирішено в SQL Server 2016 із пакетом оновлень 1. Застосувавши SQL Server 2016 із пакетом оновлень 1 (SP1), паралельні INSERTs у insert.. Параметр SELECT для локальних тимчасових таблиць вимкнуто за замовчуванням, що зменшує кількість суперечок на сторінці PFS і покращує загальну продуктивність одночасного навантаження. Якщо потрібно використовувати паралельні inSERTs із локальними тимчасовими таблицями, користувачам слід використовувати підказку TABLOCK під час вставлення в локальну тимчасову таблицю.

Якщо ввімкнуто позначку трасування 9495, згадану в розділі способи вирішення, рекомендовано вимкнути та видалити позначку трасування після застосування SQL Server 2016 sp1 як позначка трасування 9495 вимикає паралельне вставлення незалежно від підказки TABLOCK.

Сукупні відомості про оновлення

Цю проблему вирішено в сукупному пакеті оновлень для SQL Server 2016:

Про сукупні оновлення для SQL Server

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.

Спільноти допомагають ставити запитання й відповідати на них, надавати відгуки та дізнаватися думки висококваліфікованих експертів.

Чи ця інформація була корисною?

Наскільки ви задоволені якістю мови?
Що вплинуло на ваші враження?
Натиснувши кнопку "Надіслати", ви надасте свій відгук для покращення продуктів і служб Microsoft. Ваш ІТ-адміністратор зможе збирати ці дані. Декларація про конфіденційність.

Дякуємо за відгук!

×