Hive - 简介和安装

xiaoxiao2021-02-28  66

一、产生背景

初代的hadoop的MapReduce写起来非常的麻烦。兼容RDBMS人员的“云化”,方便使用类SQL操作大数据集。

二、架构

  根据上图可以知道,Hive的接口可以是命令行、JDBC(JDBC主要的作用就是去MySQL表中取结果信息)、Web等。一条Hive SQL会像一条SQL一样,语法解析,优化器优化,执行器执行。不同的事,执行器执行在分布式存储系统上(HDFS),这样执行器也可以有多种选择(MapReduce、Spark…..)。那HDFS上是文件怎么和关系型数据库的结构化存储联系在一起呢?!MatesStore,里面存储统一的元数据信息。常用的MatesStore有MySQL。   虽然Hive与关系型数据库都是写SQL或者叫类SQL,Hive与关系型数据库还是有不同的地方。关系型数据库更关注的是查询实时性,一个语句不可能等太久。而Hive更关注的是一个大数据仓库的统计和分析,延时性会非常高。

三、Hive部署

3.1 下载Hive CDH版本

下载 cdh版本 hive-1.1.0-cdh5.7.0 http://archive.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.7.0.tar.gz

3.2 解压到指定路径下

tar -zxvf hive-1.1.0-cdh5.7.0.tar.gz -C ../app/

3.3 添加环境变量和改变文件所属

1、添加环境变量 vim ~/.bash_profile 添加 #HIVE export HIVE_HOME=/home/hadoop/app/hive-1.1.0-cdh5.7.0 export PATH=$HIVE_HOME/bin:$PATH 2、生效 source ~/.bash_profile 3、改变hive-1.1.0-cdh5.7.0文件归属 chown -R hadoop:hadoop hive-1.1.0-cdh5.7.0

3.4 拷贝MySQL的连接驱动

因为要连接MySQL来存储统一的元数据信息 cp mysql-connector-java-5.1.46-bin.jar /home/hadoop/app/hive-1.1.0-cdh5.7.0/lib/

3.5 配置

配置文件在$HIVE_HOME/conf下 1、设置Hive的环境变量中hadoop地址(如果全局变量设置过了$HADOOP_HOME就不用) cp hive-env.sh.template hive-env.sh 增加 HADOOP_HOME=/home/hadoop/app/hadoop-2.6.0-cdh5.7.0 2、设置MySQL的连接设置 hive-site.xml vim hive-site.xml 增加以下内容 <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <!--连接MysqlURL--> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://hadoop001:3306/myhivedatabase?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>root</value> </property> </configuration> 3、为了防止在上诉第2点中,生成的数据库myhivedatabase对创建表报错,在生成数据库后,对数据库语言使用拉丁字符集 登入mysql mysql -uroot -proot 修改字符集 alter database myhivedatabase character set latin1;

3.6 启动

启动: $HIVE_HOME/bin/hive
转载请注明原文地址: https://www.6miu.com/read-2614638.html

最新回复(0)