Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Когда ваши запросы выполняются, Azure Databricks возвращает аналитику по производительности запросов, которая отмечает возможности для повышения производительности и сообщает о уже применённых оптимизациях. Каждая аналитика содержит рекомендации, по которым можно действовать, например, по компактизации небольших файлов, сбору статистики или изменению размера склада.
Поиск аналитических сведений и рекомендаций для запроса
Аналитика отображается в журнале запросов и в профиле запроса. На панели сведений о запросе отображается сводка аналитических сведений, ранжированных по их предполагаемому эффекту на общую длительность задачи. На вкладке "Аналитика производительности " в профиле запроса отображаются полные сведения для каждого аналитических сведений.
Оптимизация с помощью кода Genie
Если запрос содержит аналитические сведения, доступные для действий, выберите "Оптимизировать" , чтобы открыть Код Genie. Для аналитических сведений, требующих изменения запроса, Genie Code перезаписывает запрос и представляет изменения для утверждения. Для аналитических сведений, связанных с изменениями таблицы или вычислений, Genie Code суммирует рекомендуемые действия в виде текста обычного языка.
Дополнительные сведения о работе с Genie Code см. в разделе Genie Code.
Аналитика оптимизации запросов
COVERAGE_FILTER_KEYS_CLUSTERING
Таблица кластеризована одним или несколькими ключами, которые не используются в фильтрах во время сканирования таблицы.
Рекомендации: Добавьте фильтры в ключи кластеризации, чтобы сократить чтение байтов.
COVERAGE_FILTER_KEYS_PARTITIONING
Таблица секционируется одним или несколькими ключами, которые не используются в фильтрах во время сканирования таблицы.
Рекомендации: Добавьте фильтры на ключи секционирования, чтобы уменьшить количество операций чтения байтов.
COVERAGE_PHOTON
Фотон не может ускорить эту операцию, поэтому запрос использует стандартный механизм среды выполнения.
Рекомендации: Просмотрите ограничения Photon и настройте запрос, чтобы использовать поддерживаемый путь выполнения.
EXPLODING_JOIN
Соединение создает значительно больше строк, чем оно считывает.
Рекомендации: Определите нужное подмножество результатов, а затем обновите условие соединения или уменьшите количество входных строк из обоих отношений.
FLOW_FULL_RECOMPUTE
Поток выполняется как полный перекомпьютер.
Рекомендации: Переопределите запрос добавочной поддержки , чтобы уменьшить число операций чтения байтов.
REDUNDANT_AGGREGATION
Статистическая операция не изменила результат запроса.
Рекомендации: Удалите агрегат или примените ограничения первичного и внешнего ключа.
REDUNDANT_JOIN
Внешнее соединение не меняло количество строк на внешней стороне, и столбцы из объединённой таблицы не использовались.
Рекомендация: Удалите объединение или примените первичный ключ или уникальные ограничения.
SELECTIVE_JOIN
Соединение создает значительно меньше строк, чем оно считывает.
Рекомендации: Определите нужное подмножество результатов, а затем добавьте фильтры перед присоединением для уменьшения входных строк.
WIDE_PROJECTION
Запрос проектов всех столбцов из таблицы.
Рекомендация. Project только столбцы, необходимые для уменьшения количества операций чтения байтов.
Аналитика макета данных
Одновременная_Запись
Одновременные операции записи в таблицу вызывают конфликты , которые автоматически разрешаются или завершаются сбоем.
Рекомендации: Просмотрите журнал разностных данных, чтобы определить одновременные записи и настроить планирование, чтобы избежать конфликтов.
COVERAGE_STATS_DELTA
Статистика пропуска данных Delta отсутствует или неполна для фильтров файлов сканирования таблицы, и запрос использует фильтрацию по файлу.
Состояние статистики для каждого фильтра может быть одним из следующих:
- Полный: Статистика доступна для всех фильтров.
- Частичное: Статистика доступна для подмножества фильтров.
- Недоступен: Статистика недоступна для любого фильтра.
- Неиспользуемые: Не удается использовать статистику, так как фильтр преобразует тип данных.
Рекомендация.Сборстатистики разностной информации для уменьшения байтов чтения.
COVERAGE_STATS_OPTIMIZER
Статистика оптимизатора на основе затрат отсутствует или неполна, поэтому план запроса использует стандартные эвристики.
Рекомендация.Сборстатистики, чтобы оптимизатор мог создать лучший план.
DATA_FILE_SIZE
Сканирование таблицы считывает множество небольших файлов, что увеличивает время сканирования.
Recommendations:
- Включите предиктивную оптимизацию на столе для автоматической оптимизации размеров файлов.
- Запусти OPTIMIZE для сжатия небольших файлов.
- Переходите на жидкую кластеризацию для разделённых таблиц, потому что предиктивная оптимизация не может сжимать маленькие файлы между разделами.
DATA_SKEW
Данные распределяются неравномерно между вычислительными ресурсами.
Рекомендации: Просмотрите распределение данных, а затем используйте соль ключей или предварительную агрегирование для балансировки рабочей нагрузки.
MANUAL_DATA_LAYOUT
Таблица оптимизирована вручную и может использовать автоматическую кластеризацию жидкостей.
Recommendations:
- Преобразуйте таблицу из внешней среды в управляемое для повышения производительности и автоматического обслуживания.
- Включите прогнозную оптимизацию в таблице для автоматических операций обслуживания.
- Включите автоматическое кластеризация в таблице, чтобы сократить чтение байтов.
Аналитика вычислительных ресурсов и вычислений
DATA_SPILL
Данные разлились на диск во время выполнения запроса, так как данные не помещались в память.
Рекомендации: Увеличьте размер хранилища для добавления памяти. Уменьшите количество строк, столбцов или размер больших столбцов (строк, массивов, карт, структур) для уменьшения использования памяти.
EXCESSIVE_QUEUE_TIME
Запрос ждал в очереди хранилища .
Рекомендации: Увеличьте максимальное количество кластеров в хранилище, чтобы сократить время очереди.
IO_THROTTLING
Запрос облачного хранилища регулируется поставщиком облачных служб.
Рекомендации: Обратитесь к администратору, чтобы запросить увеличенные ограничения на хранение от поставщика облачных служб.
Прикладные ускорения
Эти данные описывают оптимизации, которые Azure Databricks уже применял при выполнении запросов. Они отображаются во вкладке Performance Insights с меткой Accelerated и не требуют действий.
AUTO_LIQUID_CLUSTERING
Этот запрос читает меньше данных, поскольку его таблицы используют автоматическую кластеризацию жидкостей. Azure Databricks постоянно кластеризует каждую таблицу по ключам, которые она изучает из вашей нагрузки, поэтому сканирует пропуск файлов, которые не могут совпасть с фильтрами. Настройка или ручное разбиение не требуется.
HISTORY_BASED_JOIN_STRATEGY
Azure Databricks оптимизировал соединение этого запроса, используя измерения предыдущих похожих запросов. Он выбрал broadcast-join вместо перемещения данных по кластеру, основываясь на истории вашей рабочей нагрузки. Изменение запроса не требуется.
SHORT_QUERY_PRIORITIZATION
Несмотря на то, что кластер был полностью загружен, Azure Databricks предположил, что этот запрос будет коротковременным, и сразу же запустил его по быстрому пути, вместо того чтобы держать в очереди за более тяжёлыми запросами. Это позволяет интерактивным рабочим нагрузкам быть отзывчивыми под нагрузкой.
Дополнительные ресурсы
Более широкий обзор рекомендаций по повышению производительности см. в комплексном руководстве по оптимизации databricks, Spark и Delta Lake Workloads.