Управление хранилищем запросов в Базе данных SQL AzureOperating the Query Store in Azure SQL Database

Хранилище запросов в Azure является полностью управляемой службой базы данных, которая непрерывно собирает и предоставляет подробные статистические сведения обо всех запросах.Query Store in Azure is a fully managed database feature that continuously collects and presents detailed historic information about all queries. Хранилище запросов можно рассматривать как аналог бортового самописца, который значительно упрощает устранение проблем, отражающихся на производительности запросов, для клиентов в облаке и в локальной среде.You can think about Query Store as similar to an airplane's flight data recorder that significantly simplifies query performance troubleshooting both for cloud and on-premises customers. В этой статье объясняются некоторые аспекты управления хранилищем запросов в Azure.This article explains specific aspects of operating Query Store in Azure. С помощью предварительно собранных данных о запросах можно быстро диагностировать и устранять проблемы с производительностью, что позволяет уделять больше времени основным рабочим задачам.Using this pre-collected query data, you can quickly diagnose and resolve performance problems and thus spend more time focusing on their business.

Хранилище запросов глобально доступно в Базе данных SQL Azure с ноября 2015 г.Query Store has been globally available in Azure SQL Database since November, 2015. Хранилище запросов является основой для анализа производительности и настройки компонентов, таких как помощник по настройке базы данных SQL и панель мониторинга производительности.Query Store is the foundation for performance analysis and tuning features, such as SQL Database Advisor and Performance Dashboard. На момент публикации этой статьи хранилище запросов работает в более чем 200 000 пользовательских баз данных в Azure, безостановочно собирая информацию о запросах за несколько месяцев.At the moment of publishing this article, Query Store is running in more than 200,000 user databases in Azure, collecting query-related information for several months, without interruption.

Важно!

Корпорация Майкрософт работает над тем, чтобы хранилище запросов стало доступно для всех баз данных SQL Azure (как существующих, так и новых).Microsoft is in the process of activating Query Store for all Azure SQL databases (existing and new).

Оптимальная конфигурация хранилища запросовOptimal Query Store Configuration

В этом разделе описываются оптимальные настройки по умолчанию, призванные обеспечить надежную работу хранилища запросов и зависимых компонентов, таких как помощник по базам данных SQL Azure и панель мониторинга производительности.This section describes optimal configuration defaults that are designed to ensure reliable operation of the Query Store and dependent features, such as SQL Database Advisor and Performance Dashboard. По умолчанию конфигурация оптимизирована для постоянного сбора данных, т. е. для минимальной продолжительности состояний "Отключено" и "Только для чтения".Default configuration is optimized for continuous data collection, that is minimal time spent in OFF/READ_ONLY states.

КонфигурацияConfiguration Description (Описание)Description значение по умолчаниюDefault КомментарийComment
MAX_STORAGE_SIZE_MBMAX_STORAGE_SIZE_MB Предельный размер пространства данных, которое хранилище запросов использует в базе данных клиентаSpecifies the limit for the data space that Query Store can take inside the customer database 100100 Принудительно для новых баз данныхEnforced for new databases
INTERVAL_LENGTH_MINUTESINTERVAL_LENGTH_MINUTES Определяет время, в течение которого объединяются и сохраняются собранные статистические данные среды выполнения по планам запросов.Defines size of time window during which collected runtime statistics for query plans are aggregated and persisted. Для каждого активного плана запроса в течение периода, заданного в этом параметре, будет сохраняться только одна строка.Every active query plan has at most one row for a period of time defined with this configuration 6060 Принудительно для новых баз данныхEnforced for new databases
STALE_QUERY_THRESHOLD_DAYSSTALE_QUERY_THRESHOLD_DAYS Политика очистки на основе времени, которая контролирует срок хранения статистики для среды выполнения и неактивных запросов.Time-based cleanup policy that controls the retention period of persisted runtime statistics and inactive queries 3030 Принудительно для новых баз данных и баз данных с предыдущим значением по умолчанию (367)Enforced for new databases and databases with previous default (367)
SIZE_BASED_CLEANUP_MODESIZE_BASED_CLEANUP_MODE Указывает, нужно ли выполнять автоматическую очистку данных при приближении к предельному значению, установленному для размера данных хранилища запросов.Specifies whether automatic data cleanup takes place when Query Store data size approaches the limit AUTO (АВТОМАТИЧЕСКИ)AUTO Принудительно для всех баз данныхEnforced for all databases
QUERY_CAPTURE_MODEQUERY_CAPTURE_MODE Указывает, следует ли отслеживать все запросы или только определенное подмножество.Specifies whether all queries or only a subset of queries are tracked AUTO (АВТОМАТИЧЕСКИ)AUTO Принудительно для всех баз данныхEnforced for all databases
FLUSH_INTERVAL_SECONDSFLUSH_INTERVAL_SECONDS Указывает максимальный период, в течение которого статистика среды выполнения будет храниться в памяти перед записью на диск.Specifies maximum period during which captured runtime statistics are kept in memory, before flushing to disk 900900 Принудительно для новых баз данныхEnforced for new databases

Важно!

Эти значения по умолчанию будут автоматически применяться на последнем этапе активации хранилища запросов для всех баз данных Azure SQL (см. важное примечание выше).These defaults are automatically applied in the final stage of Query Store activation in all Azure SQL databases (see preceding important note). После этого база данных SQL Azure не будет изменять значения настроек, заданные пользователями, за исключением случаев негативного влияния на основную рабочую нагрузку или на надежность работы хранилища запросов.After this light up, Azure SQL Database won’t be changing configuration values set by customers, unless they negatively impact primary workload or reliable operations of the Query Store.

Если вы хотите сохранить свои пользовательские настройки, используйте параметры ALTER DATABASE для хранилища запросов , чтобы восстановить предыдущее состояние конфигурации.If you want to stay with your custom settings, use ALTER DATABASE with Query Store options to revert configuration to the previous state. Изучите рекомендации по использованию хранилища запросов , чтобы научиться правильно выбирать оптимальные параметры конфигурации.Check out Best Practices with the Query Store in order to learn how top chose optimal configuration parameters.

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

Анализ производительности базы данных SQLSQL Database Performance Insight

Дополнительные ресурсыAdditional resources

Дополнительные сведения вы найдете в следующих статьях.For more information check out the following articles: