作业运维(新版)
MaxCompute提供作业运维管理功能,数据开发人员和管理员可通过MaxCompute控制台的作业运维功能查看历史作业和正在运行的作业,方便了解作业运行详情。本文为您介绍如何通过MaxCompute控制台运维和管理作业。
功能介绍
MaxCompute的作业运维支持查看并运维您当前项目下的作业。如果您是数据开发人员,作业运维功能方便您日常查看、终止MaxCompute作业。如果您是管理员作业运维功能方便您日常结合配额组查看某时刻的资源负载、终止MaxCompute作业。
您可以在作业运维页面通过配置过滤条件查询作业详情,同时也可以批量终止作业。具体功能点如下:
操作功能
功能 | 参数 | 是否必选 | 说明 |
过滤作业 | 日期范围 | 是 | 按照日期范围(开始和结束时间)进行过滤。 说明 总过滤条件,影响作业统计图和作业列表。 输入的时间有如下两个含义:
默认范围为最近24小时。日期范围最长支持7天,最小支持2分钟。最多可以搜索最近45天的作业。 您可以选择已预置的日期范围或单击日期范围输入框,在选择时间面板快速配置日期范围:
|
项目选择 | 否 | 按照MaxCompute项目名称进行过滤。 说明 总过滤条件,影响作业统计图和作业列表。 您可以同时选择多个MaxCompute项目。默认为空。 | |
Quota选择 | 否 | 按照配额组进行过滤。 说明 总过滤条件,影响作业统计图和作业列表。 仅支持选择包年包月配额组。默认为空。 说明 查询按量计费作业时,不需要配置该参数。 更多配额组信息,请参见设置配额组。 | |
作业类型 | 否 | 按作业类型进行过滤。 说明 总过滤条件,影响作业统计图和作业列表。 作业类型取值如下:
| |
Instance ID | 否 | 按照MaxCompute作业生成的InstanceID进行过滤,您可以输入作业的InstanceID精准查找作业。 说明 对作业列表的结果进行二次过滤,仅影响作业列表。 默认为空。 更多InstanceID信息,请参见查看实例信息。 | |
作业Owner | 否 | 按照提交MaxCompute作业的账号进行过滤。 说明 对作业列表的结果进行二次过滤,仅影响作业列表。 默认为空。 不支持模糊查询,格式必须是完整的账号名如ALIYUN$xxx或RAM$xxx。 | |
ExtNodeId | 否 | 按照运行MaxCompute作业的来源端作业ID进行过滤。 说明 对作业列表的结果进行二次过滤,仅影响作业列表。 如来自DataWorks的节点ID。更多DataWorks节点ID信息,请参见配置基础属性。 | |
Signature | 否 | 按SQL作业签名过滤。 说明 对作业列表的结果进行二次过滤,仅影响作业列表。 只有SQL类型作业可用。您可以通过此签名查找同一个SQL每次执行的Instances。 默认为空。 | |
最新状态 | 否 | 按照作业运行状态进行过滤。 说明 对作业列表的结果进行二次过滤,仅影响作业列表。 作业运行状态取值如下:
默认为不选择,即所有状态。 说明 这里的状态是整个作业的总体状态,但是作业本身可能会是多并发,每个并发会有不同的子状态,详细信息需要进入Logview进行查看,详情请参见使用Logview 2.0查看作业运行信息。 | |
作业统计图 | 堆积柱形图 | 否 | 根据过滤条件筛选的结果按时间和状态进行作业数统计堆积。不同的日期范围,每根柱形代表的时长不一样,详细如下:
其中统计的作业状态包含:
说明 由于作业快照数据是3分钟采集一次,因此有些作业可能采集不到快照数据,因此即使是运行中的作业,快照状态可能也为空。 |
时间筛选 | 否 | 支持通过鼠标拖选图表进行日期范围筛选,即把时间段缩短。 | |
作业排序 | 无 | 否 | 作业筛选结果默认按作业结束时间从高到低排序,未结束的作业会排在最前。支持自定义对列表里有排序按钮的列进行升/降序。 |
终止作业 | 无 | 否 | 您可以对最新状态为 |
分析作业 | 无 | 否 | 您可以对运行时长大于2分钟、且使用包年包月标准版或按量付费标准版的SQL、MapReduce、Spark、Mars作业执行分析操作。 |
作业列表
作业列表即根据过滤条件筛选的作业结果,主要提供常用的作业信息方便您进行作业运维。
目前已知如下作业信息无法采集:
作业快照数据是三分钟采集一次,因此有些作业快照数据采集不到。
通过机器学习产品发起的部分MaxCompute作业(特别是RAM用户发起的作业)暂时采集不到。
开发者版(即将下线)项目的作业采集不到。
由于数据处理有一定的频率,当查看当前时刻的作业列表时,可能会出现一些作业当前状态为running
但Logview里看作业已经结束,特别是执行时间非常短的作业容易出现此情况,请以Logview里看到的最新状态为准。
列名称 | 说明 |
Instance ID | 每个MaxCompute作业都会生成一个Instance,每个Instance又会生成一个对应的Instance ID。同时显示该作业所属项目、类型、优先级信息。 您可以单击InstanceID对应的logview跳转至Logview页面,查看作业的具体进度。查看Logview的方法,请参见使用Logview查看作业运行信息。 |
作业Owner | 运行MaxCompute作业的阿里云账号。 您可以根据账号信息找到作业所属责任人。如果某个作业占用资源较多,影响其他任务运行,可以联系对应责任人停止作业。停止作业的方法请参见实例操作。 |
提交时间 | Instance的提交时间。 |
结束运行时间 | Instance运行结束时间。 |
总运行时长 | 作业从提交时间到结束时间总时长。 |
最新状态 | 作业当前最新状态。 |
CPU使用占比快照 | 作业在观测时刻的CPU使用占比( |
内存使用占比快照 | 作业在观测时刻的内存使用占比( |
Quota(配额) | 作业运行所在的Quota。 |
快照状态 | 作业在观测时间的状态。 |
CPU累计使用量 | 作业整个执行过程的CPU消耗总和,单位: |
内存累计使用量 | 作业整个执行过程的内存消耗总和,单位: |
DataWorks节点ID | 运行MaxCompute作业的DataWorks节点ID。 如果此项为空,表示不是通过DataWorks节点提交的作业。 |
ExtPlantFrom | 作业发起的客户端。 例如DataWorks,需要发起端发起作业的时候主动传入信息。 |
ExtNodeId | 作业发起端对应的任务ID。 例如DataWorks的节点ID,需要发起端发起作业的时候主动传入信息。 |
ExtNodeOnDuty | 作业发起端对应的任务负责人账号ID。 例如DataWorks的节点负责人,需要发起端发起作业的时候主动传入信息。 |
Signature | SQL作业签名。 可通过此签名查找SQL每次执行的Instances。 |
常用运维场景示例
查看某个时段的作业运行详情
您可以在MaxCompute管理控制台的作业运维页面,选择日期范围同时配合其他条件进行过滤查看某个时间段运行结束或正在运行的MaxCompute作业情况。
例如,如果您需要查看自己负责的Project_1、Project_2两个项目最近一天执行的作业,并分析哪些作业执行失败,以便对失败作业进行处理。推荐的查看方式为:
设置日期范围为1d或设置日期范围为从这一天
00:00:00
开始到当前时间。在项目选择下拉列表选择Project_1和Project_2。
在作业状态下拉列表选择failed。
单击搜索。
您可以在查询结果列表中,单击目标Instance操作列的Logview,跳转至Logview页面,查看作业运行详细信息。更多Logview信息请参见使用Logview 2.0查看作业运行信息。
查看具体作业运行详情
您可以在MaxCompute管理控制台的作业运维页面,选择日期范围同时配合高级搜索参数进行过滤查看具体MaxCompute作业的详细信息。
例如,如果您需要查看某个DataWorks小时调度节点发起的作业运行情况或需要对指定的MaxCompute作业进行审计。推荐的查看方式为:
根据实际需要设置日期范围。
单击高级搜索,展开高级查询参数。
配置ExtNodeId或Instance ID。
单击搜索。
您可以在查询结果列表中,单击目标Instance操作列的Logview,跳转至Logview页面,查看作业运行详细信息。更多Logview信息请参见使用Logview查看作业运行信息或使用Logview 2.0查看作业运行信息。
查看包年包月Quota某个时间点作业占用资源情况
您可以在MaxCompute管理控制台的作业运维页面,选择日期范围同时配合Quota选择参数进行过滤,查看具体是什么作业在运行占用包年包月Quota。
例如预付费默认Quota
这个Quota当前资源使用的很满,很多作业在等待,您需要查看具体什么作业在占用Quota资源,推荐的查看方式为:
设置日期范围为1h或自定义
开始时间
,结束时间
即观测时间输入当前的时间。单击高级搜索,展开高级查询参数。
设置Quota选择参数为
预付费默认Quota
。单击搜索。
您可以在查询结果列表中,查看快照状态为
running
作业的CPU使用占比快照和内存使用占比快照,可以看占比最大的作业是否满足业务情况,可以通过其他作业信息辅助决定是否为正常作业或者需要终止(kill)作业。说明每个作业的更多作业信息可以单击目标Instance操作列的Logview,跳转至Logview页面,查看作业运行详细信息。更多Logview信息请参见使用Logview查看作业运行信息或使用Logview 2.0查看作业运行信息。
查看查询加速作业
使用查询加速功能的作业,会出现多个SQL命令在同一个会话(Session)中执行的情况,一个会话对应一个Instance ID,您可以通过Instance ID对应的Logview查看该会话中所有SQL的运行情况。因此在作业运维页面查看查询加速作业时,您需要注意:
会话未退出时,即部分SQL已完成,部分SQL还在运行,作业的最新状态为
Running
。会话过期退出或因为关闭界面退出时,作业的最新状态为
Cancelled
。
查看作业资源消耗情况及某时刻计算Quota的资源分配情况
当遇到作业运行较长时间仍未结束的情况,通过Logview难以定位原因,您可以通过作业分析查看是否为资源供给出现问题。或作业运行结束后,发现作业运行时长不达预期(作业运行慢),可以通过作业分析查看是否由于资源问题所致。推荐的查看方式是:
您可以在MaxCompute管理控制台的作业运维页面,选择日期范围同时配合Quota选择参数进行过滤,找到具体MaxCompute作业,单击目标Instance ID操作列的分析,跳转至作业分析页面。您可以在资源消耗页签查看作业生命周期内的资源消耗情况,具体为作业级别的使用CU与等待CU随时间的变化曲线,以及作业运行的Quota级别的使用CU与等待CU随时间变化。若发现作业使用CU较低,而Quota级别使用CU较高,甚至持续达到上限,说明Quota资源紧张,有其他作业在与当前作业抢占计算资源。
您可以通过单击资源消耗图横轴的时间点,查看对应时刻计算Quota级别的资源分配情况,具体为所有使用中、等待中的资源分配给的作业数量与优先级分布,您可以单击目标优先级对应的色块跳转至作业列表,查看对应作业的详细信息。以此判断出具体是哪些作业在与当前作业抢占计算资源。您可以依据业务情况优化任务执行情况,进行作业优先级调整或计算资源管理,详情请参见作业优先级或Quota管理(新版)。