首頁  >  文章  >  資料庫  >  hive的非交互模式

hive的非交互模式

WBOY
WBOY原創
2016-06-07 16:09:551329瀏覽

在linux的终端执行:$HIVE_HOME/bin/hive 会进入交互模式; $HIVE_HOME/bin/hive -e或者-f 总是非交互模式 1、非交互模式执行HQL语句 $HIVE_HOME/bin/hive -e select * from movie limit 10 会现实mapreduce的进度,但不会进入hive的交互模式,最终现实查询

在linux的终端执行:$HIVE_HOME/bin/hive 会进入交互模式;

$HIVE_HOME/bin/hive -e或者-f 总是非交互模式

1、非交互模式执行HQL语句

$HIVE_HOME/bin/hive  -e 'select * from movie limit 10'
会现实mapreduce的进度,但不会进入hive的交互模式,最终现实查询结果

2、非交互模式执行HQL语句(-S静音模式)

$HIVE_HOME/bin/hive -S -e 'select * from movie limit 10'
加入-S选项,不会显示mapreduce进度
[hadoop@gaoyuan hive-0.14]$ bin/hive -S -e 'select * from movie limit 10'
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/home/hadoop/hadoop-2.4.0/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/hadoop/hive-0.14/lib/hive-jdbc-0.14.0-SNAPSHOT-standalone.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
Error rolling back: Can't call rollback when autocommit=true
1	1	133	8
2	1	720	6
3	1	971	10
4	1	1095	7
5	1	1616	10
6	1	1978	7
7	1	2145	8
8	1	2211	8
9	1	3751	7
10	1	4062	3
3、把hive查询导出到一个文件中
$HIVE_HOME/bin/hive -S -e 'select * from movie limit 10' > /gaoyuan/ouput.txt
这个会把hive查询语句的执行结果导入output.txt文件中

4、不进入hive交互模式,执行hive脚本

$HIVE_HOME/bin/hive -f hiveScript.sql

也可以把输出结果存入一个文件中

$HIVE_HOME/bin/hive -f hiveScript.sql >> /home/username/output.txt

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn