Heim >Datenbank >MySQL-Tutorial >hive的非交互模式

hive的非交互模式

WBOY
WBOYOriginal
2016-06-07 16:09:551365Durchsuche

在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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn