[一起学Hive]之八-使用Hive命令行
来源:互联网 发布:js如何验证手机号码 编辑:程序博客网 时间:2024/05/17 22:46
文章同步自 [ lxw的大数据田地 ]
Hive提供的几种用户交互接口中,最常用的就是命令行接口。本文简单介绍一下Hive命令行接口(Hive Command Line)及Hive交互Shell(Hive Interactive Shell)的一些使用。
七、使用Hive命令行
7.1 Hive Command Line
输入$HIVE_HOME/bin/hive –H 或者 –help可以显示帮助选项:
-d,–define <key=value>定义一个变量值,这个变量可以在Hive交互Shell中引用,后面会介绍用法,比如:-d A=B–database <databasename>进入Hive交互Shell时候指定数据库,默认进入default数据库-e <quoted-query-string>命令行执行一段SQL语句-f <filename>filename文件中保存HQL语句,执行其中的语句-H,–help显示帮助信息-h <hostname>连接远程Hive Server,后续介绍–hiveconf <property=value>在命令行中设置Hive的运行时配置参数,优先级高于hive-site.xml,但低于Hive交互Shell中使用Set命令设置。–hivevar <key=value>同—define-i <filename>进入Hive交互Shell时候先执行filename中的HQL语句-p <port>连接远程Hive Server的端口号-S,–silent静默模式,指定后不显示执行进度信息,最后只显示结果-v,–verbose冗余模式,额外打印出执行的HQL语句
这里特别介绍一下以下几个选项:
- -d,–define <key=value>
执行$HIVE_HOME/bin/hive -d k1=v1 –database lxw1234
表示,定义了一个变量k1,值为v1,执行了数据库为lxw1234
进入Hive交互Shell之后,可以使用${k1}来引用该变量,比如:
hive> select ‘${k1}’ from t_lxw1234 limit 1;
OK
v1
这里将k1的值v1打印出来。
- –hiveconf <property=value>
可以使用该选项设定Hive的运行参数配置,相当于在Hive交互Shell中使用set命令进行设置,比如:
执行$HIVE_HOME/bin/hive –hiveconf mapred.reduce.tasks=20
进入交互Shell之后,运行的所有查询都会设置20个reduce task。
除非又用set mapred.reduce.tasks=N;进行另外设定。
- –hivevar <key=value>
用法同-d和—define
7.2 Hive交互Shell
Hive交互Shell指执行$HIVE_HOME/bin/hive之后,进入的有hive>提示符的交互式命令行,在这里可以执行查询语句,设置参数等等,所有的命令必须以分号结束,具体有以下命令和选项:
- quit
退出交互Shell
- exit
退出交互Shell
- reset
重置所有的Hive运行时配置参数,比如,之前使用set命令设置了reduce数量,使用reset之后,重置成hive-site.xml中的配置。
- set <key>=<value>
设置Hive运行时配置参数,优先级最高,相同key,后面的设置会覆盖前面的设置。
- set –v
打印出所有Hive的配置参数和Hadoop的配置参数。
- add命令
包括 add FILE[S] <filepath> <filepath>* 、 add JAR[S] <filepath> <filepath>* 、add ARCHIVE[S] <filepath> <filepath>*
向DistributeCache中添加一个或过个文件、jar包、或者归档,添加之后,可以在Map和Reduce task中使用。
比如,自定义一个udf函数,打成jar包,在创建函数之前,必须使用add jar命令,将该jar包添加,否则会报错找不到类。
- list 命令
包括 list FILE[S] 、list JAR[S] 、list ARCHIVE[S]
列出当前DistributeCache中的文件、jar包或者归档。
- delete 命令
包括 delete FILE[S] <filepath>* 、delete JAR[S] <filepath>* 、 delete ARCHIVE[S] <filepath>*
从DistributeCache中删除文件
- ! <command>
在交互Shell中执行Linux操作系统命令并打印出结果,不常用
比如:
hive> !pwd;
/home/lxw1234
- dfs <dfs command>
在交互Shell中执行hadoop fs 命令,不常用
比如,统计hdfs文件系统中/tmp/目录的总大小:
hive> dfs -du -s /tmp/;
54656194751 /tmp
- <query string>
最常用的,执行HQL语句,以分号结尾;
- source FILE <filepath>
在交互Shell中执行一个脚本,不常用。
Hive相关文章(持续更新):
一起学Hive系列
—-Hive概述,Hive是什么
—-Hive函数大全-完整版
—-Hive中的数据库(Database)和表(Table)
—-Hive的安装配置
—-Hive的视图和分区
—-Hive的动态分区
—-向Hive表中加载数据
Hive分析函数系列
Hive索引
hive优化之——控制hive任务中的map数和reduce数
- [一起学Hive]之八-使用Hive命令行
- [一起学Hive]之八-使用Hive命令行
- [一起学Hive]之二–Hive函数大全-完整版
- [一起学Hive]之四-Hive的安装配置
- [一起学Hive]之五-Hive的视图和分区
- [一起学Hive]之六-Hive的动态分区
- [一起学Hive]之九-Hive的查询语句SELECT
- [一起学Hive]之二–Hive函数大全-完整版
- [一起学Hive]之四-Hive的安装配置
- [一起学Hive]之五-Hive的视图和分区
- [一起学Hive]之六-Hive的动态分区
- [一起学Hive]之九-Hive的查询语句SELECT
- [一起学Hive]之十二-Hive SQL的优化
- [一起学Hive]之十八-Hive UDF开发
- [一起学Hive]之九-Hive的查询语句SELECT
- [一起学Hive]之十二-Hive SQL的优化
- [一起学Hive]之二–Hive函数大全-完整版
- [一起学Hive]之五-Hive的视图和分区
- delphi 控件 combobox常识
- 深入理解HTTP Session
- C常用的对数组操作的几个方法
- Git使用技巧(整理)三 实战
- Keil4 断点按钮为灰色解决方法
- [一起学Hive]之八-使用Hive命令行
- iOS 开发学习36 reveal使用
- Android实现网络多线程断点续传下载
- [一起学Hive]之九-Hive的查询语句SELECT
- IE虚拟打印问题
- iPhone 6 Plus真机调试时遇到的问题
- ar 多个.a 到一个.a
- Android 属性动画教程
- LeetCode 题解(115): Basic Calculator