Хранение и анализ истории запросов в Azure Synapse Analytics

Анализ истории запросов является одной из важнейших потребностей инженеров по данным. Azure Synapse Analytics поддерживает четыре основных способа анализа журнала и производительности запросов. К ним относятся хранилище запросов, динамические административные представления, Azure Log Analytics и Azure Data Explorer.

В этой статье будет показано, как использовать каждый из этих вариантов. Ознакомьтесь со сценариями анализа журнала запросов и оптимальными методами для каждого из них.

Потребность клиента Хранилище запросов Динамические административные представления Azure Log Analytics Azure Data Explorer
Готовое решение Требуется включить ✔️ Требуется добавить службу Требуется добавить службу
Более продолжительные периоды анализа 30 дней До 10 000 строк журнала Индивидуальный подход Индивидуальный подход
Доступность важных метрик Ограниченный ✔️ Ограниченный Индивидуальный подход
Использование SQL для анализа ✔️ ✔️ Требуется KQL Поддержка SQL ограничена

Хранилище запросов

Хранилище запросов предоставляет подробные сведения о выборе и производительности плана запроса. Оно упрощает устранение неполадок с производительностью, помогая быстро находить разницу в производительности, вызванную изменением плана запроса.

Хранилище запросов не включено по умолчанию для новых баз данных Azure Synapse Analytics. Чтобы включить хранилище запросов, выполните следующую команду T-SQL:

ALTER DATABASE <database_name>
SET QUERY_STORE = ON;

Например:

ALTER DATABASE [SQLPOOL1]
SET QUERY_STORE = ON;

Для аудита производительности и устранения соответствующих проблем можно находить последние выполненные запросы, количество выполнений, наиболее длительные запросы или запросы с максимальным числом физических операций ввода-вывода. Примеры запросов см. в разделе Мониторинг производительности с использованием хранилища запросов.

Преимущества:

  • Хранение данных запроса до 30 дней. Срок хранения по умолчанию — 7 дней.
  • Данные можно использовать в том же инструменте, в котором выполняется запрос.

Известное ограничение.

  • Исторические данные запросов по умолчанию хранятся меньше.
  • По сравнению с динамическими административными представлениями сценарии анализа в хранилище запросов для Azure Synapse ограничены.

Представления DMV

Динамические административные представления (DMV) чрезвычайно полезны, когда приходится собирать сведения о времени ожидания запросов, планах выполнения, памяти и т. д. Настоятельно рекомендуется помечать интересующие вас запросы для дальнейшего анализа. Например:

-- Query with Label
SELECT *
FROM sys.tables
OPTION (LABEL = 'My Query');

Дополнительные сведения о пометке запросов в Azure Synapse SQL см. в разделе Использование меток запросов в Synapse SQL.

Дополнительные сведения об использовании динамических административных представлений для мониторинга рабочей нагрузки Azure Synapse Analytics см. в разделе Мониторинг рабочей нагрузки выделенного пула SQL с помощью динамических административных представлений. Документацию по представлениям каталога, относящимся к Azure Synapse Analytics, см. в разделе Представления каталога Azure Synapse Analytics.

Преимущества:

  • Данные можно использовать в том же средстве обработки запросов.
  • Динамические административные представления предоставляют широкие возможности для анализа.

Известные ограничения

  • Число записей журнала в DMV не может превышать 10 000 строк.
  • Представления сбрасываются при приостановке или возобновлении работы пула.

Log Analytics

Рабочие области Log Analytics легко создаются на портале Azure. Дополнительные инструкции по подключению Synapse к Log Analytics см. в разделе Мониторинг рабочей нагрузки: портал Azure.

Как и Azure Data Explorer, Log Analytics использует язык запросов Kusto (KQL). Дополнительные сведения о синтаксисе Kusto см. в разделе Общие сведения о запросах Kusto.

Наряду с настраиваемым периодом хранения вы выбираете рабочую область для запросов в Log Analytics. Log Analytics обеспечивает гибкость при хранении данных, выполнении и сохранении запросов.

Преимущества:

  • В Azure Log Analytics есть настраиваемая политика хранения журналов.

Известные ограничения

  • Использование KQL требует отдельного обучения.
  • Число стандартных представлений ограничено.

Azure Data Explorer (ADX)

Azure Data Explorer (ADX) — ведущая служба для изучения данных. Ее можно использовать для анализа исторических запросов из Azure Synapse Analytics. Сведения о настройке конвейера фабрики данных Azure (ADF) для копирования и хранения журналов в ADX см. в разделе Копирование данных в Azure Data Explorer и обратно. В ADX можно запустить производительный запрос Kusto для анализа журналов. Здесь можно сочетать и другие стратегии (например, для запроса и загрузки выходных данных динамического административного представления в ADX через ADF).

Преимущества:

  • В ADX предлагается настраиваемая политика хранения журналов.
  • Производительное выполнение запросов к большим объемам данных, особенно с поиском по строкам.

Известное ограничение.

  • Использование KQL требует отдельного обучения.

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