作业运维

MaxCompute作业运维功能支持查看历史作业和正在运行的作业,方便您了解作业运行详情及分析作业运行时的资源负载情况,帮助您对作业进行运维管理。

功能介绍

MaxCompute的作业运维功能支持查看并运维您当前项目下历史作业和正在运行的作业

  • 如果您是数据开发人员,作业运维功能方便您日常查看作业详情,及时发现作业的异常情况和问题,对有问题的作业及时进行处理,例如终止或批量终止作业。

  • 如果您是管理员,作业运维功能方便您日常结合配额组查看某时刻的资源负载,合理分配和管理系统资源,提高作业的执行效率和性能。

您可以在MaxCompute管理控制台作业运维页面通过配置过滤条件筛选目标作业,实现查看作业详情、分析作业等功能。具体功能如下:

操作功能

  • 过滤作业

    按照过滤参数对作业进行过滤,筛选出您希望查看的作业,过滤作业参数说明如下。

    过滤作业参数(单击展开查看参数说明)

    参数

    说明

    时间范围

    按照时间范围(开始和结束时间)进行过滤,必选参数。

    说明

    总过滤条件,影响作业统计图和作业列表。

    输入的时间有如下两个含义:

    • 过滤在这个时间范围内执行完成的作业。

    • 过滤在结束时间这个时间点或往前3分钟正在运行的作业,会有作业快照信息,这个时间也称为作业快照观测时间。

    默认范围为最近1小时。时间范围最长支持7天,最小支持2分钟。最多可以搜索最近45天的作业。

    您可以选择已预置的时间范围或单击时间范围输入框,在选择时间面板快速配置时间范围:

    • 1h:最近1小时。

    • 12h:最近12小时。

    • 1d:最近1天。

    • 选择具体时间段:在选择时间面板,选择需要查询的年、月、日后单击选择时间,选择时间段。

    项目选择

    按照MaxCompute项目名称进行过滤。

    说明

    总过滤条件,影响作业统计图和作业列表。

    您可以同时选择多个MaxCompute项目。默认为空。

    Quota选择

    按照配额组进行过滤

    说明

    总过滤条件,影响作业统计图和作业列表。

    仅支持选择包年包月配额组。默认为空。

    说明

    查询按量计费作业时,不需要配置该参数。

    更多配额组信息,请参见计算资源-Quota管理

    作业类型

    按作业类型进行过滤。

    说明

    总过滤条件,影响作业统计图和作业列表。

    作业类型取值如下:

    • SQL:SQL作业。

    • SQLRT:查询加速SQL作业。

    • LOT:MapReduce作业。

    • CUPID:Spark或Mars作业。

    • Algo_Task:机器学习作业。

    • GRAPH:图计算作业。

    Instance ID

    按照MaxCompute作业生成的InstanceID进行过滤,您可以输入作业的InstanceID精准查找作业。

    说明

    作业列表的结果进行二次过滤,仅影响作业列表。

    默认为空。

    更多InstanceID信息,请参见查看实例信息

    作业Owner

    按照提交MaxCompute作业的账号进行过滤

    说明

    作业列表的结果进行二次过滤,仅影响作业列表。

    默认为空。

    不支持模糊查询,格式必须是完整的账号名如ALIYUN$xxx或RAM$xxx

    ExtNodeId

    按照运行MaxCompute作业的来源端作业ID进行过滤

    说明

    作业列表的结果进行二次过滤,仅影响作业列表。

    如来自DataWorks的节点ID。更多DataWorks节点ID信息,请参见配置基础属性

    Signature

    SQL作业签名过滤。

    说明

    作业列表的结果进行二次过滤,仅影响作业列表。

    只有SQL类型作业可用。您可以通过此签名查找同一个SQL每次执行的Instances。

    默认为空。

    最新状态

    按照作业运行状态进行过滤。

    说明

    作业列表的结果进行二次过滤,仅影响作业列表。

    作业运行状态取值如下:

    • Running:正在运行,未结束的作业都处于此状态。

    • Success:运行成功。

    • Failed:失败。

    • Cancelled:取消。

    • Submitted:已提交,等待计算资源中。

    默认为不选择,即所有状态。

    说明

    这里的状态是整个作业的总体状态,但是作业本身可能会是多并发,每个并发会有不同的子状态,详细信息需要进入LogView进行查看,详情请参见使用LogView 2.0查看作业运行信息

    智能诊断

    根据作业智能诊断结果标签进行过滤,默认为不选择任何标签。有关智能诊断结果标签的详细含义,请参见作业智能诊断

  • 排序作业

    作业筛选结果默认按作业结束时间从高到低排序,未结束的作业会排在最前。支持普通单列排序和高级多列排序。

    • 普通单列排序:对列表中有排序按钮的列进行升序或降序排列。

    • 高级多列排序:单击列表右上方的高级排序按钮,通过添加排序增加多列列名,并指定每列的排序方式为升序或降序,单击确定实现多列排序。

    说明

    高级排序条件生效时,无法进行普通单列排序,需单击列表右上方的高级排序按钮,单击重置确定后,方可再进行普通单列排序。

  • 查看作业详情

    您可以在作业列表,单击目标作业操作列的LogView跳转至LogView页面,查看作业运行的状态、细节结果。

  • 终止作业

    您可以对最新状态正在运行(Running)状态的作业,执行终止批量终止操作。

  • 洞察作业

    您可以对单个作业执行洞察操作,以查看作业概览信息、资源消耗情况及某时刻计算Quota的资源分配情况,并触发作业智能诊断操作。

    说明
    • 当前仅支持对SQL作业进行智能诊断。

    • 运行时长小于2分钟或作业类型为SQL、MapReduce、Spark、Mars以外的作业,暂时没有作业级别资源消耗数据。

作业统计图

根据过滤条件筛选的结果,按时间和状态绘制作业数统计堆积柱形图,方便您查看作业运行整体情况。

作业统计图说明(单击展开查看详细说明)

不同的时间范围,每根柱形代表的时长不一样,详细如下:

  • 时间范围在24小时内:每个柱形最小时间间隔是2分钟,柱形个数为自适应,最多24个。

  • 时间范围大于24小时小于等于48小时:则固定每个柱形时间间隔为2小时,柱形个数为自适应,最多24个。

  • 时间范围大于48小时小于等于7天:则每个柱形时间间隔为6小时,柱形个数为自适应,最多29个。

其中统计的作业状态包含:

  • 运行中:快照为Running状态。

  • 已结束:已经成功、失败或被终止的状态。

说明

由于作业快照数据是3分钟采集一次,因此有些作业可能采集不到快照数据,因此即使是运行中的作业,快照状态可能也为空。

支持通过鼠标拖选图表进行时间范围筛选,即把时间段缩短。

作业列表

作业列表即根据过滤条件筛选的作业结果,主要提供常用的作业信息方便您进行作业运维。

说明

目前已知如下作业信息无法采集:

  • 作业快照数据是三分钟采集一次,因此有些作业快照数据采集不到,即在采集前三分钟以内启动的作业,采集不到快照数据。

  • 通过PAI发起的部分MaxCompute作业(特别是RAM用户发起的作业)暂时采集不到。

  • 开发者版(即将停用)项目的作业采集不到。

由于数据处理有一定的频率,当查看当前时刻的作业列表时,可能会出现一些作业当前状态Running但LogView里看作业已经结束,特别是执行时间非常短的作业容易出现此情况,请以LogView里看到的最新状态为准。

作业列表参数说明(单击展开查看参数说明)

列名称

说明

Instance ID

每个MaxCompute作业都会生成一个Instance,每个Instance又会生成一个对应的Instance ID。同时显示该作业所属项目、类型、优先级信息。

您可以单击InstanceID对应操作列的LogView跳转至LogView页面,查看作业的具体进度。查看LogView的方法,请参见使用LogView查看作业运行信息

作业Owner

运行MaxCompute作业的阿里云账号。

您可以根据账号信息找到作业所属责任人。如果某个作业占用资源较多,影响其他任务运行,可以联系对应责任人停止作业。停止作业的方法请参见实例操作

最新状态

作业当前最新状态。

智能诊断

根据作业智能诊断得出结果后所生成的标签。

提交时间

Instance的提交时间。

开始运行时间

作业获取第一份计算资源的时间。对于运行时间过短或不消耗计算资源(如DDL语句)的作业,以作业提交时间替代。默认不显示,可单击自定义列表选项设置显示。

等待时长

作业从提交时间到开始运行时间的时长。默认不显示,可单击自定义列表选项设置显示。

运行时长

作业从开始运行时间到结束运行时间的时长。默认不显示,可单击自定义列表选项设置显示。

结束运行时间

Instance运行结束时间。

总运行时长

作业从提交时间到结束时间总时长。

Quota(配额)

作业运行所在的Quota。

快照状态

作业在观测时间的状态。

CPU使用占比快照

作业在观测时刻的CPU使用占比(CPU使用量 / (预留CPU保障+弹性预留CPU)。按量计费作业无此信息,采集不到快照信息的作业也无此信息。

内存使用占比快照

作业在观测时刻的内存使用占比(内存使用量 / (预留内存保障+弹性预留内存))。按量计费作业无此信息,采集不到快照信息的作业也无此信息。

CPU累计使用量

作业整个执行过程的CPU消耗总和,单位:100*Core*s

内存累计使用量

作业整个执行过程的内存消耗总和,单位:MB*s

ExtPlantFrom

作业发起的客户端。

例如DataWorks,需要发起端发起作业的时候主动传入信息。

ExtNodeId

作业发起端对应的任务ID。

例如DataWorks的节点ID,需要发起端发起作业的时候主动传入信息。

ExtNodeOnDuty

作业发起端对应的任务负责人账号ID。

例如DataWorks的节点负责人,需要发起端发起作业的时候主动传入信息。

Signature

SQL作业签名。

可通过此签名查找SQL每次执行的Instances。

常用运维场景示例

查看具体作业运行详情

  • 运维场景

    您需要查看某个DataWorks小时调度节点发起的作业运行情况或需要对指定的MaxCompute作业进行审计。

  • 操作步骤

    1. 登录MaxCompute管理控制台作业运维页面。

    2. 根据实际需要设置时间范围

    3. 单击搜索

    4. 在作业列表上方,选择ExtNodeIdInstance ID参数,填入您作业的实际值。

    5. 单击image.png按钮,对作业列表再次过滤。

      您可以在查询结果列表中,单击目标Instance操作列的LogView,跳转至LogView页面,查看作业运行详细信息。更多LogView信息请参见使用LogView 2.0查看作业运行信息

查看某个时段的作业运行详情

  • 运维场景

    您需要查看负责的Project_1、Project_2两个项目最近一天执行的作业,并分析哪些作业执行失败,以便对失败作业进行处理。

  • 操作步骤

    1. 登录MaxCompute管理控制台作业运维页面。

    2. 设置时间范围1d或设置时间范围为从这一天00:00:00开始到当前时间。

    3. 项目选择下拉列表选择Project_1Project_2

    4. 您可以在查询结果列表中,单击目标Instance操作列的LogView,跳转至LogView页面,查看作业运行详细信息。更多LogView信息请参见使用LogView 2.0查看作业运行信息

查看包年包月Quota某个时间点作业占用资源情况

  • 运维场景

    您的预付费默认Quota这个Quota当前资源使用的水位很满,很多作业在等待,您需要查看具体什么作业在占用Quota资源。

  • 操作步骤

    1. 登录MaxCompute管理控制台作业运维页面。

    2. 设置时间范围1h或自定义开始时间结束时间即观测时间输入当前的时间。

    3. 设置Quota选择参数为预付费默认Quota

    4. 单击搜索

      您可以在查询结果列表中,查看快照状态Running作业的CPU使用占比快照内存使用占比快照,可以查看占比最大的作业是否满足业务情况,并通过其他作业信息辅助决定该作业是否为正常作业或者需要终止(kill)作业。

      说明

      每个作业的更多作业信息可以单击目标Instance操作列的LogView,跳转至LogView页面,查看作业运行详细信息。更多LogView信息请参见使用LogView 2.0查看作业运行信息

查看查询加速作业运行详情

  • 运维场景

    您想要查看最近一天查询加速作业的运行状态和详情。

  • 操作步骤

    1. 登录MaxCompute管理控制台作业运维页面。

    2. 设置时间范围1d作业类型选择SQLRT(查询加速)

    3. 单击搜索

      在作业列表查看作业基础信息,每个作业的更多作业信息可以单击目标Instance操作列的LogView,跳转至LogView页面,查看作业运行详细信息。更多LogView信息请参见使用LogView 2.0查看作业运行信息

      说明

      使用查询加速功能的作业,会出现多个SQL命令在同一个会话(Session)中执行的情况,一个会话对应一个Instance ID,您可以通过Instance ID对应的LogView查看该会话中所有SQL的运行情况。因此在作业运维页面查看查询加速作业时,您需要注意:

      • 会话未退出时,即部分SQL已完成,部分SQL还在运行,作业的最新状态Running

      • 会话过期退出或因为关闭界面退出时,作业的最新状态Cancelled

查看作业资源消耗情况及某时刻计算Quota的资源分配情况

  • 运维场景

    当遇到作业运行较长时间仍未结束且通过LogView难以定位原因,或作业运行结束后,发现作业运行时长达不到预期(作业运行慢),您需要分析是否是因为资源供给导致的。

  • 操作步骤

    1. 登录MaxCompute管理控制台作业运维页面。

    2. 选择时间范围同时配合Quota选择参数进行过滤,单击搜索

    3. 单击目标Instance ID操作列的洞察,跳转至作业洞察页面。

    4. 资源消耗页签查看作业生命周期内的资源消耗情况。

      • 资源消耗图展示作业级别的使用CU与等待CU随时间的变化曲线图,以及作业运行的Quota级别的使用CU与等待CU随时间变化。若发现作业使用CU较低,而Quota级别使用CU较高,甚至持续达到上限,说明Quota资源紧张,有其他作业在与当前作业抢占计算资源。

      • 您可以通过单击资源消耗图横轴的时间点,查看对应时刻计算Quota级别的资源分配情况,具体为所有运行中等待中的资源分配给的作业数量与优先级分布,您可以单击目标优先级对应的色块跳转至作业列表,查看对应作业的详细信息。以此判断出具体是哪些作业在与当前作业抢占计算资源。您可以依据业务情况优化任务执行情况,进行作业优先级调整或计算资源管理,详情请参见作业优先级计算资源-Quota管理

下一步

  • 您查看完作业详情后,如果还期望查看作业的计算量及费用情况,您可以通过成本分析功能查看,详情请参见成本分析

  • 如果您看到某个作业资源使用占比一直很高且还有很多作业在等待。

    • 如果此作业不符合业务情况,您可以执行终止作业操作。

    • 如果此作业符合业务情况,说明此时Quota资源配置不合理,您需要优化资源配置方案,详情请参见计算成本优化

相关文档

通过命令查看作业信息、状态和停止作业等操作,请参见实例操作