Автоматическая настройка в Базе данных SQL AzureAutomatic tuning in Azure SQL Database

Автоматическая настройка базы данных SQL Azure обеспечивает наилучшую производительность и стабильность рабочих нагрузок благодаря механизму непрерывной оптимизации производительности на основе искусственного интеллекта и машинного обучения.Azure SQL Database Automatic tuning provides peak performance and stable workloads through continuous performance tuning based on AI and machine learning.

Автоматическая настройка — это полностью управляемая интеллектуальная служба производительности, которая непрерывно отслеживает выполняемые в базе данных запросы с помощью встроенной системы аналитики и автоматически повышает их производительность.Automatic tuning is a fully managed intelligent performance service that uses built-in intelligence to continuously monitor queries executed on a database, and it automatically improves their performance. Это достигается за счет динамической адаптации базы данных к изменениям рабочих нагрузок и применения рекомендаций по настройке.This is achieved through dynamically adapting database to the changing workloads and applying tuning recommendations. Автоматическая настройка горизонтально изучает все базы данных Azure с помощью механизма искусственного интеллекта и динамически улучшает действия настройки.Automatic tuning learns horizontally from all databases on Azure through AI and it dynamically improves its tuning actions. Чем дольше база данных SQL Azure выполняется с включенной автоматической настройкой, тем лучше она работает.The longer an Azure SQL Database runs with automatic tuning on, the better it performs.

Автоматическая настройка в Базе данных SQL Azure — возможно, одна из самых важных функций, позволяющая обеспечить выполнение рабочих нагрузок при стабильной и пиковой работе.Azure SQL Database Automatic tuning might be one of the most important features that you can enable to provide stable and peak performing database workloads.

Возможности автоматической настройкиWhat can Automatic Tuning do for you?

  • Автоматическая оптимизация производительности баз данных SQL Azure.Automated performance tuning of Azure SQL databases
  • Автоматическая проверка прироста производительности.Automated verification of performance gains
  • Автоматический откат и самостоятельное восстановление.Automated rollback and self-correction
  • Журнал настройкиTuning history
  • Настройка T-SQL-скриптов для развертывания вручную.Tuning action T-SQL scripts for manual deployments
  • Упреждающий мониторинг производительности рабочей нагрузки.Proactive workload performance monitoring
  • возможность развертывания сотен тысяч баз данных;Scale out capability on hundreds of thousands of databases
  • положительное влияние на ресурсы DevOps и совокупную стоимость владения.Positive impact to DevOps resources and the total cost of ownership

Безопасность и надежностьSafe, Reliable, and Proven

Операции настройки, применяемые к базам данных SQL Azure, полностью безопасны для выполнения самых интенсивных рабочих нагрузок.Tuning operations applied to Azure SQL databases are fully safe for the performance of your most intense workloads. Система была разработана с осторожностью, чтобы предотвратить воздействие на рабочие нагрузки пользователя.The system has been designed with care not to interfere with the user workloads. Автоматические рекомендации по настройке применяются только во время недостаточной нагрузки.Automated tuning recommendations are applied only at the times of a low utilization. Система также может временно отключать автоматические операции по настройке, чтобы защитить производительность рабочей нагрузки.The system can also temporarily disable automatic tuning operations to protect the workload performance. В этом случае на портале Azure появится сообщение "Disabled by the system" (Отключено системой).In such case, “Disabled by the system” message will be shown in Azure portal. Автоматическая настройка относится к рабочим нагрузкам с наивысшим приоритетом ресурсов.Automatic tuning regards workloads with the highest resource priority.

Автоматические механизмы настройки отлажены и были усовершенствованы на нескольких миллионах баз данных, работающих в Azure.Automatic tuning mechanisms are mature and have been perfected on several million databases running on Azure. Автоматические операции настройки проверяются автоматически, чтобы обеспечить положительное улучшение производительности рабочей нагрузки.Automated tuning operations applied are verified automatically to ensure there is a positive improvement to the workload performance. Регрессионные рекомендации по производительности динамически обнаруживаются и оперативно отменяются.Regressed performance recommendations are dynamically detected and promptly reverted. Журнал выполнения настройки позволяет отслеживать улучшения, реализованные механизмом настройки для каждой базы данных SQL Azure.Through the tuning history recorded, there exists a clear trace of tuning improvements made to each Azure SQL Database.

Как работает автоматическая настройка

Автоматическая настройка базы данных SQL Azure использует основную логику совместно с механизмом автоматической настройки SQL Server.Azure SQL Database Automatic tuning is sharing its core logic with the SQL Server automatic tuning engine. Дополнительные технические сведения о встроенном механизме настройки см. в статье Automatic tuning (Автоматическая настройка).For additional technical information on the built-in intelligence mechanism, see SQL Server automatic tuning.

Использование автоматической настройкиUse Automatic tuning

Автоматическая настройка должна быть включена в подписке.Automatic tuning needs to be enabled on your subscription. Чтобы узнать, как включить автоматическую настройку с помощью портала Azure, см. статью Включение автоматической настройки.To enable automatic tuning using Azure portal, see Enable automatic tuning.

Автоматическая настройка может работать автономно путем автоматического применения рекомендаций по настройке, включая проверки прироста производительности.Automatic tuning can operate autonomously through automatically applying tuning recommendations, including automated verification of performance gains.

Для большего контроля можно отключить автоматическое применение рекомендаций по настройке и применять их вручную с помощью портала Azure.For more control, automatic application of tuning recommendations can be turned off, and tuning recommendations can be manually applied through Azure portal. Можно также использовать решение только для просмотра автоматических рекомендаций по настройке и применять их вручную, используя скрипты и средства по своему усмотрению.It is also possible to use the solution to view automated tuning recommendations only and manually apply them through scripts and tools of your choice.

В приведенном ниже видео представлены принципы работы автоматической настройки и типичные сценарии использования.For an overview of how automatic tuning works and for typical usage scenarios, see the embedded video:

Параметры автоматической настройкиAutomatic tuning options

Параметры автоматической настройки, доступные в базе данных SQL Azure:Automatic tuning options available in Azure SQL Database are:

Параметр автоматической настройкиAutomatic tuning option Поддержка отдельной базы данных и базы данных в пулеSingle database and pooled database support Поддержка базы данных экземпляраInstance database support
Создание индекса — определяет индексы, которые могут повысить производительность рабочей нагрузки, создает индексы и автоматически проверяет производительность запросов.CREATE INDEX - Identifies indexes that may improve performance of your workload, creates indexes, and automatically verifies that performance of queries has improved. ДаYes НетNo
DROP INDEX — ежедневно идентифицирует избыточные и повторяющиеся индексы, за исключением уникальных индексов и индексов, которые не использовались в течение длительного времени (> 90 дней).DROP INDEX - Identifies redundant and duplicate indexes daily, except for unique indexes, and indexes that were not used for a long time (>90 days). Обратите внимание, что эта функция несовместима с приложениями, которые используют переключения секций и подсказки индекса.Please note that this option is not compatible with applications using partition switching and index hints. Удаление неиспользуемых индексов не поддерживается для уровней обслуживания "Премиум" и "критически важный для бизнеса".Dropping unused indexes is not supported for Premium and Business Critical service tiers. ДаYes НетNo
Принудительный последний хороший план (автоматическое исправление плана) — определяет запросы SQL с использованием плана выполнения, который медленнее предыдущего, и запросов, использующих Последний известный план, а не регрессивный план.FORCE LAST GOOD PLAN (automatic plan correction) - Identifies SQL queries using execution plan that is slower than the previous good plan, and queries using the last known good plan instead of the regressed plan. ДаYes ДаYes

Автоматическая настройка идентифицирует рекомендации для использования параметров Создать индекс, Удалить индекс и Force last good plan (Принудительное выполнение последнего хорошего плана), с помощью которых можно оптимизировать производительность базы данных, и отображает их на портале Azure. Получить эти параметры можно с помощью T-SQL и REST API.Automatic tuning identifies CREATE INDEX, DROP INDEX, and FORCE LAST GOOD PLAN recommendations that can optimize your database performance and shows them in Azure portal, and exposes them through T-SQL and REST API. Дополнительные сведения о ПРИНУДИТЕЛЬном последнем УДАЧном плане и настройке параметров автоматической настройки с помощью T-SQL см. в разделе Автоматическая настройка содержит автоматическое исправление плана.To learn more about FORCE LAST GOOD PLAN and configuring automatic tuning options through T-SQL, see Automatic tuning introduces automatic plan correction.

Вы можете вручную применить рекомендации по настройке с помощью портала или разрешить автоматической настройке автономно применять эти рекомендации.You can either manually apply tuning recommendations using the portal or you can let Automatic tuning autonomously apply tuning recommendations for you. Преимущество автономного системного применения рекомендаций по настройке заключается в том, что система автоматически проверяет возможность увеличить производительность рабочей нагрузки. Если значительное повышение производительности не обнаружено, система автоматически вернется к рекомендации по настройке.The benefits of letting the system autonomously apply tuning recommendations for you is that it automatically validates there exists a positive gain to the workload performance, and if there is no significant performance improvement detected, it will automatically revert the tuning recommendation. Обратите внимание, что в случае запросов, на которые могут повлиять рекомендации по настройке, выполняемые нечасто, этап проверки может занять до 72 часов.Please note that in case of queries affected by tuning recommendations that are not executed frequently, the validation phase can take up to 72 hrs by design.

В случае применения рекомендаций по настройке с помощью T-SQL, автоматическая проверка производительности и механизмы реверсирования недоступны.In case you are applying tuning recommendations through T-SQL, the automatic performance validation, and reversal mechanisms are not available. Рекомендации, применяемые таким образом, остаются активными и отображаются в списке рекомендаций по настройке в течение 24-48 часов.Recommendations applied in such way will remain active and shown in the list of tuning recommendations for 24-48 hrs. перед тем, как система автоматически отбудет их снять.before the system automatically withdraws them. Если вы хотите удалить рекомендацию раньше, вы можете отказаться от портал Azure.If you would like to remove a recommendation sooner, you can discard it from Azure portal.

Параметры автоматической настройки можно включать и отключать отдельно для каждой базы данных, а также их можно настроить на серверах Базы данных SQL и применять для каждой базы данных, которая наследует параметры сервера.Automatic tuning options can be independently enabled or disabled per database, or they can be configured on SQL Database servers and applied on every database that inherits settings from the server. Серверы Базы данных SQL могут наследовать значения Azure по умолчанию для параметров автоматической настройки.SQL Database servers can inherit Azure defaults for Automatic tuning settings. Поддерживаемые сейчас значения Azure по умолчанию: FORCE_LAST_GOOD_PLAN включено, CREATE_INDEX включено, а DROP_INDEX отключено.Azure defaults at this time are set to FORCE_LAST_GOOD_PLAN is enabled, CREATE_INDEX is enabled, and DROP_INDEX is disabled.

Советуем настроить параметры автоматической настройки на сервере и задать наследование параметров от родительского сервера, так как это упрощает управление этими параметрами для большого количества баз данных.Configuring Automatic tuning options on a server and inheriting settings for databases belonging to the parent server is a recommended method for configuring automatic tuning as it simplifies management of automatic tuning options for a large number of databases.

Дальнейшие действияNext steps