HCatalog – CLI
HCatalog – CLI
HCatalog 命令行界面 (CLI) 可以从命令$HIVE_HOME/HCatalog/bin/hcat 调用,其中 $HIVE_HOME 是 Hive 的主目录。hcat是用于初始化 HCatalog 服务器的命令。
使用以下命令初始化 HCatalog 命令行。
cd $HCAT_HOME/bin ./hcat
如果安装正确完成,那么您将获得以下输出 –
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] usage: hcat { -e "<query>" | -f "<filepath>" } [ -g "<group>" ] [ -p "<perms>" ] [ -D"<name> = <value>" ] -D <property = value> use hadoop value for given property -e <exec> hcat command given from command line -f <file> hcat commands in file -g <group> group for the db/table specified in CREATE statement -h,--help Print help information -p <perms> 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 … 将键值对作为 Java 系统属性传递给 HCatalog。 |
6 | —— |
hcat 打印使用消息。 |
注意 –
-
该-g和-p选项是不是强制性的。
-
一次可以提供-e或-f选项,但不能同时提供。
-
选项的顺序无关紧要;您可以按任何顺序指定选项。
Sr.No | DDL 命令和描述 |
---|---|
1 |
CREATE TABLE 使用 HCatalog 创建一个表。如果您使用 CLUSTERED BY 子句创建一个表,您将无法使用 Pig 或 MapReduce 对其进行写入。 |
2 |
ALTER TABLE 支持,除了 REBUILD 和 CONCATENATE 选项。它的行为与 Hive 中的相同。 |
3 |
DROP TABLE 支持的。行为与 Hive 相同(删除完整的表和结构)。 |
4 |
CREATE/ALTER/DROP VIEW 支持的。行为与 Hive 相同。 注意– Pig 和 MapReduce 无法读取或写入视图。 |
5 |
SHOW TABLES 显示表列表。 |
6 |
SHOW PARTITIONS 显示分区列表。 |
7 |
Create/Drop Index 支持 CREATE 和 DROP FUNCTION 操作,但创建的函数仍然必须在 Pig 中注册并放置在 MapReduce 的 CLASSPATH 中。 |
8 |
DESCRIBE 支持的。行为与 Hive 相同。描述结构。 |
上表中的一些命令将在后续章节中进行解释。