通过MaxCompute提交的SQL、Spark和MapReduce等作业会实例化,以MaxCompute实例(Instance)的形式存在。本文为您介绍如何查看指定的实例信息和实例状态、停止实例以及获得实例运行日志信息等常用实例操作。
MaxCompute实例有对应的实例ID,实例ID永久有效,且全局唯一。实例操作常用命令如下。
类型 | 功能 | 角色 | 操作入口 |
---|---|---|---|
查看实例信息 | 查看实例信息。 | 具备查看实例权限(Read)的用户或具备项目空间查看对象列表权限(List)的用户。 | 本文中的命令您可以在如下工具平台执行: |
查看实例状态 | 查看指定实例的状态。 | 具备查看实例权限(Read)的用户。 | |
查看正在执行的实例信息 | 查看项目中正在执行的实例信息。 | 具备查看实例权限(Read)的用户或具备项目空间查看对象列表权限(List)的用户。 | |
停止实例 | 停止指定的处于Running状态的实例。 | 具备更新实例权限(Write)的用户。 | |
获取实例对应的作业信息 | 根据具体的实例ID获取作业信息。 | 具备查看实例权限(Read)的用户。 | |
获取实例对应的作业运行日志信息 | 根据具体的实例ID获取作业的运行日志信息。 |
查看实例信息
查看实例信息,包括StartTime(时间精确到秒)、RunTime(s)、Status(实例状态)、InstanceID、实例所有者、Query(执行语句)。
- 命令格式
show instances [from <startdate> to <enddate>] [<number>]; show p [from <startdate> to <enddate>] [<number>]; show instances [-all]; show p [-all][-limit <number>]; show p -p <project_name>;
- 参数说明
- startdate、enddate:可选。返回从起始时间startdate到结束时间enddate提交的实例信息。需要满足格式
yyyy-mm-dd
,精度为天。如果不指定,则返回三天内提交的实例。 - number:可选。指定返回实例的数量。依照时间排序,返回提交时间距离当前时间最近的number个实例信息。如果不指定number,则返回满足要求的所有实例信息。
- -all:可选。返回当前项目下所有执行过的实例,默认最大返回50条。
- -limit <number>:可选。返回指定数量的记录条数。例如
show p -all -limit 100
表示返回当前项目下100条执行过的实例记录。 - project_name:必填。项目空间名称,您使用的账号必须已经是项目成员。
- startdate、enddate:可选。返回从起始时间startdate到结束时间enddate提交的实例信息。需要满足格式
- 使用示例
返回结果如下。--查看当前项目空间下的所有实例信息。 show p;
StartTime RunTime Status InstanceID Owner Query 2015-04-28 13:57:55 1s Success 20150428xxxxxxxxxxxxxxxxxx ALIYUN$xxxxx@aliyun-inner.com select * from tab_pack_priv limit 20; ... ... ... ... ... ...
查看实例状态
查看指定实例的状态。如果此实例并非当前用户创建,则返回报错。
- 命令格式
status <instance_id>;
- 参数说明
instance_id:必填。实例的唯一标识符,指定查询哪个实例状态。
- 返回结果
实例有以下6种状态:
- Running:正在运行。
- Success:成功结束。
- Waiting:等待中。
- Failed:作业失败,但是尚未改写目标表数据。
- Cancelled:被取消。
- Terminated:作业已执行结束。
- 使用示例
返回结果如下。--查看ID为20131225123xxxxxxxxxxxxxxx的实例状态。 status 20131225123xxxxxxxxxxxxxxx;
Success
查看正在执行的实例信息
查看项目中正在执行的实例信息,包括InstanceID、Owner、Type、StartTime、Progress、Status、Priority、RuntimeUsage(CPU/MEM)、totalUsage(CPU/MEM)、QueueingInfo(POS/LEN)等。
- 命令格式
--查看当前项目中当前账号所提交的正在执行的实例信息。 top instance; --返回当前项目下所有或指定数量的正在执行的实例信息。 top instance [-all][-limit <number>];
- 参数说明
- -all:可选。返回当前项目下所有正在执行的作业,默认最大返回50条。
- -limit number:可选。返回当前项目下指定数量的正在执行的作业。
- 使用示例
返回结果如下。--返回当前项目下前5条正在执行的实例信息。 top instance -limit 5;
QueueingInstances: 0 total.
停止实例
停止指定的实例,实例的状态必须为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 20150715xxxxxxxxxxxxxxx Owner ALIYUN$XXXXXX@alibaba-inc.com StartTime 2015-07-15 18:34:41 EndTime 2015-07-15 18:34:42 Status Terminated console_select_query_task_1436956481295 Success Query select * from mj_test;
获取实例对应的作业运行日志信息
根据具体的实例ID获取作业的运行日志信息,包含Logview链接。您可以通过查看Logview获得作业的详细日志。
说明 获取最近3天Instance对应的Logview可正常打开。超过3天的Instance对应Logview可获取,但因为过期被清除而无法打开。
- 命令格式
wait <instance_id>;
- 参数说明
instance_id:实例的唯一标识符。
- 使用示例
返回结果如下。--查看实例ID为20170925161122379gxxxxxx的作业运行日志信息。 wait 20170925161122379gxxxxxx;
ID = 20170925161122379g3xxxxxx Log view: http://logview.odps.aliyun.com/logview/?h=http://service.odps.aliyun.com/api&p=alian&i=201709251611223xxxxxxdqp&token=XXXXXXvbiI6IjEifQ== Job Queueing... Summary: resource cost: cpu 0.05 Core * Min, memory 0.05 GB * Min inputs: alian.bank_data: 41187 (588232 bytes) outputs: alian.result_table: 8 (640 bytes) Job run time: 2.000 Job run mode: service job Job run engine: execution engine M1: instance count: 1 run time: 1.000 instance time: min: 1.000, max: 1.000, avg: 1.000 input records: TableScan_REL5213301: 41187 (min: 41187, max: 41187, avg: 41187 ) output records: StreamLineWrite_REL5213305: 8 (min: 8, max: 8, avg: 8) R2_1: instance count: 1 run time: 2.000 instance time: min: 2.000, max: 2.000, avg: 2.000 input records: StreamLineRead_REL5213306: 8 (min: 8, max: 8, avg: 8) output records: TableSink_REL5213309: 8 (min: 8, max: 8, avg: 8)