Обзор Query Profile
Эта тема знакомит с тем, как просматривать и анализировать Query Profile. Query Profile записывает информацию о выполнении для всех рабочих узлов, участвующих в запросе. Вы можете быстро выявить узкие места, влияющие на производительность запроса, через Query Profile.
Начиная с версии 1.5.0, Selena поддерживает предоставление Query Profile для загрузки данных с пом ощью INSERT INTO FILES() и Broker Load. Подробности о задействованных метриках см. в OlapTableSink Operator.
Включение Query Profile
Вы можете включить Query Profile, установив переменную enable_profile в true:
SET enable_profile = true;
Включение Query Profile для медленных запросов
Не рекомендуется включать Query Profile в производственной среде на глобальной, долгосрочной основе. Это связано с тем, что сбор и обработка данных Query Profile может создать дополнительную нагрузку на систему. Однако, если вам нужно захватывать и анализировать медленные запросы, вы можете включить Query Profile только для медленных запросов. Это можно достичь, установив переменную big_query_profile_threshold на продолжительность времени больше 0s. Например, если эта переменная установлена в 30s, это означает, что только запросы с временем выполнения более 30 секунд будут запускать Query Profile. Это обеспечивает производительность системы при эффективном мониторинге медленных запросов.
-- 30 секунд
SET global big_query_profile_threshold = '30s';
-- 500 миллисекунд
SET global big_query_profile_threshold = '500ms';
-- 60 минут
SET global big_query_profile_threshold = '60m';
Включение Runtime Query Profile
Некоторые запросы могут выполняться долго, от секунд до часов. Часто сложно определить, продолжается ли выполнение запроса или система зависла до завершения запроса. Для решения этой проблемы Selena представила функцию Runtime Query Profile в версии 3.1 и более поздних. Эта функция позволяет собирать и отчитываться о данных Query Profile через фиксированные интервалы времени во время выполнения запроса. Это дает вам представление о ходе выполнения запроса и потенциальных узких местах в реальном времени, не дожидаясь завершения запроса. Таким образом, вы можете более эффективно мониторить и оптимизировать процесс запроса.
Когда Query Profile включен, эта функция автоматически активируется с интервалом отчетности по умолчанию 10 секунд. Вы можете настроить интервал, изменив переменную runtime_profile_report_interval:
SET runtime_profile_report_interval = 30;
Runtime Query Profile имеет тот же формат и содержание, что и обычный Query Profile. Вы можете анализировать Runtime Query Profile так же, как анализируете обычный Query Profile, чтобы понять метрики производительности запросов, выполняющихся в кластере.
Настройка поведения Query Profile
Настройки конфигурации являются либо переменными сессии, либо элементами динамической конфигурации FE.