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

Проблемы

Рассмотрим следующий сценарий.

  • У вас есть таблица, в которой есть кластеризованные индексы columnstore, а в таблице — большое количество столбцов (в сотнях).

  • Данные (тип данных) этих столбцов являются весьма compressible данными, например varchar.

  • Для выбора большого набора или всех столбцов из этой таблицы выполняйте инструкцию SELECT в этой таблице.

  • У оператора SELECT есть предложение WHERE , которое ограничивает вывод для него очень небольшим количеством строк (запрос очень избирательен).

В этом случае вы можете столкнуться со следующими симптомами:

  • Параллельная рабочая нагрузка (другие запросы, которые выполняются одновременно на сервере в качестве этого запроса) может привести к снижению производительности и потере пропускной способности.

  • Вы можете наблюдать за периодическим использованием ЦП.

  • Если вы запрашиваете sys.dm_os_ring_buffers и просматривать записи типа SchedulerMonitor , вы обнаружите временные сообщения планировщика, не связанные с выведением, которые регистрируются во время выполнения этого запроса.

  • Может возникнуть ошибка планировщика, не выдается в журнале ошибок, и может быть создан файл дампа памяти симптома.

Решение

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

Все новые накопительные обновления для SQL Server содержат все исправления и все исправления для системы безопасности, которые были включены в предыдущий накопительный пакет обновления. Мы рекомендуем вам загрузить и установить последние накопительные обновления для SQL Server.

Дополнительная информация

Исправление данныхРаботники, которые обрабатывают сегменты столбцов (изменяя их и проверяя для них подходящих строк), использовали для "yield" загрузку ЦП другим сотрудникам и параллельным выполнениям запросов при выводе определенного порогового числа строк. Если предложение WHERE очень сильно настроило несколько строк, работники, образующие этот запрос, обрабатывали несжатые и большое количество сегментов (так как в этом случае требуется очень мало строк), прежде чем они задали ЦП, чтобы другие работники могли обработать свою рабочую нагрузку. Это привело к нерегулярной загрузке ЦП и снижению производительности для параллельной рабочей нагрузки. Исправление оптимизирует и улучшает алгоритм общего использования ЦП для таких запросов columnstore.

Ссылки

Ознакомьтесь с терминологией , которую корпорация Майкрософт использует для описания обновлений программного обеспечения.

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

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

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