Включить параллельную обработку запросов в базе данных SQL Azure - PullRequest
0 голосов
/ 12 ноября 2018

Кто-нибудь знает, как включить параллельную обработку запросов в базе данных SQL Azure.Я пытаюсь отладить некоторые запросы, которые выполняются приемлемо на моем ноутбуке (SQL Server 2017), но очень медленно в Azure SQL DB.Уровень цен для базы данных Azure - стандартный S2: 50 DTU.Единственное различие, которое я видел в плане запросов, используемом на моем ноутбуке, - это Распределенные потоки, Повторные потоки и Сборные потоки.Как я могу включить их в лазурном?Я не смог найти никакой документации по этим параметрам в базе данных Azure.

Обновление

Поскольку не удалось получить тот же план запросов в Azure, я проверил номерпроцессорных ядер базы данных Azure SQL.Похоже, что для Standard S2 ценовой уровень является лишь одним ядром.Чтобы увидеть количество ядер в базе данных Azure, я использовал этот запрос: (ссылка: http://www.nikoport.com/2015/03/19/azure-sqldatabase-v12-premium-editions-and-available-cores/)

select * from sys.dm_os_schedulers, где status = 'VISIBLE ONLINE' и is_online = 1

OnAzure Я получил только одну запись, в то время как на моем ноутбуке у меня 8 ядер процессора. Если я запускаю запрос с OPTION (MAXDOP 1), я получаю тот же план выполнения на моей машине

Ответы [ 2 ]

0 голосов
/ 13 ноября 2018

SQL Azure имеет размеры резервирования, которые (на нижнем уровне) меньше, чем полное ядро, а на верхнем уровне содержат несколько ядер. На самом деле в SQL Azure сейчас есть две модели ценообразования: * Базовый / Стандартный / Премиум * на основе v-Core

Модель Basic / Standard / Premium имела более или менее фиксированные доли ЦП, памяти, IOPS и хранилища. Модель на основе v-core предоставляет немного больше аппаратного обеспечения (вы можете увидеть поколения процессоров и выбрать, какие вы хотите), и вы можете приобрести хранилище / iops отдельно.

Вы использовали базу данных S2. Basic и Standard (до ~ S3) действительно продают вам лишь часть ядра по этим ценовым показателям. Premium P1 - это ядро, а модель v-core продает вам 1 или более ядер.

Если вам нужны параллельные планы запросов, вам нужно иметь размер резервирования, превышающий одно ядро.

0 голосов
/ 12 ноября 2018

Параллелизм включен по умолчанию в базе данных SQL Azure. Если вы не включены, возможно, это было отключено с помощью команды ALTER DATABASE SCOPED CONFIGURATION . Используйте эту же команду для включения параллелизма.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...