Использование обозревателя и представления заданий Azure Data Lake Analytics
Служба Azure Data Lake Analytics архивирует отправленные задания в хранилище запросов. В этой статье вы узнаете, как использовать браузер и представление заданий в средствах Azure Data Lake для Visual Studio, чтобы находить исторические сведения о заданиях.
По умолчанию служба Data Lake Analytics архивирует задания на 30 дней. Срок хранения можно настроить на портале Azure в настраиваемой политике окончания срока действия. Доступ к данным задания по истечении этого срока невозможен.
Предварительные требования
Доступ к браузеру заданий
доступ к обозревателю заданий с помощью обозреватель сервера > заданий Data Lake Analytics > Azure > в Visual Studio. С помощью браузера заданий можно получить доступ к хранилищу запросов учетной записи Data Lake Analytics. В браузере заданий слева отображается хранилище запросов, в котором видны базовые сведения о задании, а справа — представление задания с подробными сведениями о задании.
Представление задания
В представлении задания отображаются подробные сведения о задании. Чтобы открыть задание, дважды щелкните его в браузере или откройте его из меню Data Lake, щелкнув пункт Job View ("Представление задания"). Вы увидите диалоговое окно с URL-адресом задания.
Представление задания содержит:
Сводные данные задания
Обновите представление задания, чтобы увидеть новые сведения о выполняющемся задании.
Состояние задания (граф).
На графе "Состояние задания" отображаются основные этапы задания:
Подготовка. Загрузите скрипт в облако, компилировав и оптимизировав сценарий с помощью службы компиляции.
В очереди. Задания находятся в очереди, пока ожидают появления достаточного количества ресурсов, или количество заданий превышает максимальное число заданий, выполняемых одновременно, на учетную запись. Параметр приоритета определяет последовательность постановки заданий в очередь: чем меньше число, тем выше приоритет.
Выполняется. Задание выполняется в учетной записи Data Lake Analytics.
Завершение. Задание завершается (например, завершение работы с файлом).
На любом этапе может произойти сбой задания, например ошибка компиляции на этапе подготовки, истечения времени ожидания на этапе "В очереди" или выполнения на этапе "Выполняется" и т. д.
В нижней части панели "Сводка по заданию" отображаются основные сведения о задании.
- Job Result ("Результат задания"). "Успешно" или "Сбой". Сбой задания может произойти на любом этапе.
- Total Duration ("Общая длительность"). Время с момента отправки и до момента завершения по часам (длительность).
- Total Compute Time ("Общее время вычислений"). Сумма количества времени, затраченного на выполнение каждой вершины. Его можно учитывать как время выполнения задания только с одной вершиной. Дополнительные сведения о вершинах см. в данных о параметре Total Vertices ("Общее количество вершин").
- Submit Time ("Время отправки"), "Время начала" и "Время окончания". Время, когда служба Data Lake Analytics получила задание, начала его выполнение и успешно или с ошибкой завершила задание.
- Compilation ("Компиляция"), "В очереди" и "Выполняется". Время, затраченное на фазу "Подготовка", "В очереди" и "Выполняется" по часам.
- Учетная запись. Учетная запись Data Lake Analytics, использованная для запуска задания.
- Автор. Пользователь, отправивший задание, используя учетную запись реального пользователя или системную запись.
- Приоритет. Приоритет задания. Чем меньше число, тем выше приоритет. Он влияет только на последовательность заданий в очереди. Если установить более высокое значение, приоритет не станет выше, чем у выполняемых заданий.
- Параллелизм. Максимальное количество одновременно используемых единиц Azure Data Lake Analytics, которые еще называются вершинами. Сейчас одна вершина равна одной виртуальной машине с двумя виртуальными ядрами и 6 ГБ ОЗУ, хотя это может измениться в будущих обновлениях Data Lake Analytics.
- Bytes Left ("Оставшееся количество байтов"). Байты, которые необходимо обработать, чтобы завершить выполнение задания.
- Bytes read ("Прочитанные байты") и Bytes written ("Записанные байты"). Количество байтов, прочитанных или записанных с начала выполнения задания.
- Total vertices ("Общее количество вершин"). Задание разбивается на множество рабочих частей, каждая из которых называется вершиной. Это значение указывает, из скольких рабочих частей состоит задание. Вершину можно рассматривать как основную единицу обработки, которую еще называют единицей Azure Data Lake Analytics. Вершины могут выполняться параллельно.
- "Завершено", "Выполняется", "Сбой". Количество завершенных, выполняемых вершин и вершин со сбоем. Сбой вершины может происходить из-за ошибки в коде пользователя и системе, но через некоторое время система автоматически выполняет повторную попытку выполнить такие вершины. Если после повторной попытки все равно произошел сбой, происходит сбой всего задания.
Скрипт U-SQL представляет логику преобразования входных данных в выходные. Скрипт компилируется и оптимизируется в виде плана физического выполнения на этапе подготовки. На графе задания показан план физического выполнения. На схеме ниже показан соответствующий процесс:
Задание разбивается на множество рабочих частей. Каждая рабочая часть называется вершиной. Вершины группируются в качестве супервершин (также называемых стадиями) и визуализируются в виде графа задания. Зеленые таблички на графе задания представляют собой стадии.
Каждая вершина стадии предусматривает аналогичные действия с различными частями одних и тех же данных. Например, если у вас есть файл данных размером 1 ТБ, а для его чтения используются сотни вершин, каждая из них обеспечивает чтение одного из блоков данных. Эти вершины группируются в одну стадию и выполняют различные действия с разными частями одного файла входных данных.
Сведения о стадии.
В зависимости от стадии на табличках появляются цифры.
SV1 Extract. Имя стадии, указанное согласно номеру и операционному методу.
84 vertices ("84 вершины"). Общее число вершин на этом этапе. На рисунке видно, на сколько частей делится работа на этой стадии.
12.90 s/vertex ("12,9 с/вершина"). Среднее время выполнения вершины для конкретной стадии. На этом рисунке показаны данные, вычисленные на основе суммы (времени выполнения каждой вершины), разделенной на общее число вершин. Это значит, что если назначено параллельное выполнение всех вершин, вся стадия завершится за 12,9 с. Это также значит, что если всю работу на этом этапе выполнять последовательно, время можно рассчитать, умножив количество вершин на среднее время.
850,895 rows written ("Записаны 850 895 строк"). Общее число строк, записанных на этой стадии.
R ("Ч") и W ("З"). Объем данных, прочитанных и записанных на этом этапе, в байтах.
Цвета. Чтобы указать состояние различных вершин используются разные цвета.
- Зеленый цвет значит, что вершина успешно выполнена.
- Оранжевый цвет обозначает повторную попытку выполнения вершины. Произошел сбой вершины, но автоматически предпринята повторная попытка выполнить вершину, которая успешно завершилась, как и вся стадия. Если после повторной попытки произошел сбой, используется красный цвет и происходит сбой всего задания.
- Красный цвет указывает на сбой. Это значит, что в системе выполнено несколько повторных попыток для определенной вершины, но все они завершились сбоем. При таком сценарии происходит сбой всего задания.
- Синий цвет значит, что вершина выполняется.
- Белый цвет значит, что вершина пребывает в состоянии ожидания. Возможно, вершина ожидает, когда станет доступна единица Azure Data Lake Analytics, чтобы вершину можно было запланировать, или она ожидает ввода, так как ее входные данные не готовы.
Дополнительные сведения о стадии можно увидеть, наведя курсор мыши на одну из стадий:
Вершины. Подробные сведения о вершинах, такие как их общее количество, количество завершенных вершин, вершин со сбоем, выполняемых вершин, вершин в ожидания и т. д.
Data read cross pod ("Данные из одного модуля, прочитанные в другом") и Data read intra pod ("Данные прочитанные в пределах модуля"). Файлы и данные, хранящиеся в нескольких модулях в распределенной файловой системе. Эти значения обозначают объем данных, прочитанных в одном модуле и межу модулями.
Total Compute Time ("Общее время вычислений"). Сумма количества времени, затраченного на выполнение каждой вершины на стадии. Его можно учитывать как время выполнения всей работы на стадии только с одной вершиной.
Data and rows written ("Записанные данные и строки") и Data and rows read ("Прочтенные данные и строки"). Указывают, сколько данных или строк прочитаны, записаны или необходимо прочитать.
Vertex read failures ("Сбои чтения вершин"). Количество вершин, для которых произошел сбой при чтении данных.
Vertex duplicate discards ("Отмененные повторяющиеся вершины"). Если вершина выполняется слишком медленно, система может запланировать несколько вершин для одной части работы. После успешного выполнения одной вершины избыточные будут отменены. Счетчик отмены повторяющихся вершин записывает число вершин, удаленных из-за повторения на стадии.
Vertex revocations ("Отзывы вершин"). Количество вершин, выполненных успешно, но по некоторым причинам запущенных повторно. Например, если подчиненная вершина утратит промежуточные входные данные, будет предложено снова запустить вышестоящую вершину.
Выполненные расписания вершин. Общее время запланированных вершин.
Min Vertex data read ("Минимальный объем прочтенных данных"), Average Vertex data read ("Средний объем прочтенных данных"), Max Vertex data read ("Максимальный объем прочтенных данных"). Минимальный, средний и максимальный объем прочтенных данных каждой вершины.
Длительность. Время, необходимое для выполнения стадии, по часам. Чтобы просмотреть это значение, необходимо загрузить профиль.
Data Lake Analytics запускает задания и архивирует вершины, с информацией о заданиях, например о том, когда запускались или останавливались вершины, когда происходили сбои и попытки повторного выполнения и т. д. Вся информация автоматически записывается в хранилище запросов и хранится в профиле задания. Профиль задания можно скачать, нажав кнопку Load Profile ("Загрузить профиль"), после чего можно просматривать воспроизведение задания.
Воспроизведение задания — это уменьшенная визуализация событий, произошедших в кластере. Она позволяет наблюдать за выполнением задания и быстро (менее чем за 30 секунд) визуально обнаруживать аномалии производительности и узкие места.
Отображение тепловой карты задания
Тепловую карту задания можно выбрать в раскрывающемся меню Display ("Отображение") на графе задания.
Здесь показываются данные о вводе-выводе, тепловая карта времени и пропускной способности задания, на основе которой можно определить, какая часть занимает больше времени и есть ли в задании ограничение ввода-вывода и т. д.
- Ход выполнения. Выполнение задания, дополнительные сведения см. в информации стадии.
- Data read ("Прочитанные данные"), Data written ("Записанные данные"). Тепловая карта общего объема данных, записанных или прочитанных на каждой стадии.
- Compute time ("Время вычислений"). Тепловая карта суммы (времени выполнения каждой вершины). Ее можно рассматривать как время, которое займет вся работа на стадии, выполняемая только с одной вершиной.
- Average execution time per node ("Среднее время выполнения для каждого узла"). Тепловая карта суммы (времени выполнения каждой вершины), разделенной на число вершин. Это значит, что если назначено параллельное выполнение всех вершин, вся стадия будет выполнена за этот промежуток времени.
- Input throughput ("Пропускная способность ввода") и Output throughput ("Пропускная способность вывода"). Тепловая карта пропускной способности ввода и вывода каждой стадии. Она позволяет узнать, есть ли в задании ограничение ввода-вывода.
Metadata Operations ("Операции с метаданными").
Вы можете выполнять в скрипте U-SQL некоторые операции с метаданными, такие как создание базы данных, удаление таблицы и т. д. Эти операции отображаются на вкладке "Операции с метаданными" после компиляции. Здесь можно искать утверждения, создавать сущности, а также перетаскивать сущности сюда.
State History ("Журнал состояний").
На панели "Сводка по заданию" также отображается вкладка State History ("Журнал состояний"). Здесь можно получить дополнительные сведения, такие как время подготовки задания, его постановки в очередь, запуска и завершения. Здесь также можно узнать, сколько раз скомпилировано задание (CcsAttempts:1) и когда оно фактически отправлено в кластер (Detail: Dispatching job to cluster) и т. д.
Это средство автоматически диагностирует выполнение задания. При возникновении ошибок или проблем с производительностью в ваших заданиях будут выводиться предупреждения. Обратите внимание, что необходимо загрузить профиль, чтобы здесь можно было получить полную информацию.
- Warnings ("Предупреждения"). Здесь отображаются оповещения с предупреждениями компилятора. После появления оповещения можно щелкнуть ссылку x issue(s) ("Проблемы: x"), чтобы получить дополнительные сведения.
- Vertex run too long ("Вершины выполняются слишком долго"). Если для одной из них не хватает времени (к примеру, вершина выполняется 5 часов), эта проблема будет отображаться здесь.
- Resource usage ("Использование ресурсов"). Если для параметра "Параллелизм" установлено значение меньше или больше, чем необходимое, эта проблема будет указана здесь. Вы также можете щелкнуть ссылку Resource usage ("Использование ресурсов"), чтобы получить дополнительные сведения и выполнить гипотетические сценарии для определения более эффективного выделения ресурсов (дополнительные сведения см. в этом руководстве).
- Memory check ("Проверка памяти"). Если какая-либо вершина использует более 5 ГБ памяти, эта проблема будет отображаться здесь. Система может завершить выполнение задания, если используется больше памяти, чем предусмотрено в системном ограничении.
Job Detail ("Сведения о задании").
В разделе сведений о задании отображаются подробные данные о задании, в том числе скрипт, ресурсы и представление выполнения вершин.
Скрипт U-SQL задания, содержащийся в хранилище запросов. При необходимости вы можете просматривать исходный скрипт U-SQL и отправлять его повторно.
Выходные данные компиляции задания, содержащиеся в хранилище запросов в разделе ресурсов. Например, здесь вы можете найти файл algebra.xml, который используется для отображения графа задания, зарегистрированных сборок и т. п.
Представление выполнения вершин.
Здесь показываются сведения о выполнении вершин. Профиль задания архивирует каждый журнал выполнения вершин, например сведения об общем объеме считанных и записанных данных, среде выполнения, состоянии и т. д. В этом представлении приводятся дополнительные сведения о выполнении задания. Дополнительные сведения см. в статьеИспользование представления выполнения вершин в инструментах Data Lake для Visual Studio.