Как измерить производительность базы данных SQL Azure?

Мне нужно измерить производительность базы данных SQL Azure с помощью DTA, возможно ли это или нет, если нет, какой обходной путь потребляет файл рабочей нагрузки (.trc)?

2 ответа

Решение

Помощник по настройке ядра СУБД не поддерживает базу данных SQL Azure. Также невозможно создать файл трассировки из базы данных SQL Azure с помощью SQL Server Profiler.

SQL Azure автоматизирует создание индексов, которые могут повысить производительность вашей рабочей нагрузки, с помощью функции автоматической настройки. Автоматическая настройка на Azure SQL также удаляет избыточные индексы и использует лучший план выполнения для запросов

Альберто прав - в SQL Azure есть функции, которые в некоторых случаях помогают автоматически отслеживать и повышать производительность запросов к базе данных. Трассировка профилировщика + DTA в настоящее время не поддерживаются в SQL Azure. Функция DTA (Database Tuning Advisor) в SQL Server очень хороша для отслеживания и попыток воспроизведения их на другом сервере для имитации возможных изменений индекса и секционирования, которые могут улучшить вашу производительность. Функция автоматической настройки делает это для вас без необходимости использовать DTA сегодня самостоятельно.

https://docs.microsoft.com/en-us/azure/sql-database/sql-database-automatic-tuning

Если вам нужно только изучить производительность вашей базы данных, то вы можете использовать хранилище запросов в SQL Azure (и SQL Server 2016+) для такого анализа.

https://azure.microsoft.com/en-us/blog/query-store-a-flight-data-recorder-for-your-database/

https://docs.microsoft.com/en-us/sql/relational-databases/performance/monitoring-performance-by-using-the-query-store?view=sql-server-2017

Если вы не пробовали это с помощью недавнего выпуска SQL Server Management Studio(SSMS), тогда я настоятельно рекомендую вам скачать и попробовать это. Вы можете видеть N запросов по разным показателям, изменениям плана с течением времени и другим показателям, которые позволяют быстрее понять профиль производительности вашей базы данных + приложения.

Сегодня нет способа взять файл.trc и проверить его в хранилище запросов, но вы можете включить хранилище запросов в локальном SQL Server (2016+), а затем на некоторое время записать свою производственную рабочую нагрузку, чтобы увидеть, как она себя ведет., Пожалуйста, поймите, что при работе с хранилищем запросов возникают дополнительные издержки - как правило, они скромные, но для рабочих нагрузок с OLTP-запросами, требующими особого уровня, вы можете столкнуться с большими издержками. Есть несколько ручек, чтобы настроить это, поэтому, пожалуйста, просто пройдите обычную комплексную проверку, прежде чем вносить изменения в производственную систему. Если у вас возникли проблемы, отключите его и повторите проверку, пока у вас не будут правильные настройки, которые помогут собрать соответствующие данные из вашей рабочей нагрузки и помочь принять решение о настройке.

Надеюсь, это поможет!

С уважением, Конор Каннингем Архитектор, SQL

Другие вопросы по тегам