关于hive:hive-变量和参数

4次阅读

共计 982 个字符,预计需要花费 3 分钟才能阅读完成。

Hive 中变量和属性命名空间:

  • hivevar:用户自定义变量(Hive0.8 及之后的版本)。可读可写。
  • hiveconf:Hive 相干的配置属性。可读可写。
  • system:Java 定义的配置属性。可读可写。
  • env:Shell 环境定义的环境变量。只可读。

–defind key=value 等价于 –hivevar key=value
hivevar 前缀可选,但 system: 或 env: 必须有。

在 CLI 中,应用 set 命令显示或批改变量值。

set env:HOME;

// 设置变量
set hivevar:foo=bar;
// 获取变量
set hivevar:foo;

参数:

-v:

set; // 打印 hivevar、hiveconf、system、env 中所有变量
set -v; // 还打印 Hadoop 中所定义的所有属性

-e:
一次应用命令,多个查问用分号分隔。
在 Hive Shell 外执行。
hive -e “select * from table limit 3 “;

-S:
在 Hive Shell 外执行。
开启静默模式。在输入后果中去掉“OK”、“Time taken”等行和其余无关紧要的输入信息。
hive -S -e “select * from table limit 3 ” > /tmp/query

-f:
执行指定文件中一个或多个查问。
在 Hive Shell 外执行:
hive -f /path/to/file/withqueries.hql;
在 Hive Shell 内执行:
source /path/to/file/withqueries.hql;

-i:
指定一个文件,当 CLI 启动时,在命令提示符呈现前会先执行这个文件。

!:
在 Hive Shell 内执行。
在命令前加上 ! 并且以分号结尾能够应用 bash shell 命令。
Hive CLI 不能应用交互式命令,不反对管道性能和主动补全性能。
! /bin/echo “ha ha”;

dfs:
在 Hive Shell 内执行。
执行 Hadoop 命令,将 hadoop 关键字去掉,以分号结尾就能够。
dfs -ls /;

ctrl+A:挪动到行首。
ctrl+B:挪动到行尾。

hive.cli.priint.current.db=true; Hive v0.8.0 版本减少属性,打印以后所在的数据库名。
hive.exec.mode.local.auto=true; 开启本地模式。
hive.cli.print.header=true; 打印出字段名称。

正文完
 0