apache-hive / 3.1.1 / reference / WebHCat_Reference_Pig.html

猪工作-POST 猪

Description

创建并排队Pig作业。

URL

http:// * www.myserver.com * /templeton/v1/pig

Parameters

Name Description Required? Default
execute 包含要运行的完整的简短 Pig 程序的字符串。 需要“执行”或“文件”之一。 None
file 要运行的 Pig 程序的 HDFS 文件名。 需要“执行”或“文件”之一。 None
arg 设置程序参数。如果包含-useHCatalog,则“ usehcatalog”将被解释为“ true”(Hive 0.13.0 和更高版本)。 Optional None
files 逗号分隔的文件将被复制到 map reduce 集群。 Optional None
statusdir WebHCat 将在其中写入 Pig 工作状态的目录。如果提供了此目录,则调用者有责任在完成后删除此目录。 Optional None
enablelog 如果设置 statusdirenablelog 为“ true”,请收集 Hadoop 作业配置并在作业完成后登录名为$statusdir/logs的目录。完成和失败的尝试都将被记录。 $statusdir/logs中子目录的布局为:

logs/$job_id ($ job_id 的目录)
logs/$job_id/job.xml.html
logs/$job_id/$attempt_id ($ attempt_id 的目录)
logs/$job_id/$attempt_id/stderr
logs/$job_id/$attempt_id/stdout
logs/$job_id/$attempt_id/syslog
此参数是在 Hive 0.12.0 中引入的。 (请参见HIVE-4531。)
Hive 0.12.0 中的可选
callback 定义在作业完成时要调用的 URL。您可以使用$jobId将特定的工作 ID 嵌入此 URL。 可选 将在回调 URL 中用此作业的作业 ID 替换该标签。
usehcatalog 指定提交的作业使用 HCatalog,因此需要访问元存储,这需要 WebHCat 在安全集群中执行附加步骤。 (请参阅HIVE-5133。)此参数将在 Hive 0.13.0 中引入。也可以通过在 arg 参数中包含-useHCatalog将其设置为“ true”。
另外,如果 webhcat-site.xml 定义了参数templeton.hive.archivetempleton.hive.hometempleton.hcat.home,则 WebHCat 会将 Hive tar 发送到作业运行的目标节点。 (请参阅HIVE-5547。)这意味着 Hive 不需要安装在 Hadoop 集群中的每个节点上。它不能确保在群集的目标节点上安装了 Pig。这与安全性无关,但是提高了可 Management 性。
webhcat-site.xml 参数记录在 webhcat-default.xml 中。
Hive 0.13.0 中的可选 false

standard parameters也受支持。

Results

Name Description
id 包含类似于“ job_201110132141_0001”的作业 ID 的字符串。
info 一个 JSON 对象,其中包含作业排队时返回的信息。有关更多信息,请参见 Hadoop 文档(Class TaskController)。

Example

代码和数据设置

% cat id.pig
A = load 'passwd' using PigStorage(':');
B = foreach A generate $0 as id;
dump B;

% cat fake-passwd
ctdean:Chris Dean:secret
pauls:Paul Stolorz:good
carmas:Carlos Armas:evil
dra:Deirdre McClure:marvelous

% hadoop fs -put id.pig .
% hadoop fs -put fake-passwd passwd

Curl Command

% curl -s -d file=id.pig \
       -d arg=-v \
       'http://localhost:50111/templeton/v1/pig?user.name=ekoifman'

Version information

在 Hive 0.13.0 之前,在 POST 请求中将 user.name 指定为表单参数curl -d user.name=<user>

Hive 0.13.0开始,应在查询字符串中指定 user.name(如上所示):'http://.../templeton/v1/pig?user.name=<name>'。不建议将 user.name 指定为表单参数。

JSON Output

{
 "id": "job_201111101627_0018",
 "info": {
          "stdout": "templeton-job-id:job_201111101627_0018
                    ",
          "stderr": "",
          "exitcode": 0
         }
}

Navigation Links

Previous: POST mapreduce/jar
Next: POST hive

常规:WebHCat ReferenceWebHCat ManualHCatalog ManualHive Wiki 主页Hive 项目 site