KB2926223 - ИСПРАВЛЕНО: в средах NUMA возникают проблемы с производительностью при обработке внешних страниц в SQL Server 2012 или SQL Server 2014

Применяется к
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Express SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Проблема

В средах NUMA Microsoft SQL Server испытывает одну или несколько из следующих проблем с производительностью:

  • В процессе SQL Server наблюдается чрезмерная загрузка ЦП.
  • Выполнение запросов занимает много времени.
  • Приложения или задания агента SQL Server сталкиваются с превышением времени ожидания запроса или временем ожидания подключения.
  • Процесс SQL Server перезапускается службой кластеров.

Кроме того, вы можете столкнуться со следующими симптомами:

  • Значения с повышенными привилегиями для типа ожидания SOS_PHYS_PAGE_CACHE при запросе sys.dm_os_wait_stats динамического административного представления (DMV)
  • Повышенные значения для типа ожидания CMEMTHREAD и SOS_SUSPEND_QUEUE spinlock при запросе sys.dm_os_spinlock_stats DMV

Решение

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

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

Накопительный пакет обновления 2 для SQL Server 2014 г. /en-us/help/2967546

Накопительный пакет обновления 1 для SQL Server 2014 г. /en-us/help/2931693

Накопительный пакет обновления 9 для SQL Server 2012 с пакетом обновления 1 (SP1) /en-us/help/2931078

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

Каждый новый накопительный пакет обновления для SQL Server содержит все исправления и исправления безопасности, которые входили в состав предыдущего накопительного пакета обновления. Ознакомьтесь с последними накопительными пакетами обновления для SQL Server:

      

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

Если исправление доступно для скачивания, в верхней части этой статьи базы знаний отобразится раздел "Доступно скачивание исправления". Если этот раздел не отображается, отправьте запрос в службу поддержки пользователей Майкрософт, чтобы получить исправление.

Примечание Если возникнут дополнительные проблемы или потребуется их устранение, может потребоваться создать отдельный запрос на обслуживание. Обычно техническая поддержка оплачивается за решение дополнительных вопросов и проблем, не подпадающих под это исправление. Полный список телефонных номеров службы поддержки и обслуживания клиентов Майкрософт или создание отдельного запроса на обслуживание см. на следующем веб-сайте Майкрософт:

/contactus/?ws=support Примечание. В форме "Доступно скачивание исправления" указаны языки, для которых доступно исправление. Если вы не видите свой язык, это означает, что для него недоступно исправление.

Важно! Это исправление рекомендуется для любого экземпляра SQL Server, установленного в системе NUMA, независимо от параметров маски сходства SQL Server. Это исправление устраняет узкое место производительности обработки AWAY в диспетчере памяти SQL Server.
Эта проблема была впервые исправлена в следующем накопительном пакете обновления SQL Server.

Временное решение

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

Примечание. Действие этого обходного решения может быть ограничено. Мы рекомендуем применить исправление для устранения проблем, описанных в разделе "Симптомы".

Состояние

Корпорация Майкрософт подтвердила, что это проблема продуктов Microsoft, перечисленных в разделе «Относится к».

Дополнительные сведения

Когда диспетчер памяти Microsoft SQL Server выделяет память для узла в средах с поддержкой неоднородного доступа к памяти (NUMA), Windows может выделять память как на локальных, так и на удаленных узлах (называемых «выездными» или «чужими» страницами) до тех пор, пока не будет достигнут желаемый конечный результат для каждого узла. Поскольку эти «Отсутствующие страницы» не идеальны с точки зрения производительности, процесс SQL Server пытается назначить буферы «Отсутствующие» соответствующему узлу памяти или освободить эти страницы обратно в операционную систему. Эта «обработка AWAY» может быть интенсивной для ЦП и привести к снижению скорости партии в период повышенной загрузки ЦП.

Ссылки

Дополнительные сведения о том, как понять концепцию иностранных страниц, см. на следующей записи блога MSDN:

Как это работает: SQL Server (локальные NUMA, внешние блоки и блоки удаленной памяти)