可以从命令 $ HIVE_HOME/HCatalog/bin/hcat 调用HCatalog命令行界面(CLI),其中$ HIVE_HOME是Hive的主目录. hcat 是用于初始化HCatalog服务器的命令.
使用以下命令初始化HCatalog命令行.
cd $HCAT_HOME/bin./hcat
如果安装已正确完成,那么你将获得以下输出 :
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]usage: hcat { -e "" | -f " " } [ -g " " ] [ -p " " ] [ -D" = " ]-D use hadoop value for given property-e hcat command given from command line-f hcat commands in file-g group for the db/table specified in CREATE statement-h,--help Print help information-p permissions for the db/table specified in CREATE statement
HCatalog CLI支持这些命令行选项 :
Sr.No | 选项 | 示例&描述 |
---|---|---|
1 | - g | hcat -g mygroup ... 要创建的表必须具有"mygroup"组. |
2 | - p | hcat -p rwxr-xr-x ... 要创建的表必须具有读,写和执行权限. |
3 | - f | hcat -f myscript.HCatalog ... myscript.HCatalog是一个包含要执行的DDL命令的脚本文件. |
4 | - e | hcat -e'create table mytable(a int);'... 将以下字符串视为DDL命令并执行它. |
5 | - D | hcat -Dkey = value ... 将键值对传递给HCatalog作为Java系统属性. |
6 | - | hcat 打印使用信息. |
注意和减号;
-g 和 -p 选项不是必需的.
同时,可以提供 -e 或 -f 选项,而不是两者.
期权的顺序并不重要;您可以按任何顺序指定选项.
Sr.No | DDL Command&描述 |
---|---|
1 | CREATE TABLE 使用HCatalog创建表.如果使用CLUSTERED BY子句创建表,则无法使用Pig或MapReduce写入该表. |
2 | ALTER TABLE 除REBUILD和CONCATENATE选项外,支持.它的行为与Hive中的行为相同. |
3 | DROP TABLE 支持.行为与Hive相同(删除整个表和结构). |
4 | 创建/更改/删除视图 支持.行为与Hive相同. 注意 : Pig和MapReduce无法读取或写入视图. |
5 | 显示表格 显示表格列表. |
6 | 显示分区 显示清单分区. |
7 | 创建/删除索引 支持CREATE和DROP FUNCTION操作,但创建的函数仍必须在Pig中注册并放在CLASSPATH中以用于MapReduce. |
8 | DESCRIBE 支持.行为与Hive相同.描述结构. |
上表中的一些命令将在后续章节中解释.