● 描述
以Streaming方式提交MR任务
● URL
http://www.myserver.com/templeton/v1/mapreduce/streaming
● 参数
参数 描述
input Hadoop中input的路径。
output 存储output的路径。如没有规定,
WebChat将output储存在使用队列资 源可以发现到的路径。
mapper mapper程序位置。
reducer reducer程序位置。
files HDFS文件添加到分布式缓存中。
arg 设置argument。
define 设置hadoop的配置变量,格式:
define=NAME=VALUE
cmdenv 设置环境变量,格式:
cmdenv=NAME=VALUE
statusdir WebHCat会将执行的MR任务的状态
写入到statusdir中。如果设置了这个 值,那么需要用户手动进行删除。
enablelog 如果statusdir设置,enablelog设置为 true,收集Hadoop任务配置和日志到
$statusdir/logs。此后,成功和失败的 尝试,都将记录进日志。$statusdir/
logs下,子目录布局为:
logs/$job_id (directory for $job_id) logs/$job_id/job.xml.html
logs/$job_id/$attempt_id (directory for $attempt_id)
logs/$job_id/$attempt_id/stderr logs/$job_id/$attempt_id/stdout logs/$job_id/$attempt_id/syslog 仅支持Hadoop 1.X。
callback 在MR任务执行完的回调地址,使用
$jobId,将任务ID嵌入回调地址。在回 调地址中,任务ID将替换该$jobId。
● 返回结果
参数 描述
id 任务ID,类似
job_201110132141_0001
● 例子
curl i u : negotiate d input=/input d output=/oooo d mapper=/bin/cat d reducer="/usr/bin/wc -w" -d statusdir="/output" 'http://10.64.35.144:50111/templeton/v1/mapreduce/streaming?
user.name=user1' 说明
● 本接口的使用需要前置条件,请参阅规则。
● 示例中的IP为WebHCat所在节点的业务IP,端口为安装时设置的WebHCat端口。
● MRS 1.9.2及之后版本默认端口为9111。详见MRS Manager管理界面“服务管理 > Hive >
服务配置”中“templeton.port”配置。
/hive(POST)
● 描述
执行Hive命令
● URL
http://www.myserver.com/templeton/v1/hive
● 参数
参数 描述
execute hive命令,包含整个和短的Hive命
令。
file 包含hive命令的HDFS文件。
files 需要拷贝到MR集群的文件名,以逗号
分隔。
arg 设置argument。
define 设置hadoop的配置,格式:
define=key=value
statusdir WebHCat会将执行的MR任务的状态
写入到statusdir中。如果设置了这个 值,那么需要用户手动进行删除。
参数 描述
enablelog 如果statusdir设置,enablelog设置为 true,收集Hadoop任务配置和日志到
$statusdir/logs。此后,成功和失败的 尝试,都将记录进日志。$statusdir/
logs下,子目录布局为:
logs/$job_id (directory for $job_id) logs/$job_id/job.xml.html
logs/$job_id/$attempt_id (directory for $attempt_id)
logs/$job_id/$attempt_id/stderr logs/$job_id/$attempt_id/stdout logs/$job_id/$attempt_id/syslog
callback 在MR任务执行完的回调地址,使用
$jobId,将任务ID嵌入回调地址。在回 调地址中,任务ID将替换该$jobId。
● 返回结果
参数 描述
id 任务ID,类似
job_201110132141_0001
● 例子
curl -ik -u : --negotiate -d execute="select count(*) from t1" -d statusdir="/output" "http://
10.64.35.144:9111/templeton/v1/hive?user.name=user1"
说明
● 示例中的IP为WebHCat所在节点的业务IP,端口为安装时设置的WebHCat端口。
● MRS 1.9.2及之后版本默认端口为9111。详见MRS Manager管理界面“服务管理 >
Hive > 服务配置”中“templeton.port”配置。
● 示例中的协议类型在普通集群中为“http”,安全集群为“https”。详见MRS Manager 管理界面“服务管理 > Hive > 服务配置”中“templeton.protocol.type”配置。
jobs(GET)
● 描述
获取所有的job id
● URL
http://www.myserver.com/templeton/v1/jobs
● 参数
参数 描述
fields 如果设置成*,那么会返回每个job的详
细信息。如果没设置,只返回任务 ID。现在只能设置成*,如设置成其他 值,将出现异常。
jobid 如果设置了jobid,那么只有字典顺序
比jobid大的job才会返回。比如,如果 jobid为"job_201312091733_0001",
只有大于该值的job才能返回。返回的 job的个数,取决于numrecords。
numrecords 如果设置了numrecords和jobid,jobid 列表按字典顺序排列,待jobid返回 后,可以得到numrecords的最大值。
如果jobid没有设置, 而numrecords 设置了参数值,jobid按字典顺序排列 后,可以得到numrecords的最大值。
相反,如果numrecords没有设置,而 jobid设置了参数值,所有大于jobid的 job都将返回。
showall 如果设置为true,用户可以获取所有
job,如果设置为false,则只获取当前 用户提交的job。默认为false。
● 返回结果
参数 描述
id Job id
detail 如果showall为true,那么显示detail信 息,否则为null。
● 例子
curl -ik -u : --negotiate "http://10.64.35.144:9111/templeton/v1/jobs?user.name=user1"
说明
● 示例中的IP为WebHCat所在节点的业务IP,端口为安装时设置的WebHCat端口。
● MRS 1.9.2及之后版本默认端口为9111。详见MRS Manager管理界面“服务管理 >
Hive > 服务配置”中“templeton.port”配置。
● 示例中的协议类型在普通集群中为“http”,安全集群为“https”。详见MRS Manager 管理界面“服务管理 > Hive > 服务配置”中“templeton.protocol.type”配置。