Функция Intelligent Insights использует искусственный интеллект для мониторинга производительности базы данных и устранения связанных с ней проблем.Intelligent Insights using AI to monitor and troubleshoot database performance

Intelligent Insights для Базы данных SQL Azure позволяет узнать, что происходит с производительностью базы данных SQL Azure и баз данных Управляемых экземпляров.Azure SQL Database Intelligent Insights lets you know what is happening with your SQL Database and Managed Instance database performance.

Intelligent Insights использует встроенный аналитический механизм базы данных постоянного отслеживания использования базы данных с помощью искусственного интеллекта и обнаружения аварийных событий, снижающих производительность.Intelligent Insights uses built-in intelligence to continuously monitor database usage through artificial intelligence and detect disruptive events that cause poor performance. После обнаружения выполняется подробный анализ и интеллектуальная оценка проблемы, после чего полученные результаты записываются в журнал диагностики.Once detected, a detailed analysis is performed that generates a diagnostics log with an intelligent assessment of the issue. Эта оценка состоит из анализа первопричин проблемы с производительностью базы данных и возможных рекомендаций по повышению производительности.This assessment consists of a root cause analysis of the database performance issue and, where possible, recommendations for performance improvements.

Что Intelligent Insights может сделать для вас?What can Intelligent Insights do for you

Intelligent Insights — уникальная функция встроенного аналитического механизма Azure, который предлагает следующие возможности:Intelligent Insights is a unique capability of Azure built-in intelligence that provides the following value:

  • Упреждающий мониторингProactive monitoring
  • специализированная аналитика производительности;Tailored performance insights
  • заблаговременное выявление снижения производительности базы данных;Early detection of database performance degradation
  • анализ первопричин обнаруженных проблем;Root cause analysis of issues detected
  • рекомендации по повышению производительности;Performance improvement recommendations
  • возможность развертывания сотен тысяч баз данных;Scale out capability on hundreds of thousands of databases
  • положительное влияние на ресурсы DevOps и совокупную стоимость владения.Positive impact to DevOps resources and the total cost of ownership

Как работает Intelligent Insights?How does Intelligent Insights work

Intelligent Insights анализирует производительность базы данных и сравнивает ее рабочую нагрузку за последний час с базовыми показателями рабочей нагрузки за последние семь дней.Intelligent Insights analyzes database performance by comparing the database workload from the last hour with the past seven-day baseline workload. Рабочая нагрузка базы данных состоит из запросов, которые считаются наиболее важными для производительности базы данных, такие как наиболее повторяющиеся запросы и запросы наибольшего размера.Database workload is composed of queries determined to be the most significant to the database performance, such as the most repeated and largest queries. Так как каждая база данных является уникальной ввиду своей структуры, данных, использования и назначения, все создаваемые базовые показатели рабочей нагрузки являются уникальными для каждого отдельного экземпляра.Because each database is unique based on its structure, data, usage, and application, each workload baseline that is generated is specific and unique to an individual instance. Независимо от базовых показателей рабочей нагрузки Intelligent Insights также отслеживает абсолютные рабочие пороговые значения и обнаруживает проблемы, связанные с повышенным временем ожидания, критическими исключениями и параметризацией запросов, которые могут негативно повлиять на производительность.Intelligent Insights, independent of the workload baseline, also monitors absolute operational thresholds and detects issues with excessive wait times, critical exceptions, and issues with query parameterizations that might affect performance.

После обнаружения проблемы снижения производительности в нескольких наблюдаемых метриках с помощью искусственного интеллекта выполняется анализ.After a performance degradation issue is detected from multiple observed metrics by using artificial intelligence, analysis is performed. Его результаты записываются в журнал диагностики. Они содержат ценную аналитику по операциям с базой данных.A diagnostics log is generated with an intelligent insight on what is happening with your database. Intelligent Insights позволяет легко отслеживать проблемы с производительностью базы данных с момента их выявления и до устранения.Intelligent Insights makes it easy to track the database performance issue from its first appearance until resolution. Каждая обнаруженная проблема отслеживается по всему жизненному циклу — от изначального обнаружения проблемы и проверки улучшения производительности до ее решения.Each detected issue is tracked through its lifecycle from initial issue detection and verification of performance improvement to its completion.

Рабочий процесс анализа производительности базы данных

Метрики, используемые для измерения и обнаружения проблем с производительностью базы данных, основаны на длительности запроса, запросов с истекшим временем ожидания, повышенном времени ожидания и запросах с ошибками.The metrics used to measure and detect database performance issues are based on query duration, timeout requests, excessive wait times, and errored requests. Дополнительные сведения о метриках см. в разделе Метрики обнаружения этого документа.For more information on metrics, see the Detection metrics section of this document.

Выявленные проблемы снижения производительности базы данных SQL записываются в журнал диагностики. Эти аналитические записи состоят из следующих свойств:Identified SQL Database performance degradations are recorded in the diagnostics log with intelligent entries that consist of the following properties:

СвойствоProperty СведенияDetails
сведения о базе данных;Database information Метаданные базы данных, для которой была обнаружена аналитика. Например, URI ресурса.Metadata about a database on which an insight was detected, such as a resource URI.
Наблюдаемый диапазон времениObserved time range Время начала и окончания периода обнаруженной аналитики.Start and end time for the period of the detected insight.
Затронутые метрикиImpacted metrics Метрики, вызвавшие создание аналитики:Metrics that caused an insight to be generated:
  • Увеличение длительности запросов [с].Query duration increase [seconds].
  • Повышенное время ожидания [с].Excessive waiting [seconds].
  • Запросы, время ожидания которых истекло [процент].Timed-out requests [percentage].
  • Запросы, завершившиеся сбоем [процент].Errored-out requests [percentage].
Значение последствийImpact value Значение измеренной метрики.Value of a metric measured.
Затронутые запросы и коды ошибокImpacted queries and error codes Хэш запроса или код ошибки.Query hash or error code. Их можно легко сопоставить с затронутыми запросами.These can be used to easily correlate to affected queries. Предоставляются метрики увеличения продолжительности запросов, времени ожидания, счетчиков времени ожидания или кодов ошибок.Metrics that consist of either query duration increase, waiting time, timeout counts, or error codes are provided.
ОбнаруженияDetections Проблема обнаруживается в базе данных во время события.Detection identified at the database during the time of an event. Существуют 15 шаблонов обнаружения.There are 15 detection patterns. Дополнительные сведения см. в статье Устранение проблем с производительностью базы данных SQL Azure с помощью Intelligent Insights.For more information, see Troubleshoot database performance issues with Intelligent Insights.
Анализ первопричинRoot cause analysis Анализ первопричин обнаруженной проблемы в понятном для понимания формате.Root cause analysis of the issue identified in a human-readable format. Некоторые аналитические данные могут содержать рекомендации по улучшению производительности, если это возможно.Some insights might contain a performance improvement recommendation where possible.

Практические сведения об использовании Intelligent Insights с решением "Аналитика SQL Azure" и типичные сценарии подобного применения приведены в видео:For a hands-on overview on using Intelligent Insights with Azure SQL Analytics and for typical usage scenarios, see the embedded video:

Intelligent Insights является непревзойденным решением для обнаружения и устранения проблем производительности базы данных SQL.Intelligent Insights shines in discovering and troubleshooting SQL Database performance issues. Чтобы устранить проблемы производительности базы данных SQL и баз данных Управляемого экземпляра с помощью Intelligent Insights, ознакомьтесь с разделом Устранение проблем с производительностью базы данных SQL Azure с помощью Intelligent Insights.In order to use Intelligent Insights to troubleshoot SQL Database and Managed Instance database performance issues, see Troubleshoot Azure SQL Database performance issues with Intelligent Insights.

Настройка Intelligent InsightsConfigure Intelligent Insights

Выходные данные Intelligent Insights представляют собой интеллектуальный журнал диагностики производительности.Output of the Intelligent Insights is a smart performance diagnostics log. Этот журнал можно использовать несколькими способами путем потоковой передачи в Аналитику SQL Azure, Центры событий Azure, службу хранилища Azure или стороннее решение.This log can be consumed in several ways - through streaming it to Azure SQL Analytics, Azure Event Hubs and Azure storage, or a third party product.

  • Используйте продукт с Аналитикой SQL Azure, чтобы просматривать аналитические сведения в пользовательском интерфейсе на портале Azure.Use the product with Azure SQL Analytics to view insights through the user interface of the Azure portal. Это интегрированное решение Azure, а также наиболее типичный способ просмотра аналитических сведений.This is the integrated Azure solution, and the most typical way to view insights.
  • Используйте продукт с Центрами событий Azure для разработки сценариев пользовательского мониторинга и оповещений.Use the product with Azure Event Hubs for development of custom monitoring and alerting scenarios
  • Используйте продукт со службой хранилища Azure для разработки пользовательских приложений, например приложений для пользовательских отчетов, долгосрочной архивации данных и т. д.Use the product with Azure storage for custom application development, such are for example custom reporting, long-term data archival and so forth.

Чтобы интегрировать Intelligent Insights с другими продуктами (Аналитикой SQL Azure, Центрами событий Azure, службой хранилища Azure или сторонними продуктами) для передачи в них данных, нужно сначала включить ведение журнала Intelligent Insights (журнал SQLInsights) в колонке "Параметры диагностики" для базы данных, а затем настроить потоковую передачу данных журнала Intelligent Insights в один из этих продуктов.Integration of Intelligent Insights with other products Azure SQL Analytics, Azure Event Hub, Azure storage, or third party products for consumption is performed through first enabling Intelligent Insights logging (the "SQLInsights" log) in the Diagnostic settings blade of a database, and then configuring Intelligent Insights log data to be streamed into one of these products.

Дополнительные сведения о том, как включить ведение журнала Intelligent Insights и настроить потоковую передачу данных журнала в использующий их продукт, см. в разделе Метрики и журналы диагностики Базы данных SQL Azure.For more information on how to enable Intelligent Insights logging and to configure log data to be streamed to a consuming product, see Azure SQL Database metrics and diagnostics logging.

Настройка для использования с Аналитикой SQL AzureSet up with Azure SQL Analytics

Решение "Аналитика SQL Azure" обеспечивает графический пользовательский интерфейс, возможности создания отчетов и отправки оповещений о производительности базы данных, а также предоставляет данные журнала диагностики Intelligent Insights.Azure SQL Analytics solution provides graphical user interface, reporting and alerting capabilities on database performance, along with the Intelligent Insights diagnostics log data.

Совет

Самый простой способ быстро приступить к работе с Intelligent Insights — использовать эту возможность вместе с решением "Аналитика SQL Azure", которое предоставляет графический пользовательский интерфейс для просмотра проблем с производительностью базы данных.Quick getting started: The easiest way to get off the ground with using Intelligent Insights is to use it along with Azure SQL Analytics which will provide a graphical user interface to database performance issues. Добавьте решение "Аналитика SQL Azure" из marketplace, создайте внутри него рабочую область, а затем для каждой базы данных, для которой нужно включить Intelligent Insights, настройте потоковую передачу журнала SQLInsights в рабочую область Аналитики SQL Azure, используя колонку "Параметры диагностики" для базы данных.Add Azure SQL Analytics solution from the marketplace, create a workspace inside this solution, and then for each database you wish to enable Intelligent Insights on, configure streaming of "SQLInsights" log in the Diagnostics settings blade of a database to the workspace of Azure SQL Analytics.

Предварительные требования — добавить Аналитику SQL Azure на панель мониторинга портала Azure из marketplace и создать рабочую область (см. раздел о настройке Аналитики SQL Azure.)Pre-requirement is to have Azure SQL Analytics added to your Azure portal dashboard from the marketplace and to create a workspace, see configure Azure SQL Analytics

Чтобы использовать Intelligent Insights с Аналитикой SQL Azure, настройте потоковую передачу данных журнала Intelligent Insights в рабочую область Аналитики SQL Azure, которую вы создали на предыдущем этапе, как описано в статье Ведение журналов метрик и диагностики Базы данных SQL Azure.To use Intelligent Insights with Azure SQL Analytics, configure Intelligent Insights log data to be streamed to Azure SQL Analytics workspace you've created in the previous step, see Azure SQL Database metrics and diagnostics logging.

Ниже приведен пример просмотра данных Intelligent Insights в Аналитике SQL Azure:The following example shows an Intelligent Insights viewed through Azure SQL Analytics:

Отчет Intelligent Insights

Настройка для использования с Центрами событийSet up with Event Hubs

Чтобы использовать Intelligent Insights с Центрами событий, настройте потоковую передачу данных журнала Intelligent Insights в Центры событий, как описано в разделе Потоковая передача журналов диагностики Azure в пространство имен Центров событий.To use Intelligent Insights with Event Hubs, configure Intelligent Insights log data to be streamed to Event Hubs, see Stream Azure diagnostics logs to Event Hubs.

Сведения об использовании Центров событий для настраиваемого мониторинга и оповещений см. в разделе Метрики и журналы диагностики базы данных SQL Azure.To use Event Hubs to setup custom monitoring and alerting, see What to do with metrics and diagnostics logs in Event Hubs.

Настройка для использования со службой хранилища AzureSet up with Azure Storage

Чтобы использовать Intelligent Insights со службой хранилища, настройте потоковую передачу данных журнала Intelligent Insights в службу хранилища, как описано в разделе Потоковая передача в хранилище.To use Intelligent Insights with Storage, configure Intelligent Insights log data to be streamed to Storage, see Stream into Azure Storage.

Настраиваемая интеграция журнала Intelligent InsightsCustom integrations of Intelligent Insights log

Чтобы использовать Intelligent Insights с инструментами сторонних производителей или для разработки настраиваемых оповещений и мониторинга, ознакомьтесь с разделом Использование журнала диагностики производительности Intelligent Insights для базы данных SQL Azure.To use Intelligent Insights with third party tools, or for custom alerting and monitoring development, see Use the Intelligent Insights database performance diagnostics log.

Метрики обнаруженияDetection metrics

Метрики, используемые в моделях обнаружения, создаваемых Intelligent Insights, отслеживают:Metrics used for detection models that generate Intelligent Insights are based on monitoring:

  • Query duration (Длительность запросов)Query duration
  • запросы, время ожидания которых истекло;Timeout requests
  • повышенное время ожидания;Excessive wait time
  • запросы, завершившиеся сбоем.Errored out requests

Метрики длительности запросов и времени ожидания запросов используются в качестве основных моделей для обнаружения проблем, связанных с производительностью рабочей нагрузки базы данных.Query duration and timeout requests are used as primary models in detecting issues with database workload performance. Причина этого состоит в том, что они непосредственно измеряют рабочую нагрузку.They're used because they directly measure what is happening with the workload. Для обнаружения всех возможных вариантов снижения производительности рабочей нагрузки в качестве дополнительных моделей используются метрики повышенного времени ожидания и запросов, завершенных сбоем. Это позволяет выявлять проблемы, влияющие на производительность рабочей нагрузки.To detect all possible cases of workload performance degradation, excessive wait time and errored-out requests are used as additional models to indicate issues that affect the workload performance.

Система автоматически учитывает изменения рабочей нагрузки и числа запросов к базе данных, чтобы динамически определять нормальные и ненормальные пороговые значения производительности базы данных.The system automatically considers changes to the workload and changes in the number of query requests made to the database to dynamically determine normal and out-of-the-ordinary database performance thresholds.

Все метрики учитываются вместе в различных сочетаниях благодаря научной модели данных, позволяющей классифицировать каждую обнаруженную проблему с производительностью.All of the metrics are considered together in various relationships through a scientifically derived data model that categorizes each performance issue detected. Intelligent Insight предоставляет следующие сведения:Information provided through an intelligent insight includes:

  • сведения об обнаруженной проблеме с производительностью;Details of the performance issue detected.
  • анализ первопричин обнаруженных проблем;A root cause analysis of the issue detected.
  • рекомендации по улучшению производительности отслеживаемой базы данных SQL, если это возможно.Recommendations on how to improve the performance of the monitored SQL database, where possible.

Query duration (Длительность запросов)Query duration

Модель снижения производительности из-за повышения длительности запросов анализирует отдельные запросы и выявляет увеличение времени, необходимого для компиляции и выполнения запроса, по сравнению с базовыми показателями производительности.The query duration degradation model analyzes individual queries and detects the increase in the time it takes to compile and execute a query compared to the performance baseline.

Если встроенный аналитический механизм базы данных SQL обнаруживает существенное увеличение времени, затрачиваемого на компиляцию или выполнение запросов, что негативно влияет на производительность рабочей нагрузки, такие запросы помечаются как снижающие производительность из-за увеличения длительности.If SQL Database built-in intelligence detects a significant increase in query compile or query execution time that affects workload performance, these queries are flagged as query duration performance degradation issues.

Журнал диагностики Intelligent Insights содержит хэш запроса, снижающего производительность,The Intelligent Insights diagnostics log outputs the query hash of the query degraded in performance. который указывает, связано ли это снижение с увеличением времени компиляции или выполнения запроса. Он также содержит увеличенную длительность запроса.The query hash indicates whether the performance degradation was related to query compile or execution time increase, which increased query duration time.

запросы, время ожидания которых истекло;Timeout requests

Модель снижения производительности из-за истечения времени ожидания запросов анализирует отдельные запросы и выявляет увеличение числа случаев истечения времени ожидания на уровне выполнения запроса, а также общее число случаев истечения времени ожидания запросов на уровне базы данных по сравнению с периодом базовых показателей производительности.The timeout requests degradation model analyzes individual queries and detects any increase in timeouts at the query execution level and the overall request timeouts at the database level compared to the performance baseline period.

Некоторые из запросов могут истекать даже до того, как достигнут этапа исполнения.Some of the queries might time out even before they reach the execution stage. Встроенный аналитический механизм базы данных SQL также измеряет и анализирует (сравнивая прерванные рабочие роли и отправленные запросы) все запросы, которые достигли базы данных, вне зависимости от того, достигли ли они этапа выполнения.Through the means of aborted workers vs. requests made, SQL Database built-in intelligence measures and analyzes all queries that reached the database whether they got to the execution stage or not.

Как только число выполненных запросов, время ожидания которых истекло, или число прерванных рабочих ролей запросов превысит системное пороговое значение, журнал диагностики заполнится ценной аналитикой.After the number of timeouts for executed queries or the number of aborted request workers crosses the system-managed threshold, a diagnostics log is populated with intelligent insights.

Созданная аналитика содержит число запросов, время ожидания которых истекло.The insights generated contain the number of timed-out requests and the number of timed-out queries. Снижение производительности связано с увеличением числа запросов, время ожидания которых истекло на этапе выполнения, или с увеличением числа запросов, время ожидания которых истекло на общем уровне базы данных.Indication of the performance degradation is related to timeout increase at the execution stage, or the overall database level is provided. Если увеличение числа запросов, время ожидания которых истекло, является существенным для производительности базы данных, то эти запросы помечаются как снижающие производительность из-за истечения времени ожидания.When the increase in timeouts is deemed significant to database performance, these queries are flagged as timeout performance degradation issues.

Повышенное время ожиданияExcessive wait times

Модель повышенного времени ожидания отслеживает отдельные запросы к базе данных.The excessive wait time model monitors individual database queries. Она выявляет необычно высокие значения статистики по времени ожидания запросов, превышающие абсолютные пороговые значения, управляемые системой.It detects unusually high query wait stats that crossed the system-managed absolute thresholds. Ниже приведены метрики запросов с повышенным временем ожидания, отслеживаемые с помощью нового компонента SQL Server, Query Store Wait Stats, отображающего статистику времени ожидания из хранилища запросов (sys.query_store_wait_stats):The following query excessive wait-time metrics are observed by using the new SQL Server feature, Query Store Wait Stats (sys.query_store_wait_stats):

  • Достижение лимитов ресурсовReaching resource limits
  • достижение лимитов ресурсов эластичного пула;Reaching elastic pool resource limits
  • чрезмерное количество рабочих потоков или потоков сеансов;Excessive number of worker or session threads
  • чрезмерная блокировка базы данных;Excessive database locking
  • Нехватка памятиMemory pressure
  • прочая статистика времени ожидания.Other wait stats

Достижение лимитов ресурсов или лимитов ресурсов эластичных пулов означает, что потребление доступных ресурсов подписки или эластичного пула превысило абсолютный порог.Reaching resource limits or elastic pool resource limits denote that consumption of available resources on a subscription or in the elastic pool crossed absolute thresholds. Это является признаком снижения производительности рабочей нагрузки.These stats indicate workload performance degradation. Чрезмерное количество рабочих потоков или потоков сеансов указывает, что число инициализированных рабочих потоков или сеансов достигло абсолютного порога.An excessive number of worker or session threads denotes a condition in which the number of worker threads or sessions initiated crossed absolute thresholds. Это является признаком снижения производительности рабочей нагрузки.These stats indicate workload performance degradation.

Чрезмерная блокировка базы данных указывает, что счетчик блокировок в базе данных достиг абсолютного порога.Excessive database locking denotes a condition in which the count of locks on a database has crossed absolute thresholds. Эта статистика указывает на снижение производительности рабочей нагрузки.This stat indicates a workload performance degradation. Нехватка памяти — это условие, при котором количество потоков, запрашивающих временно предоставляемый буфер памяти, достигло абсолютного порога.Memory pressure is a condition in which the number of threads requesting memory grants crossed an absolute threshold. Эта статистика указывает на снижение производительности рабочей нагрузки.This stat indicates a workload performance degradation.

Прочая статистика времени ожидания указывает, что различные метрики, измеряемые с помощью компонента Query Store Wait Stats, превысили абсолютное пороговое значение.Other wait stats detection indicates a condition in which miscellaneous metrics measured through the Query Store Wait Stats crossed an absolute threshold. Это является признаком снижения производительности рабочей нагрузки.These stats indicate workload performance degradation.

После обнаружения повышенного времени ожидания, в зависимости от доступных данных, в журнал диагностики Intelligent Insights записываются хэши запросов, снижающих производительность, и запросов, производительность которых понизилась. В него также добавляются сведения о метриках, выявивших запросы с повышенным временем ожидания выполнения и измеривших это время.After excessive wait times are detected, depending on the data available, the Intelligent Insights diagnostics log outputs hashes of the affecting and affected queries degraded in performance, details of the metrics that cause queries to wait in execution, and measured wait time.

Запросы с ошибкамиErrored requests

Модель снижения производительности из-за запросов с ошибками отслеживает отдельные запросы и выявляет увеличение количества запросов с ошибками по сравнению с периодом базовых показателей.The errored requests degradation model monitors individual queries and detects an increase in the number of queries that errored out compared to the baseline period. Эта модель также отслеживает критические исключения, которые достигли абсолютных пороговых значений, которыми управляет встроенный аналитический механизм базы данных SQL.This model also monitors critical exceptions that crossed absolute thresholds managed by SQL Database built-in intelligence. Система автоматически учитывает количество запросов к базе данных и изменения рабочей нагрузки за отслеживаемый период.The system automatically considers the number of query requests made to the database and accounts for any workload changes in the monitored period.

Когда измеряемое увеличение запросов с ошибками относительно общего количества выполняемых запросов становится значительным и влияет на производительность рабочей нагрузки, затронутые запросы помечаются как снижающие производительность из-за запросов с ошибками.When the measured increase in errored requests relative to the overall number of requests made is deemed significant to workload performance, affected queries are flagged as errored requests performance degradation issues.

Журнал Intelligent Insights выводит количество запросов с ошибками.The Intelligent Insights log outputs the count of errored requests. Указывает, связано ли снижение производительности с увеличением запросов с ошибками или достижением порога отслеживаемого критического исключения. Он также содержит измеренное время снижения производительности.It indicates whether the performance degradation was related to an increase in errored requests or to crossing a monitored critical exception threshold and measured time of the performance degradation.

Если какое-либо из отслеживаемых критических исключений превышает абсолютное пороговое значение, управляемое системой, создается ценная аналитика, содержащая сведения о критическом исключении.If any of the monitored critical exceptions cross the absolute thresholds managed by the system, an intelligent insight is generated with critical exception details.

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