Поделиться через


Включение статистики сканирования для запросов

Важный

Служба Azure HDInsight на платформе AKS была прекращена 31 января 2025 г. Узнайте больше с этим объявлением.

Необходимо перенести рабочие нагрузки в Microsoft Fabric или эквивалентный продукт Azure, чтобы избежать резкого завершения рабочих нагрузок.

Важный

Эта функция сейчас доступна в предварительной версии. Дополнительные условия использования для предварительных версий Microsoft Azure включают дополнительные юридические термины, применимые к функциям Azure, которые находятся в бета-версии, в предварительной версии или в противном случае еще не выпущены в общую доступность. Сведения об этой конкретной предварительной версии см. в информации о предварительном просмотре Azure HDInsight на AKS. Для вопросов или предложений функций отправьте запрос на AskHDInsight с подробными сведениями и следуйте за дополнительными обновлениями в Azure HDInsight Community.

Часто команды данных требуются для изучения производительности или оптимизации запросов для улучшения использования ресурсов или удовлетворения бизнес-требований.

Добавлена новая возможность в Trino для HDInsight в AKS, которая позволяет пользователю записывать статистику сканирования для любого соединителя. Эта возможность обеспечивает более подробную информацию о профиле производительности запросов за пределами того, что доступно в статистике, созданной Trino.

Эту функцию можно включить с помощью свойства сеанса collect_raw_scan_statisticsи следующей команды Trino:

SET SESSION collect_raw_scan_statistics=true

После включения исходные операторы в запросе, например TableScanOperator, ScanFilterAndProject и т. д., имеют статистику по сканированию данных, степень детализации зависит от экземпляра оператора в конвейере.

Кончик

Статистика сканирования полезна для выявления узких мест, когда кластер или запрос не ограничен ЦП, и необходимо провести исследование производительности чтения запроса. Он также помогает понять профиль выполнения запроса с точки зрения разделения уровня.

Заметка

В настоящее время захваченное количество разбиений для каждого рабочего ограничено 1000 из-за ограничений размера получаемых данных. Если количество разбиений на рабочую роль для запроса превышает это ограничение, возвращаются первые 1000 наиболее длительных разбиений.

Как получить доступ к статистике сканирования

После установки свойства сеанса последующие запросы в сеансе начинают записывать статистику из исходных операторов всякий раз, когда они доступны. Существует несколько способов использования и анализа статистики сканирования, созданной для запроса.

запрос JSON

Вкладка JSON на странице сведений о запросе предоставляет JSON представление запроса, которое включает статистику на каждом этапе и конвейер запроса. Если задано свойство сеанса, json включает новое поле с именем scanStats в queryStats.operatorSummaries[*]. Массив содержит один объект для каждой инстанции оператора.

В следующем примере показан json для запроса с помощью hive connector и включена статистика сканирования.

Заметка

Сводка статистики сканирования включает в себя splitInfo, который заполняется соединителем. Это позволяет пользователям контролировать, какую информацию о магазине они хотят включить в свои пользовательские соединители.

снимок экрана: сводка по производительности запросов.

Интерфейс статистики сканирования

Вы можете найти новую вкладку с именем Scan Stats на странице сведений о запросе, которая визуализирует статистику, созданную этой функцией, и предоставляет аналитические сведения о производительности при разделении задач для каждого рабочего. Страница позволяет пользователям просматривать профиль выполнения Trino для запроса, с информацией, например, об одновременном чтении по времени и пропускной способности.

снимок экрана с добавлением состояния сканирования.

В следующем примере показана страница запроса с включенной статистикой сканирования.

снимок экрана, на котором показана вкладка состояния сканирования.

Использование средства ведения журнала Microsoft Query**

Средство ведения журнала запросов Microsoft имеет встроенную поддержку этой функции. При включении этой функции подключаемый модуль средства ведения журнала запросов заполняет таблицу с именем operatorstats вместе с таблицей событий запроса, эта таблица денормализована таким образом, чтобы каждый экземпляр оператора был одной строкой для каждого запроса.