在 Azure Data Lake Analytics 中使用作业浏览器和作业视图

重要

Azure Data Lake Analytics 于 2024 年 2 月 29 日停用。 通过此公告了解详细信息。

对于数据分析,组织可以使用 Azure Synapse AnalyticsMicrosoft Fabric

Azure Data Lake Analytics 服务在查询存储中存档提交的作业。 本文介绍如何使用适用于 Visual Studio 的 Azure Data Lake 工具中的作业浏览器和作业视图查找历史作业信息。

默认情况下,Data Lake Analytics 服务将作业存档 30 天。 可以通过配置自定义过期策略,从 Azure 门户配置过期期限。 过期后无法访问作业信息。

先决条件

请参阅 用于 Visual Studio 的 Data Lake 工具先决条件

打开作业浏览器

在 Visual Studio 中,通过 服务器资源管理器>Azure>Data Lake Analytics>作业 访问作业浏览器。 使用作业浏览器,可以访问 Data Lake Analytics 账户中的查询存储。 作业浏览器在左侧显示“查询存储”,展示基本作业信息,右侧则显示“作业视图”,提供详细的作业信息。

作业视图

作业视图显示作业的详细信息。 若要打开作业,可以在作业浏览器中双击某个作业,也可以通过单击“作业视图”从 Data Lake 菜单中将其打开。 应会看到一个用作业 URL 填充的对话框。

Data Lake 工具 Visual Studio 作业浏览器

作业视图包含:

  • 作业摘要

    刷新作业视图以查看有关运行作业的最新信息。

    • 作业状态(图):

      作业状态概述了作业阶段:

      显示 Azure Data Lake Analytics 作业阶段的屏幕截图。

      • 准备:将脚本上传到云,使用编译服务编译和优化脚本。

      • 已排队:作业在资源不足时会排队,或者因为作业数量超出每个账户允许的最大同时作业数。 优先级设置确定排队作业序列 - 数字越低,优先级越高。

      • 正在运行:该作业实际上在您的 Data Lake Analytics 帐户中运行。

      • 完成:作业正在完成(例如,完成文件)。

        作业在每个阶段都可能会失败。 例如,准备阶段中的编译错误、排队阶段中的超时错误以及运行阶段中的执行错误等。

    • 基本信息

      基本作业信息显示在“作业摘要”面板的下半部分。

      显示“作业摘要”的屏幕截图,其中显示了文本框中的说明。

      • 作业结果:成功或失败。 作业有可能在每个阶段失败。
      • 总持续时间:提交时间和结束时间之间的时钟时间(持续时间)。
      • 总计算时间:每个顶点执行时间的总和,你可以将其视为作业在一个顶点中执行的时间。 有关顶点的详细信息,请参阅“顶点总数”。
      • 提交/开始/结束时间:Data Lake Analytics 服务接收作业提交/开始运行作业/成功结束作业的时间。
      • 编译/排队/运行:准备/排队/运行阶段所用的实际时间。
      • 帐户:用于运行作业的 Data Lake Analytics 帐户。
      • 作者:提交任务的用户,可以是真实人员的帐户或系统帐户。
      • 优先级:作业的优先级。 编号越低,优先级越高。 它只影响队列中作业的顺序。 设置更高的优先级不会抢断正在运行的作业。
      • 并行度:请求的最大并发 Azure Data Lake Analytics 单元数(ADLAU),也称为顶点。 目前,一个顶点等于一个具有两个虚拟核心和六 GB RAM 的 VM,不过这可以在将来的 Data Lake Analytics 更新中升级。
      • 剩余字节数:在作业完成之前需要处理的字节数。
      • 读取/写入的字节数:自作业开始运行以来已读/写的字节数。
      • 顶点总数:作业分为许多工作块,每个工作部分称为顶点。 此值描述作业包含的工作片段数。 可以将顶点视为基本进程单元,也称为 Azure Data Lake Analytics 单元(ADLAU),并且顶点可以并行运行。
      • 完成/运行中/失败:完成/运行中/失败的顶点数量。 由于用户代码和系统故障,顶点可能会失败,但系统会自动重试失败的顶点。 如果重试后顶点仍然失败,则整个作业将失败。
  • 作业图

    U-SQL 脚本表示将输入数据转换为输出数据的逻辑。 在准备阶段,脚本被编译并优化为物理执行计划。 作业图用于显示物理执行计划。 下图演示了此概过程:

    Azure Data Lake Analytics 作业阶段状态

    工作被分成许多部分。 每个工作片段称为顶点。 顶点被分组为超级顶点(又称为阶段),并可视化为作业图。 作业图中的绿色阶段标语牌显示阶段。

    阶段中的每个顶点都对相同数据的不同部分执行相同类型的工作。 例如,如果你有一个包含一 TB 数据的文件,并且有数百个顶点从中读取,则每个顶点都读取一个区块。 这些顶点在同一阶段进行分组,对同一输入文件的不同片段执行相同的工作。

    • 阶段信息

      在特定阶段,一些数字显示在标语牌中。

      Azure Data Lake Analytics 作业图阶段

      • SV1 提取:阶段名称由数字和操作方法命名。

      • 84 个顶点:此阶段顶点的总计数。 该图显示在此阶段有多少项工作。

      • 12.90 秒/顶点:此阶段的平均顶点执行时间。 此数值由(每个顶点的执行时间之和)/(顶点总数)计算得出。 这意味着,如果能够将所有顶点分配以并行执行,整个阶段将在 12.90 秒内完成。 这也意味着,如果此阶段中的所有工作都是串行完成的,则成本将 #vertices * AVG 时间。

      • 写入的 850,895 行:在此阶段写入的总行数。

      • R/W:在此阶段中读取/写入的数据量(以字节为单位)。

      • 颜色:在阶段中使用颜色来指示不同的顶点状态。

        • 绿色表示顶点已成功。
        • 橙色表示重试顶点。 重试的顶点失败,但系统会自动重试并成功重试,整个阶段成功完成。 如果顶点重试但仍失败,颜色变为红色,整个作业失败。
        • 红色表示失败,这意味着系统多次重试某个顶点,但仍失败。 此方案会导致整个作业失败。
        • 蓝色表示某个顶点正在运行。
        • 白色表示顶点正在等待。 一旦 ADLAU 可用,顶点可能在等待被安排;它也可能正在等待输入,因为其输入数据可能尚未准备就绪。

        可以通过将鼠标光标悬停在某个状态上来查找更多关于阶段的详细信息。

        Azure Data Lake Analytics 作业图阶段详细信息

    • 顶点:描述顶点的详细信息,例如,总顶点数、已完成的顶点数、以及它们是否失败或仍在运行/等待等情况。

    • 跨 Pod 或内部的读取数据:文件和数据储存在分布式文件系统中的多个 Pod 中。 此处的值描述了在同一 Pod 或跨 Pod 中读取的数据量。

    • 总计算时间:阶段中每个顶点执行时间的总和,你可以将其视为在阶段中的所有工作仅在一个顶点中执行时所需的时间。

    • 写入/读取的数据和行:指示已读取/写入的数据或行量,或需要读取。

    • 顶点读取失败:描述读取数据时有多少顶点失败。

    • 顶点重复丢弃处理:如果顶点运行过于缓慢,系统可能安排多个顶点执行同一个工作片段。 一旦其中一个顶点成功完成,就会丢弃冗余顶点。 在处理阶段中,顶点重复被丢弃的数量将被记录。

    • 顶点撤销:顶点已成功执行,但由于某些原因,会在稍后重新运行。 例如,如果下游顶点丢失中间输入数据,它将要求上游顶点重新运行。

    • 顶点调度执行时间:顶点被调度的总时间。

    • 最小/平均/最大顶点数据读取:每个顶点读取数据的最小/平均/最大值。

    • 持续时间:阶段所需的时钟时间,需要加载配置文件才能看到此值。

    • 任务播放

      Data Lake Analytics 运行作业并存档作业的顶点的运行信息,例如顶点启动、停止、失败以及重试方式等。所有信息都会自动记录在查询存储区中,并存储在其作业配置文件中。 您可以在作业视图中通过“加载配置文件”选项下载作业配置文件,下载完成后可以查看作业回放。

      作业播放是群集中发生的事件的缩影可视化效果。 它有助于监视作业执行进度,并在非常短的时间内(通常小于30秒)直观地检测性能异常和瓶颈。

    • 作业热度地图显示

      可以通过作业图中的“显示”下拉列表选择作业热力图。

      Azure Data Lake Analytics 作业图堆映射显示

      它显示了作业的 I/O、时间和吞吐量的热力图,通过这个图,你可以确定作业花费时间最多的地方,或者判断作业是否为 I/O 边界作业等。

      Azure Data Lake Analytics 作业图形堆映射示例

      • 进度:作业执行进度,请参阅阶段信息中的信息。
      • 数据读取/写入:每个阶段中读取/写入的总数据的热度地图。
      • 计算时间:SUM(每个顶点执行时间)的热度映射,你可以将其视为当阶段中的所有工作仅使用一个顶点执行时需要多长时间。
      • 每个节点的平均执行时间:SUM(每个顶点执行时间)/(顶点数)的热度映射。 这意味着,如果可以将所有顶点任务分配为并行执行,整个阶段将在这个时间段内完成。
      • 输入/输出吞吐量:每个阶段的输入/输出吞吐量的热度映射,可以确认作业是否是 I/O 绑定作业。
  • 元数据操作

    可以在 U-SQL 脚本中执行某些元数据作,例如创建数据库、删除表等。编译后,元数据作中会显示这些作。 可在此处找到断言、创建实体、删除实体。

    Azure Data Lake Analytics 作业视图元数据操作

  • 状态历史记录

    “状态历史记录”也显示在“作业摘要”中,但你可以在此处获取更多详细信息。 可以找到详细信息,例如作业的准备时间、排队时间、开始运行时间和结束时间。 还可以找到已编译作业的次数(CcsAttempts:1),何时将作业实际调度到群集(详细信息:将作业调度到群集),等等。

    Azure Data Lake Analytics 作业视图状态历史记录

  • 诊断

    该工具会自动诊断作业执行。 作业中存在一些错误或性能问题时,将收到警报。 请注意,需要下载配置文件才能在此处获取完整信息。

    Azure Data Lake Analytics 作业视图诊断

    • 警告:此处会显示一条带有编译器警告的警报。 一旦出现警报,可以选择“x 问题”链接以获取更多详细信息。
    • 顶点运行时间过长:如果任何顶点超时(例如 5 小时),可以在此找到问题。
    • 资源使用情况:如果分配的并行度超过需求或不足,则会在此处找到问题。 还可以选择“资源使用情况”以查看更多详细信息,并执行 what-if 方案以查找更好的资源分配(有关详细信息,请参阅本指南)。
    • 内存检查:如果任何顶点使用超过 5 GB 的内存,则会在此处找到问题。 如果作业执行使用的内存多于系统限制,则系统可能会终止作业执行。

作业详细信息

作业详细信息显示作业的详细信息,包括脚本、资源和顶点执行视图。

Azure Data Lake Analytics 作业详细信息

  • 剧本

    作业的 U-SQL 脚本存储在查询存储中。 可以查看原始 U-SQL 脚本,并根据需要重新提交。

  • 资源

    您可以通过“资源”查找存储在“查询存储”中的作业编译输出。 例如,可在此处找到用于显示 Job Graph、已注册的程序集等的“algebra.xml”。

  • 顶点执行视图

    它显示顶点执行详细信息。 作业配置文件将存档每个顶点执行日志,例如读取/写入的总数据、运行时、状态等。通过此视图,可以获取有关作业运行方式的更多详细信息。 有关详细信息,请参阅 适用于 Visual Studio 的 Data Lake 工具中的顶点执行视图

后续步骤