Hive简介:
Hive 是基于 Hadoop 的一个数据仓库工具,实质就是一款基于 HDFS 的 MapReduce 计算框架,对存储在 HDFS 中的数据进行分析和管理
非java编程者对hdfs的数据做mapreduce操作。
Hive 具有 SQL 数据库的外表,但应用场景完全不同,Hive 只适合用来做海量离线数 据统计分析,也就是数据仓库。
通过sql语句操作hdfs,底层调用mapreduce。
Hive:数据仓库(历史数据分析,数据积累分析)
Hive:解释器,编译器,优化器等;
Hive运行时,元数据存储在关系型数据库里(MySql等)。
yum,rpm,源码安装,压缩包 -------linux安装软件
具体讲解参考hive
Hive架构:
hive官网:hive
![](https://img.haomeiwen.com/i15737641/022d772a4e34c810.png)
Client提交任务到Driver,1.向关系型数据库查询(元数据);2.解释,编译SQL语句,成为jar任务,3.执行mapreduce任务,最后返回结果。
-编译器将一个Hive SQL转化成操作符;
-操作符是Hive的最小的处理单元;
-每个操作符代表HDFS的一个操作或者一道MapReduce作业。
Operator:Select,TableScan,Limit,File Output操作;
Hive采用第三方ANTLR语法分析工具解析hql;
Hive搭建模式
1.Local模式
此模式连接到一个In-memory的数据库Derby,一般用于Unit Test。
2.单用户模式
此模式通过网络连接到一个数据库,是最经常使用的模式。
3.远程服务器模式/多用户模式
用于非java客户端访问元数据库,在服务器启动MataStroreServer,客户端利用Thrift协议通过MataStroreServer访问元数据库。
下面主要介绍单用户模式和多用户模式的搭建:
搭建准备,MySql的安装:
安装mysql: yum install -y mysql-server
启动服务: service mysqld start
chkconfig mysqld on
输入:mysql启动进程;
设置用户访问:
show tables;
select user, host,password from user;
修改mysql权限:
flush privileges;
删除多余的会对权限造成影响的数据;
mysql -uroot -p 登录mysql服务器;
单用户模式安装:
1.下载hive的安装包,上传到服务器,tar 解压安装,配置环境变量/etc/profile;
2.这种存储方式需要在本地运行一个mysql服务器,并作如下配置(下面两种使用mysql的方式,需要将mysql的jar包拷贝到$HIVE_HOME/lib目录下)。
配置文件:
hive.metastore.warehouse.dir:/user/hive_remote/warehouse
hive.metastore.local:true
javax.jdo.option.ConnectionURL:jdbc:mysql://localhost/hive_remote?createDatabaseIfNotExist=true
javax.jdo.option.ConnectionDriverName:com.mysql.jdbc.Driver
javax.jdo.option.ConnectionUserName:hive
javax.jdo.option.ConnectionPassword:password
[ERROR] Terminal initialization failed; falling back tounsupported
java.lang.IncompatibleClassChangeError: Found classjline.Terminal, but interface was expected atjline.TerminalFactory.create(TerminalFactory.java:101)
错误的原因: Hadoop jline版本和hive的jline不一致
hadoop的jline jar包存放位置:HADOOP_HOME/share/hadoop/yarn/lib/下
其中的jline包为:jline-0.9.94.jar(hadoop-2.6.5)
hive的jline jar包存放位置:HIVE_HOME/lib/下
其中的jline包为:jline-2.12.jar(hive-1.2.1)
删除hadoop的jline包,把hive的jline包放进去。
多用户模式安装:
参考链接:多用户模式
使用参考链接:基本使用
网友评论