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


Профиль запроса

Вы можете использовать профиль запроса для визуализации сведений о выполнении запроса. Профиль запроса помогает устранять узкие места производительности, возникающие при выполнении запроса. Например:

  • Вы можете визуализировать каждый оператор запроса и связанные метрики, например время, количество обработанных строк, обработанных строк и потребление памяти.
  • Вы можете быстро определить наиболее медленную часть выполнения запроса и оценить влияние изменений на запрос.
  • Вы можете обнаружить и устранить распространенные ошибки в инструкциях SQL, таких как взрыв соединения или полные проверки таблиц.

Требования

Чтобы просмотреть профиль запроса, необходимо либо быть владельцем запроса, либо иметь по крайней мере разрешение CAN MONITOR на хранилище SQL, выполняющего запрос.

Просмотр профиля запроса

Профиль запроса можно просмотреть из журнала запросов, выполнив следующие действия.

  1. Просмотр журнала запросов.

  2. Щелкните название запроса. Откроется панель сведений о запросе справа от экрана.

    Простое представление сводки выполнения запроса

  3. Щелкните "Просмотреть профиль запроса".

    Примечание.

    Если отображается сообщение Профиль запроса недоступен, для этого запроса нет ни одного доступного профиля. Профиль запроса недоступен для запросов, выполняемых из кэша запросов. Чтобы обойти кэш запросов, внесите незначительные изменения в запрос, например измените или удалите LIMIT.

  4. Чтобы просмотреть профиль запроса в представлении графа (по умолчанию), щелкните Представление графа. Чтобы просмотреть профиль запроса в виде дерева, щелкните Дерево.

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

    • Время, затраченное: агрегированное время, затраченное на каждую операцию. Также предоставляется общее время задачи.
    • Строки: количество и размер строк, затронутых каждым из операторов запроса.
    • Пиковая память: объем памяти, который потребляли операторы каждого запроса.

    Примечание.

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

  6. В представлении графа можно щелкнуть оператор, чтобы отобразить подробные метрики. В представлении дерева можно щелкнуть имя оператора, чтобы просмотреть связанные сведения.

  7. Каждый узел обозначается своей операцией. По умолчанию метрики для некоторых операций скрыты. Эти операции вряд ли станут причиной узких мест в производительности. Чтобы просмотреть сведения обо всех операциях и просмотреть дополнительные метрики, нажмите на «Меню Кебаб» в верхней части страницы, затем нажмите «Включить подробный режим». Самые распространенные операции:

    • Scan (Сканирование): данные считаны из источника данных и выведены в виде строк.
    • Присоединение: строки из нескольких отношений были объединены (перемешаны) в один набор строк.
    • Union: строки из нескольких отношений, использующих одну схему, были объединены в один набор строк.
    • Shuffle: данные были перераспределены или повторно разбиты на секции. Операции перетасовки являются дорогостоящими с точки зрения использования ресурсов, так как они перемещают данные между выполнителями в кластере.
    • Hash / Sort (Хэширование или сортировка): строки были сгруппированы по ключу. Также строки в каждой группе были вычислены с помощью агрегатной функции, такой как SUM, COUNT или MAX.
    • Filter (Фильтрация): входные данные фильтруются по критерию, например с помощью предложения WHERE, и возвращается подмножество строк.
    • (Reused) Exchange: операция Shuffle или Broadcast используется для повторного распределения данных между узлами кластера в зависимости от нужного секционирования.
    • Лимит выборки: количество строк, возвращаемых запросом, было усечено с помощью инструкции LIMIT.
    • Take Ordered And Project (Выборка упорядоченных и проектирование): в результате запроса были возвращены первые N строк.
  8. (Необязательно) Для запросов Databricks SQL можно также просмотреть профиль запроса в пользовательском интерфейсе Apache Spark. Меню Кебаб Щелкните меню кебаб в верхней части страницы и нажмите кнопку "Открыть в пользовательском интерфейсе Spark".

  9. Чтобы закрыть профиль запроса, нажмите кнопку "Скрыть профиль запроса" в нижней части панели.

Вы также можете получить доступ к профилю запроса в следующих частях пользовательского интерфейса:

  • В редакторе SQL: когда запрос завершается, ссылка в нижней части страницы показывает время, прошедшее и количество возвращаемых строк. Щелкните такую ссылку, чтобы открыть панель сведений о запросе. Щелкните Просмотреть профиль запроса.

    Открытие журнала запросов из выходных данных редактора

    Примечание.

    Если у вас включен новый редактор SQL (общедоступная предварительная версия), ваша ссылка отображается так, как в записной книжке.

  • Из записной книжки: если записная книжка подключена к хранилищу SQL или бессерверным вычислениям, вы можете получить доступ к профилю запроса с помощью ссылки под ячейкой, содержащей запрос. Нажмите кнопку "Просмотреть производительность ", чтобы открыть журнал выполнения. Щелкните запрос, чтобы открыть панель сведений о запросе.

    Открыть выходные данные журнала запросов в записной книжке

  • Из пользовательского интерфейса конвейера DLT: вы можете получить доступ к истории запросов и профилю на вкладке История запросов в интерфейсе конвейера. См. журнал запросов Access для конвейеров DLT

  • Из пользовательского интерфейса заданий: это относится только к бессерверным заданиям. Сведения о том, как открыть профиль запроса из пользовательского интерфейса заданий, см. в статье "Запуск задания Azure Databricks с бессерверными вычислениями для рабочих процессов".

Просмотр сведений о профиле запроса

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

  1. Используйте кнопку 'Время затрачено', кнопку 'Строки' и кнопку 'Пиковая память' в верхней части представления профиля запроса, чтобы просмотреть метрики верхнего уровня для каждой категории.
  2. Щелкните оператор, чтобы просмотреть сведения об операции, например описание и метрики о продолжительности, используемой памяти, количестве и размере возвращаемых строк, а также любых выражениях группировки и агрегирования или выходных атрибутах.
  3. Чтобы закрыть сведения о операторе, нажмите кнопку "Назад к запросу".
  4. Чтобы закрыть профиль запроса, нажмите кнопку "Скрыть профиль запроса" в нижней части правой панели.

Поделиться профилем запроса

Чтобы предоставить общий доступ к профилю запроса другому пользователю, сделайте следующее:

  1. Просмотр журнала запросов.
  2. Щелкните имя запроса.
  3. Чтобы предоставить общий доступ к запросу, у вас есть два варианта:
    • Если у другого пользователя есть разрешение CAN MANAGE на запросе, вы можете поделиться URL-адресом профиля запроса с ним. Нажмите Поделиться. URL-адрес скопируется в буфер обмена.
    • В противном случае, если другой пользователь не имеет разрешения CAN MANAGE или не является членом рабочей области, можно скачать профиль запроса в виде объекта JSON. Загрузить. Файл JSON будет загружен в локальную систему.

Импорт профиля запроса

Чтобы импортировать JSON для профиля запроса, выполните следующие действия:

  1. Просмотр журнала запросов.

  2. Щелкните меню kebab меню Kebab в правом верхнем углу и выберитеИмпорт профиля запроса (JSON).

  3. В браузере файлов выберите json-файл, который был предоставлен вам, и щелкните Открыть. Отправится файл JSON, и отобразится профиль запроса.

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

  4. Чтобы закрыть импортированный профиль запроса, нажмите X в верхней части страницы.

Следующие шаги