目录
版本信息
HCatalog项目毕业于Apache孵化器,并于2013年3月26日与Hive项目合并。
Hive版本0.11.0是第一个包含HCatalog及其REST API WebHCat的版本。
WebHCat介绍
本文档描述了HCatalog REST API WebHCat,它以前被称为Templeton。如果您正在寻找Hive GUI而不是API,请参见Hive Web Interface(在2.2.0版本中删除)。
如下图所示,开发人员通过HTTP请求从应用程序内部访问Hadoop MapReduce(或纱线)、Pig、Hive和HCatalog DDL。此API使用的数据和代码在HDFS中进行维护。HCatalog DDL命令在被请求时直接执行。MapReduce、Pig和Hive作业由WebHCat (Templeton)服务器放置在队列中,可以根据需要监视进程或停止。开发人员在HDFS中指定应该将Pig、Hive和MapReduce结果放置到其中的位置。
WebHCat还是邓普顿?
为了向后兼容性,在某些上下文中,WebHCat仍然使用原始名称Templeton。请参见下面的#项目名称。
URL 格式
使用以下URL格式访问HCatalog的其余资源:
http://yourserver/templeton/v1/resource
其中“yourserver”替换为您的服务器名,“resource”替换为HCatalog资源名。
例如,要检查服务器是否正在运行,可以访问以下URL:
http://www.myserver.com/templeton/v1/status
有关单个REST资源的信息,请参阅参考资料:WebHCat参考资料。
安全性
目前的版本支持两种类型的安全:
- 默认安全性(不附加身份验证)
- 通过Kerberos身份验证
标准参数
每个REST资源都可以接受以下参数来帮助进行身份验证:
user.name:作为字符串的用户名。仅在使用默认安全性时有效。
SPNEGO凭证:使用Kerberos身份验证运行时。
指定user.name
name参数是POST调用的POST参数的一部分,也是其他调用的URL的一部分。
例如,要在GET:table命令中指定user.name:
% curl -s 'http://localhost:50111/templeton/v1/ddl/database/default/table/my_table?user.name=ctdean'
并在POST:table命令中指定user.name:
% curl -s -d user.name=ctdean \
-d rename=test_table_2 \
'http://localhost:50111/templeton/v1/ddl/database/default/table/test_table'
安全错误响应
如果在需要时没有提供user.name参数,将返回以下错误:
{
"error": "No user found. Missing user.name parameter."
}
WebHDFS和代码推送
HCatalog的REST资源使用的数据和代码必须首先放在Hadoop中。当需要将文件放入HDFS中时,您可以使用最方便的方法。我们建议使用WebHDFS,因为它提供了一个用于将文件移动到HDFS和移出HDFS的REST接口。
错误代码和响应
服务器返回以下HTTP状态码。
- 200 OK: 成功!
- 400 Bad Request: 请求无效.
- 401 Unauthorized: 凭据丢失或不正确。
- 404 Not Found: 请求的URI无效或请求的资源不存在.
- 500 Internal Server Error: 收到一个意想不到的结果.
- 503 Busy, please retry: 服务器忙.
tempelton-log4j。可以使用变量templeton.log.dir设置这些日志的位置。这log4j。属性文件在服务器启动脚本中设置。
Hive日志文件在“开始”的Hive日志部分中描述。
项目名称
将REST api添加到HCatalog的最初工作称为Templeton。为了向后兼容,该名称仍然出现在url、日志文件名等中。邓普顿的名字取自获奖儿童小说《夏洛特的网》中的一个角色,作者是e·b·怀特。小说的主人公是一头名叫威尔伯的猪。坦普尔曼是一只老鼠,它一边织网,一边帮威尔伯跑腿,按夏洛的要求送货。
Navigation Links
Next: WebHCat Installation
General: WebHCat Manual – HCatalog Manual – Hive Wiki Home – Hive Project Site
参考链接:
https://cwiki.apache.org/confluence/display/Hive/WebHCat+UsingWebHCat