hive-1.1.0-cdh5.7.0 的编译安装并修改元数据存储数据库为MySQL

15 篇文章 8 订阅

1 准备工作

1.1 配置jdk1.7
1.2 部署MySQL
1.3 安装maven
1.4编译安装 hadoop-2.6.0-cdh5.7.0.src.tar.gz
1.5创建hadoop用户
 安装的目录结构:/opt/software

参考该博客
下载地址(hive-1.1.0-cdh5.7.0 和 hadoop-2.6.0-cdh5.7.0.src.tar.gz )

2 下载hive-1.1.0-cdh5.7.0-src.tar.gz(版本号要对应)

下载:hive-1.1.0-cdh5.7.0-src.tar.gz
[hadoop@zydatahadoop001 software]$wget http://archive.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.7.0-src.tar.gz
  • 我在解压的时候出现了一个问题 :Exiting with failure status due to previous errors
    解决方法:切换至root用户进行解压或者赋予零食root权限即加上sudo。

3 编译,解压

[root@zydatahadoop001 hive-1.1.0-cdh5.7.0]# mvn clean package -DskipTests -Phadoop-2 -Pdist

编译之后,会在源码目录下面的packaging/target目录下面生成一个tar包,相关的hive模块jar包都能在这个tar包里面找到。
文件名称:apache-hive-1.1.0-cdh5.7.0-bin.tar.gz
把编译好的文件mv到software目录下
解压:
[root@zydatahadoop001 software]#tar -zxvf apache-hive-1.1.0-cdh5.7.0-bin.tar.gz

4 安装部署

4.1 修改用户和用户组
查看下载好的hive-1.1.0-cdh5.7.0
这里已经把编译好的mv到了software目录下
[root@zhangyu software]# ll
total 460064
drwxr-xr-x.  8 root   root        4096 Jan 14 05:22 apache-hive-1.1.0-cdh5.7.0-bin
-rw-r--r--.  1 root   root   105763125 Jan 14 02:57 apache-hive-1.1.0-cdh5.7.0-bin.tar.gz
drwxr-xr-x.  6 root   root        4096 Nov 10  2015 apache-maven-3.3.9
-rw-r--r--.  1 root   root     8617253 Jan 14  2018 apache-maven-3.3.9-bin.zip
lrwxrwxrwx.  1 hadoop hadoop        35 Jan 14 01:23 hadoop -> /opt/software/hadoop-2.6.0-cdh5.7.0
drwxr-xr-x. 15 hadoop hadoop      4096 Jan 14 01:50 hadoop-2.6.0-cdh5.7.0
-rw-r--r--.  1 root   root   311585484 Jan 13 23:29 hadoop-2.6.0-cdh5.7.0.tar.gz
drwxrwxr-x. 32 root   root        4096 Jan 14 02:46 hive-1.1.0-cdh5.7.0
-rw-r--r--.  1 root   root    14652104 Jan 13 21:46 hive-1.1.0-cdh5.7.0-src.tar.gz
-rw-r--r--.  1 root   root    29966286 Jan 14  2018 sqoop-1.4.6-cdh5.7.0.tar.gz

[root@zydatahadoop001 software]# chown -R hadoop:hadoop apache-hive-1.1.0-cdh5.7.0-bin

建立软连接兵修改用户和用户组:
[root@zydatahadoop001 software]# ln -s apache-hive-1.1.0-cdh5.7.0-bin hive
[root@zydatahadoop001 software]# chown -R hadoop:hadoop hive
[root@zydatahadoop001 software]# chown -R hadoop:hadoop hive/*
(这里没什么要进行两次chown呢? 对软连接使用chown和文件夹使用chown的区别,以前博客中有介绍。)
4.2 添加HIVE_HOME到系统环境变量
[root@zydatahadoop001 ~]# vi /etc/profile
添加下面内容:
export HIVE_HOME=/opt/software/hive

export PATH=$HIVE_HOME/bin:$PATH
4.3Hive配置修改(hive-env.sh)
[hadoop@zydatahadoop001 hive]$ cd conf/

修改hive-env.sh.template 为 hive-env.sh
[hadoop@zydatahadoop001 conf]$ cp hive-env.sh.template  hive-env.sh
[hadoop@zydatahadoop001 conf]$ vi hive-env.sh

在hive-env.sh添加一行
# Set HADOOP_HOME to point to a specific hadoop install directory
# HADOOP_HOME=${bin}/../../hadoop
添加该行:
HADOOP_HOME=/opt/software/hadoop
4.4 添加hive-site.xml mysql的连接文件(统一的元元数据管理)
创建文件夹hive-site.xml
[hadoop@zydatahadoop001 conf]$ vi hive-site.xml

添加下面的内容:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
<property>
  <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/basic01?createDatabaseIfNotExist=true</value>  (自动创建basic01数据库)
    </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>123456</value>   (密码)
    </property>
</configuration>
4.5在lib下添加mysql驱动包
上传mysql驱动
[hadoop@zydatahadoop001 lib]$ rz

解压
[hadoop@zydatahadoop001 lib]$ unzip mysql-connector-java-5.1.45

将mysql-connector-java-5.1.45-bin.jar移动到lib目录下:
[hadoop@zydatahadoop001 lib]$ cp mysql-connector-java-5.1.45/mysql-connector-java-5.1.45-bin.jar .

5 创建表进行测试

启动hive:
[hadoop@zydatahadoop001 hive]$ hive
which: no hbase in (/usr/java/jdk1.8.0_45/bin:/opt/software/hive/bin:/opt/software/hadoop-cdh/sbin:/opt/software/hadoop-cdh/bin:/opt/software/findbugs-1.3.9/bin:/usr/local/protobuf/bin:/opt/software/apache-maven-3.3.9/bin:/usr/java/jdk1.8.0_45/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin)

Logging initialized using configuration in jar:file:/opt/software/hive-1.1.0-cdh5.7.0/lib/hive-common-1.1.0-cdh5.7.0.jar!/hive-log4j.properties

hive> show databases;
OK
default
Time taken: 1.548 seconds, Fetched: 1 row(s)
hive> use default;
OK
Time taken: 0.086 seconds

创建一张表:
hive> create table helloword (id int,name string ) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';

hive> show tables;
OK
helloword
Time taken: 0.145 seconds, Fetched: 1 row(s)

向表中添加数据
hive> load data local inpath '/home/hadoop/helloword.txt' into table helloword;
Loading data to table default.helloword
Table default.helloword stats: [numFiles=1, totalSize=27]
OK
Time taken: 9.705 seconds
hive> select * from helloword;
OK
1       zhangsan
2       lisi
3       wangwu
Time taken: 0.294 seconds, Fetched: 3 row(s)
### 回答1: apache-hive-1.1.0-bin.tar.gz是一个Apache Hive的二进制发布版本。Apache Hive是一个建立在Apache Hadoop之上的数据仓库基础架构,用于提供数据汇总、查询和分析的功能。 这个二进制发布版本是经过编译的,可以直接在已经安装Hadoop环境的机器上使用。用户可以通过下载并解压这个tar.gz文件,获得Hive的可执行文件、配置文件和其他必要的库文件。 Apache Hive提供了一种类似于传统关系型数据库的查询语言,称为HiveQL,使得用户可以使用类似SQL的语法来查询和分析存储Hadoop集群中的数据。HiveQL编译器将用户的查询转换为MapReduce任务,并在Hadoop上执行这些任务。 除了查询语言之外,Hive还提供了数据的存储与管理机制,包括表的创建、数据的导入导出以及分区和桶的管理等功能。这使得用户可以更方便地将结构化数据映射到Hadoop的分布式文件系统中。 Apache Hive主要用于处理大规模的结构化数据,如日志文件、社交网络数据和传感器数据等。它适用于那些需要对海量数据进行汇总、分析和挖掘的应用场景。 通过使用Apache Hive,用户可以充分利用Hadoop的强大分布式计算能力和存储能力,以更高效的方式进行数据处理和分析。它使得普通的开发人员和分析师可以利用Hadoop集群进行复杂的数据操作,而不需要深入了解Hadoop的底层技术细节。 ### 回答2: Apache Hive是建立在Apache Hadoop之上的一个数据仓库基础设施,它提供了一种将结构化数据存储Hadoop上并进行查询和分析的方式。 "apache-hive-1.1.0-bin.tar.gz"是Apache Hive 1.1.0版本的二进制发布压缩文件。这个文件包含了Hive的二进制可执行文件和相关的库,可以用于安装和运行Hive。 要使用这个文件,首先需要将其下载到本地计算机中。然后,可以使用合适的解压缩工具(如WinRAR或tar命令)对压缩文件进行解压缩。 解压缩后,会得到一个包含Hive二进制文件、配置文件和其他必要文件的目录。通过修改配置文件,可以对Hive进行自定义设置,例如指定Hadoop集群的位置和其他相关参数。 安装完成后,可以使用Hive提供的命令行界面或其他Hive客户端工具连接到Hadoop集群并执行SQL查询。Hive支持类似于传统关系型数据库的SQL查询语言,称为HiveQL。 使用Hive,用户可以通过编写HiveQL查询来处理和分析大规模的结构化数据。Hive提供了对数据的抽象和查询优化,以便将查询转化为适合在Hadoop集群上执行的任务。 简而言之,"apache-hive-1.1.0-bin.tar.gz"是Apache Hive的二进制发布压缩文件,通过安装和配置后,可以使用Hive来进行大规模结构化数据的存储、查询和分析。 ### 回答3: apache-hive-1.1.0-bin.tar.gz 是一个开源的数据仓库工具,用于在Hadoop上进行数据汇总、查询和分析。它是基于Apache Hadoop的一个数据仓库基础设施,为用户提供了一个类SQL的查询语言(HiveQL)来对存储Hadoop集群中的数据进行查询和分析。 该软件包是以.tar.gz的压缩格式提供的,需要使用相关的解压缩软件将其解压缩。解压缩后会得到一个文件夹,里面包含了Hive的所有相关文件和目录。 Hive提供了一个用于管理和查询大规模分布式数据的平台,并支持海量数据的处理和分析。它基于Hadoop的HDFS存储和MapReduce计算模型,将用户提交的HiveQL语句转换为对Hadoop集群的MapReduce任务。 Hive的主要特点包括: 1. 可扩展性:Hive能够处理大规模的数据,并且能够方便地水平扩展集群规模,以满足不断增长的数据需求。 2. 易于使用:Hive提供了类似SQL的查询语言,使得用户可以更加方便地进行数据查询和分析,而无需编写复杂的MapReduce程序。 3. 多样的数据源:Hive可以处理多种不同的数据源,包括Hadoop HDFS、HBase、Amazon S3等,使得用户可以从不同的数据源中进行数据汇总和分析。 4. 扩展性:Hive提供了丰富的扩展接口,用户可以根据自己的需求编写自定义的函数、聚合操作和存储格式等。 5. 容错性:Hive在处理大规模数据时具备良好的容错性,能够自动处理节点故障或数据丢失等异常情况。 总之,apache-hive-1.1.0-bin.tar.gz是一个功能强大的数据仓库工具,为用户提供了一种简单、灵活和高效的方式来处理和分析大规模数据。它是基于Apache Hadoop的开源项目,广泛应用于各个行业的大数据处理和分析场景中。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值