欢迎投稿

今日深度:

hive命令行界面,

hive命令行界面,


1.变量和属性

启动hive时加入参数,进行定义变量,启动之后可以更改参数的值;

$hive --define foo=bar

hive>set foo;查询变量的值

或者hive>set hivevar:foo;

更改变量值hive>set hivevar:foo=bar2;

在创建表时可以用hive中定义的变量,如:

hive>create table hadoop (id int,${hivevar:foo} string);

hive>create table hadoop (id int,${foo} string);

可以在启动hive时用参数--hiveconf对相应的属性进行配置。

在未启动hive时可以用-e参数然后加要执行的sql命令执行查询;如:

2.查询

$hive -e "select * from hadoop limit 3";

加上参数-S可以只获取想要的对应表中的数据(不会返回ok time taken:***seconds)

$hive -S -e "select * from hadoop limit 3";

这时可以利用重定向功能将返回的结果存储到文件中。

$hive -e "select * from hadoop limit 3" >/tmp/myquery(用cat可以查看)

3.hive中还可以将多个查询语句存储在文件中,然后一并执行

$hive -f /path/file.hql   (文件一般存储为后缀名为.q或.hql)

在hive shell中可以用source /path/file.hql执行。

4.hive中还可以执行shell命令

hive>! /bin/echo "what up dog";

只要在相应的命令前面加上!即可。

注意不能使用需要用户进行输入的交互命令。

5.hive中使用hadoop的dfs命令

只需要将hadoop命令中的关键字hadoop去掉,然后用分好结束。


实际上这样比比在bash shell中执行hadoop dfs ..更高效,因为后者每次都会启动一个新的jvm实例,而hive会在同一个进程中执行这些命令。

6.hive脚本中的注释

--Copyright (c) 2012 Megacorp,LLC.

--This is the best Hive Script evar;

.....



www.htsjk.Com true http://www.htsjk.com/hive/39560.html NewsArticle hive命令行界面, 1.变量和属性 启动hive时加入参数,进行定义变量,启动之后可以更改参数的值; $hive --define foo=bar hiveset foo;查询变量的值 或者hiveset hivevar:foo; 更改变量值hiveset hi...
相关文章
    暂无相关文章
评论暂时关闭