本地安装:
把apache-hive-1.2.1-bin.tar.gz上传到linux的/opt/software目录下
tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /opt/module/
mv apache-hive-1.2.1-bin/ hive
mv hive-env.sh.template hive-env.sh
export HADOOP_HOME=/opt/module/hadoop-2.7.2
export HIVE_CONF_DIR=/opt/module/hive/conf
必须启动hdfs和yarn(参考hadoop-HA)
配置环境变量
HADOOP_HOME=/module/hadoop2.6
export PATH=$PATH:$HIVE_HOME/bin
基本操作
create table student(id int, name string) ROW FORMAT DELIMITED FIELDS TERMINATED
BY '\t';
show tables;
desc student;
基本配置:
1.在hive-site.xml文件中添加如下配置信息,就可以实现显示当前数据库,以及查询表的头信息配置。
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
2.Hive运行日志信息配置
启动时的日志可用通过该hive -hiveconf hive.root.logger=debug,console命令查看
修改/opt/module/hive/conf/hive-log4j.properties.template文件名称为hive-log4j.properties
hive.log.dir=$HIVE_HOME/logs
3.参数配置
- 配置文件
- 默认配置文件:hive-default.xml
- 用户自定义配置文件:hive-site.xml(用户自定义配置会覆盖默认配置。另外,Hive也会读入Hadoop的配置,因为Hive是作为Hadoop的客户端启动的,Hive的配置会覆盖Hadoop的配置。配置文件的设定对本机启动的所有Hive进程都有效)
- 命令行参数方式
启动Hive时,可以在命令行添加-hiveconf param=value来设定参数。例如:bin/hive -hiveconf mapred.reduce.tasks=10;(注意:仅对本次hive启动有效)
查看参数设置:set mapred.reduce.tasks;
- 参数声明方式
可以在HQL中使用SET关键字设定参数(注意:仅对本次hive启动有效)
命令行使用
关于命令行引用,可以使用hive当然也可以使用beeline,需要配置hiveserver2 和memstore
#hive 初始化
bin/schematool -dbType mysql -initSchema
nohup /export/server/hive-2.1.0/bin/hive --service metastore &
nohup /export/server/hive-2.1.0/bin/hive --service hiveserver2 &
beeline
#建立链接
!connect jdbc:hive2://node3:10000
#core-site.xml文件配置
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
本地模式
set hive.exec.mode.local.auto=true;
参考文档:https://cwiki.apache.org/confluence/display/Hive/GettingStarted
beeline使用问题:https://blog.csdn.net/brad_q1/article/details/88773554