Hive数据仓库工具安装
一.Hive介绍
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单SQL查询功能,SQL语句转换为MapReduce任务进行运行。 优点是可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。缺点是Hive不适合在大规模数据集上实现低延迟快速的查询。
二.安装Hive
环境:Docker(17.04.0-ce)、镜像Ubuntu(16.04.3)、JDK(1.8.0_144)、Hadoop(3.1.1)、Hive(3.1.0)
1.安装Hadoop
参考:Hadoop伪分布式模式安装
2.使用root安装MySQL
root@lab-bd:~# apt-get install -y mysql-server
root@lab-bd:~# /etc/init.d/mysql start
3.切换用户bigdata,解压Hive
root@lab-bd:~# su - bigdata
bigdata@lab-bd:~$ tar -xf apache-hive-3.1.-bin.tar.gz
4.Hive依赖Hadoop,编辑.bashrc文件,添加环境变量
export HADOOP_HOME=/home/bigdata/hadoop-3.1.
5.激活环境变量
bigdata@lab-bd:~$ source .bashrc
6.启动Hdfs服务
bigdata@lab-bd:~$ hadoop-3.1./sbin/start-dfs.sh
7.启动Yarn服务
bigdata@lab-bd:~$ hadoop-3.1./sbin/start-yarn.sh
8.创建Hive数据仓库存储目录(/tmp已存在则跳过创建)
bigdata@lab-bd:~$ hadoop-3.1./bin/hdfs dfs -mkdir -p /tmp
bigdata@lab-bd:~$ hadoop-3.1./bin/hdfs dfs -chmod g+w /tmp
bigdata@lab-bd:~$ hadoop-3.1./bin/hdfs dfs -mkdir -p /user/hive/warehouse
bigdata@lab-bd:~$ hadoop-3.1./bin/hdfs dfs -chmod g+w /user/hive/warehouse
9.新建conf/hive-site.xml文件,并增加如下配置项
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?useSSL=false&createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>password</value>
</property>
</configuration>
10.下载mysql-connector驱动包,并移动到lib目录下
bigdata@lab-bd:~$ mv mysql-connector-java-5.1..jar apache-hive-3.1.-bin/lib/
11.初始化metastore元数据库
bigdata@lab-bd:~$ apache-hive-3.1.-bin/bin/schematool -dbType mysql -initSchema
三.运行Hive
1.命令行运行Hive
bigdata@lab-bd:~$ apache-hive-3.1.-bin/bin/hive
2.Beeline运行Hive
修改etc/hadoop/core-site.xml文件,增加如下配置项
<property>
<name>hadoop.proxyuser.bigdata.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.bigdata.groups</name>
<value>*</value>
</property>
重启hadoop服务
bigdata@lab-bd:~$ hadoop-3.1./sbin/stop-dfs.sh
bigdata@lab-bd:~$ hadoop-3.1./sbin/start-dfs.sh
启动hiveserver2服务
bigdata@lab-bd:~$ nohup apache-hive-3.1.-bin/bin/hive --service hiveserver2 &
启动beeline连接hive
bigdata@lab-bd:~$ apache-hive-3.1.-bin/bin/beeline -u jdbc:hive2://localhost:10000
四.运行异常
1.运行Hive异常
异常FAILED: HiveException java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
原因是metastore元数据库没有初始化
使用schematool命令初始化metastore数据库
bigdata@lab-bd:~$ apache-hive-3.1.-bin/bin/schematool -dbType mysql -initSchema
2.初始化metastore异常
异常org.apache.hadoop.hive.metastore.HiveMetaException: Failed to load driver
原因Hive的lib目录下无MySQL驱动包
下载mysql-connector驱动包,并移动到lib目录下
bigdata@lab-bd:~$ mv mysql-connector-java-5.1..jar apache-hive-3.1.-bin/lib/
3.beeline连接异常
异常User: bigdata is not allowed to impersonate anonymous (state=08S01,code=0)
原因不允许匿名用户访问,需要配置etc/hoaddop/core-site.xml文件,增加如下配置项,proxyuser后为代理用户(bigdata)
<property>
<name>hadoop.proxyuser.bigdata.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.bigdata.groups</name>
<value>*</value>
</property>
Hive数据仓库工具安装的更多相关文章
- Hive数据仓库工具基本架构和入门部署详解
@ 目录 概述 定义 本质 特点 Hive与Hadoop关系 Hive与关系型数据库区别 优缺点 其他说明 架构 组成部分 数据模型(Hive数据组织形式) Metastore(元数据) Compil ...
- 基于hadoop的数据仓库工具:Hive概述
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行.其优点是学习成本低,可以通过类 ...
- (第7篇)灵活易用易维护的hadoop数据仓库工具——Hive
摘要: Hive灵活易用且易于维护,十分适合数据仓库的统计分析,什么样的结构让它具备这些特性?我们如何才能灵活操作hive呢? 博主福利 给大家推荐一套hadoop视频课程 [百度hadoop核心架构 ...
- Hive和SparkSQL:基于 Hadoop 的数据仓库工具
Hive 前言 Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的 SQL 查询功能,将类 SQL 语句转换为 MapReduce 任务执行. ...
- Hive和SparkSQL: 基于 Hadoop 的数据仓库工具
Hive: 基于 Hadoop 的数据仓库工具 前言 Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的 SQL 查询功能,将类 SQL 语句转 ...
- Hive:数据仓库工具,由Facebook贡献。
Hadoop Common: 在0.20及以前的版本中,包含HDFS.MapReduce和其他项目公共内容,从0.21开始HDFS和MapReduce被分离为独立的子项目,其余内容为Hadoop Co ...
- 杂项:hive(数据仓库工具)
ylbtech-杂项:hive(数据仓库工具) hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapRedu ...
- Hive介绍、安装(转)
1.Hive介绍 1.1 Hive介绍 Hive是一个基于Hadoop的开源数据仓库工具,用于存储和处理海量结构化数据.它是Facebook 2008年8月开源的一个数据仓库框架,提供了类似于SQL语 ...
- 【转】 hive简介,安装 配置常见问题和例子
原文来自: http://blog.csdn.net/zhumin726/article/details/8027802 1 HIVE概述 Hive是基于Hadoop的一个数据仓库工具,可以将结构化 ...
随机推荐
- mysql全文索引之模糊查询
旧版的MySQL的全文索引只能用在MyISAM表格的char.varchar和text的字段上. 不过新版的MySQL5.6.24上InnoDB引擎也加入了全文索引,所以具体信息大家可以随时关注官网, ...
- Mybatis foreach标签含义
背景 考虑以下场景: InfoTable(信息表): Name Gender Age Score 张三 男 21 90 李四 女 20 87 王五 男 22 92 赵六 女 19 94 孙七 女 23 ...
- HbuilderX 常用快捷键
最新2019.3.30版本已经添加idea的快捷键,就不需要再额外记住HbuilderX的快捷键啦~ 链接 输入a,按下tab 加粗 ctrl+B 换行 需要换行的那一行后面加2个空格(或者按下tab ...
- Java集合性能分析-疯狂Java讲义
一.各Set实现类的性能分析 HashSet和TreeSet是Set的两个典型实现.HashSet的性能总是比TreeSet好(特别是最常用的添加.查询元素等操作),因为TreeSet需要额外的红黑树 ...
- 10. Condition 控制线程通信
1. 是什么 ? 2. 示例 package com.gf.demo09; import java.util.concurrent.locks.Condition; import java.util. ...
- Java学习笔记之——接口
接口(interface)和抽象类 为何要定义接口?------>实现不同的方法 Java的设计思想是单继承和多实现 类:属性和方法的集合,方法围绕着属性转,可以理解为自定义的类型 接口:与类是 ...
- 借鉴Glide思想二次封装Fresco
本篇文章已授权微信公众号 dasu_Android(大苏)独家发布 最近封装了个 Fresco 的组件库:DFresco,就顺便来讲讲. 背景 Fresco 图片库很强大,我们项目中就是使用的 Fre ...
- jQuery效果之雪花飘落
实现思路 1.在一定的频率下在页面中生成一定数目的雪花从上往下飘落: 2.在指定的时间内飘落后移除页面: 3.可设置雪花的大小,在一定范围内随机雪花大小: 4.什么时间后清除生成雪花,停止函数. js ...
- vue.js插入dom节点的方式
html代码: <div id="app"></div> js代码: var MyComponent = Vue.extend({ template: '& ...
- loj#6031. 「雅礼集训 2017 Day1」字符串(SAM 广义SAM 数据分治)
题意 链接 Sol \(10^5\)次询问每次询问\(10^5\)个区间..这种题第一感觉就是根号/数据分治的模型. \(K\)是个定值这个很关键. 考虑\(K\)比较小的情况,可以直接暴力建SAM, ...