Hive是构建在Hadoop上的数据仓库框架,通用,可伸缩的数据处理平台
Jeff团队为管理和(机器)学习Facebook的海量网络数据而产生
设计目的:精通SQL但Java编程技能弱的分析师能对存放在HDFS的数据执行查询
Hive把SQL查询转换为一系列在Hadoop集群上运行的作业。数据组织为表,给HDFS的数据赋予结构,元数据存储在metastore中,属于SQL的"方言"
HiveQL:
> HiveQL大小写不敏感,以;结尾
> hive -f script.q 执行script.q中的命令
> hive -e 'select * from dummy' 行内嵌入命令
安装Hive
Hive版本要和Hadoop版本适应,否则即使即使启动了还是会报错如下
java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
Hadoop是使用2.7.4版本,想使用最新的3.0的Hive但是报了上面的metastore错,换成2.1.1和2.2.0还是一样的错,最终使用1.2.2稳定版可行
其他可以尝试但不一定解决问题的方案:https://blog.csdn.net/hhj724/article/details/79094138
步骤
> 启动Hadoop
> 解压 tar -zxvf apache-hive-1.2.2-bin.tar.gz
> 设置环境变量
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
source /etc/profile
> hive命令启动