牛骨文教育服务平台(让学习变的简单)
博文笔记

(8)Hive Shell 基本操作——深入浅出学Hive

创建时间:2014-01-16 投稿人: 浏览次数:6078

转自:http://sishuok.com/forum/blogPost/list/6220.html

第一部分:Hive bin下脚本介绍 Hive bin下的脚本介绍 Ext hive hive-config 第二部分:Hive Shell 基本操作 Hive 命令行 •hive [-hiveconf x=y]* [<-i filename>]* [<-f filename>|<-e query-string>] [-S] •-i   从文件初始化HQL •-e   从命令行执行指定的HQL • -f   执行HQL脚本 •-v   输出执行的HQL语句到控制台 •-p <port> connect to Hive Server on port number -hiveconf x=y Use this to set hive/hadoop configuration variables. Hive 命令行示例 •从命令行执行指定的sql语句 •$HIVE_HOME/bin/hive -e "select a.col from tab1 a" •以指定的hive环境变量执行指定的sql语句 •$HIVE_HOME/bin/hive -e "select a.col from tab1 a" -hiveconf hive.exec.scratchdir=/home/my/hive_scratch -hiveconf mapred.reduce.tasks=32 •以沉默模式执行指定的sql语句,并将执行结果导出到指定文件 HIVE_HOME/bin/hive  -e "select a.col from tab1 a" > a.txt •以非交互式模式执行sql文件 •HIVE_HOME/bin/hive -f /home/my/hive-script.sql •在进入交互模式之前,执行初始化sql文件 •HIVE_HOME/bin/hive -i /home/my/hive-init.sql Hive 交互式Shell命令 • 当命令 $HIVE_HOME/bin/hive以不带 -e/-f 选项的方式运行时, hive将进入到交互模式 •以(;)冒号结束命令行
*Command * Description
quit 退出命令行
set <key>=<value> 设置参数
set -v 打印出所有Hive支持的命令
*Command * Description
add FILE <value> <value>* 增加一个文件到资源列表.
list FILE 列出所有已经添加的资源
list FILE <value>* 根据value来查看添加的资源
! <cmd> execute a shell command from hive shell
dfs <dfs command> 执行DFS的命令
<query string> 执行查询并输出到标准输出
第三部分:日志 日志 •Hive使用Log4J来处理日志 •我们可以通过下面的命令设计Hive的日志级别 •$HIVE_HOME/bin/hive -hiveconf hive.root.logger=INFO,console •hive.root.logger的有INFO,DEBUG, 等 第四部分:资源 Hive添加资源 •Hive可以动态的添加资源,如文件 •一般情况下,我们是在与Hive进行交互时添加文件 •实际上是使用Hadoop的 Distributed Cache来控制的 例子 •ADD { FILE[S] | JAR[S] | ARCHIVE[S] } <filepath1> [<filepath2>]* •LIST { FILE[S] | JAR[S] | ARCHIVE[S] } [<filepath1> <filepath2> ..] • DELETE { FILE[S] | JAR[S] | ARCHIVE[S] } [<filepath1> <filepath2> ..]

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。