通过MaxCompute提交的SQL、Spark和MapReduce等作业会实例化,以MaxCompute实例(Instance)的形式存在
MaxCompute实例有对应的实例ID,实例ID永久有效,且全局唯一。
查看实例信息,包括StartTime(时间精确到秒)、RunTime(s)、Status(实例状态)、InstanceID、实例所有者、Query(执行语句)。
show p|proc|processlist|instances [from <startdate>] [to <enddate>] [-p <project_name>] [-limit <number> | <number>] [-all];
ls|list instances [from <startdate>] [to <enddate>] [-p <project_name>] [-limit <number> | <number>] [-all];
show p
、show proc
、show processlist
、show instances
、ls instances
和list instances
命令等效。
startdate、enddate:可选。返回从起始时间startdate到结束时间enddate期间用户提交的实例信息,startdate要小于enddate。不包含enddate当天提交的实例信息。格式必须为yyyy-mm-dd
,精度为天。如果不指定,则返回用户当天提交的实例。
project_name:可选。待查询实例所属的MaxCompute项目名称,需要具备目标MaxCompute项目的查看实例权限。如果不指定,则表示查询当前所处的MaxCompute项目。
number:可选。指定返回实例的数量。
依照时间排序,返回提交时间距离当前时间最近的number个实例信息。如果不指定number,则返回满足要求的所有实例信息。-limit
与number
二者等效。
-all:可选。返回MaxCompute项目中所有成员执行过的实例。如果不指定,则表示返回MaxCompute项目中当前用户执行过的实例。
不配置number时,默认最大返回50条;如果配置了number,返回number个实例信息。
示例1:查看当前MaxCompute项目下当前用户当天执行的所有实例信息。命令示例如下。
show p;
示例2:查看当前MaxCompute项目下当前用户在指定时间段内执行的实例,并指定返回实例数量。命令示例如下。
show instances from 2021-09-14 to 2021-09-15 -limit 10;
示例3:查看另一MaxCompute项目下所有用户在指定时间段内执行的实例,并指定返回实例数量。命令示例如下。
ls instances from 2021-09-14 to 2021-09-15 -p doc_test_dev -all -limit 10;
示例4:查看另一MaxCompute项目下所有用户在当天执行的实例,并指定返回实例数量。命令示例如下。
show p -p doc_test_dev -all 5;
查看指定实例的状态。如果此实例并非当前用户创建,则返回报错。
status <instance_id>;
instance_id:必填。实例的唯一标识符,指定查询哪个实例状态。
返回结果
实例有以下6种状态:
--查看ID为20131225123xxxxxxxxxxxxxxx的实例状态。
status 20131225123xxxxxxxxxxxxxxx;
查看项目中正在执行的实例信息,包括InstanceID、Owner、Type、StartTime、Progress、Status、Priority、RuntimeUsage(CPU/MEM)、totalUsage(CPU/MEM)、QueueingInfo(POS/LEN)等。
--查看当前项目中当前账号所提交的正在执行的实例信息。
top instance;
--返回当前项目下所有或指定数量的正在执行的实例信息。
top instance [-all][-limit <number>];
--返回当前项目下前5条正在执行的实例信息。
top instance -limit 5;
停止指定的实例,实例的状态必须为Running。
此命令是一个异步的过程,在系统接受此请求并返回结果后,并不意味着分布式的作业已经停止,只能代表系统已接收到请求,因此还要执行STATUS
命令,查看此Instance的状态后才可以确定是否已停止实例。
kill <instance_id>;
instance_id:实例的唯一标识符。状态必须是Running的实例,否则返回异常。
--停止ID为20131225123xxxxxxxxxxxxxxx的实例。
kill 20131225123xxxxxxxxxxxxxxx;
根据具体的实例ID获取作业信息,包括具体的SQL、Owner、StartTime、EndTime和Status等信息。
desc instance <instance_id>;
instance_id:实例的唯一标识符。
--查询ID为20150715xxxxxxxxxxxxxxx的实例对应的作业信息。
desc instance 20150715xxxxxxxxxxxxxxx;
根据具体的实例ID获取作业的运行日志信息,包含Logview链接。您可以通过查看Logview获得作业的详细日志。
获取最近3天Instance对应的Logview可正常打开。超过3天的Instance对应Logview可获取,但因为过期被清除而无法打开。
wait <instance_id>;
instance_id:实例的唯一标识符。
--查看实例ID为20170925161122379gxxxxxx的作业运行日志信息。
wait 20170925161122379gxxxxxx;
参考链接:https://help.aliyun.com/document_detail/27830.htm