hive 获取系统相关的信息以及客户端的简单操作
hive 随笔
1、获取当前hive的所有变量信息,包括hiveconf、hivevar、system、env等的信息
hive -S -e "set" > hive.cmd
hive -S -e "set -v" > hive.cmd #可以获取hadoop相关的属性
2、自定义变量
① 在进入hive的时候:
./hive --hiveconf y=1 #可以设置hive的配置属性
hive> select * from test where id = ${hiveconf:y}; #使用环境变量
② 在hive的cli里面设置属性
hive> set c=1;
hive> select * from test where id = ${hivevar:c}
3、hive的历史命令默认的存放位置
~/.hivehistory
4、~/.hiverc 改文件下的信息,可以在hive进入cli的时候进行初始化,默认 hive -i 执行的时候,初始化的文件
eg
[hduser@yjt hive]$ cat ~/.hiverc
set hive.cli.print.header=true;
set hive.cli.print.current.db=true;
5、hive -e 命令 命令行执行一次查询,可以是多条语句;如果加上-S参数,查询的结果将会去除执行时间、执行状态等信息
eg
hive -e "select * from test;select count(*) from logs_test";
OK
test.id test.name
1 yjt
2 yjl
3 N
4 \N
5
6 NULL
Time taken: 3.301 seconds, Fetched: 6 row(s)
OK
_c0
10000
Time taken: 0.769 seconds, Fetched: 1 row(s)
6、hive -f
从文件中读取sql语句执行
eg
[hduser@yjt hive]$ hive -f hive.sql
OK
count_value
10000
Time taken: 3.91 seconds, Fetched: 1 row(s)
#sql文件
$ cat hive.sql
select count(*) as count_value from logs_test;
在hive客户端里面,也可以执行sql脚本文件
hive (default)> source /tmp/hive/hive.sql;
OK
count_value
10000
Time taken: 3.54 seconds, Fetched: 1 row(s)
记录学习和生活的酸甜苦辣.....哈哈哈