Проблема
Рассмотрим следующий сценарий.
- В Microsoft SQL Server 2016 выполняется запрос, использующий функцию обработчика запросов SQL Server 2016. Например, оператор СОРТ выполняется в пакетном режиме.
- Наблюдается снижение производительности запросов по сравнению с выполнением того же оператора SORT в режиме строки.
- Чтобы устранить эту проблему, попробуйте включить флаг трассировки 9347 на уровне сеанса или используйте QUERYTRACEON. Это делается для отключения пакетной сортировки.
В этом сценарии оператор SORT по-прежнему выполняется в пакетном режиме и игнорирует флаг трассировки уровня сеанса или запроса.
Решение
В SQL Server 2016 можно использовать флаг трассировки 9347, чтобы операторы SORT выполнялись в режиме строк, а не в пакетном. После применения накопительного пакета обновления 1 для SQL Server 2016 можно включить флаг трассировки 9347 на уровне сеанса или запроса.
Вы также можете включить этот флаг трассировки глобально на уровне сервера, сеанса или запроса.
Примечание. Неправильное использование флагов трассировки может привести к снижению производительности рабочей нагрузки.
Дополнительные сведения см. в разделе "Введение" следующей статьи базы знаний Майкрософт:
2801413 Включить влияющее на план поведение оптимизатора SQL Server запросов, которым можно управлять с помощью различных флагов трассировки на уровне конкретного запроса
Состояние
Корпорация Майкрософт подтвердила, что это проблема продуктов Microsoft, перечисленных в разделе «Относится к».
Ссылки
Узнайте о терминологии, используемой корпорацией Майкрософт для описания обновлений программного обеспечения.