Hive源码编译的示例分析-创新互联

小编给大家分享一下Hive源码编译的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

创新互联专注于夏县企业网站建设,响应式网站建设,电子商务商城网站建设。夏县网站建设公司,为夏县等地区提供建站服务。全流程定制网站建设,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

Hive简介:

  • Hive是一个基于Hadoop的数据仓库,可以将结构化数据映射成一张表,并提供类SQL的功能,最初由Facebook提供,使用HQL作为查询接口、HDFS作为存储底层、MapReduce作为执行层,设计目的是让SQL技能良好,但Java技能较弱的分析师可以查询海量数据,2008年facebook把Hive项目贡献给Apache。Hive提供了比较完整的SQL功能(本质是将SQL转换为MapReduce),自身大的缺点就是执行速度慢。Hive有自身的元数据结构描述,可以使用MySql\ProstgreSql\oracle 等关系型数据库来进行存储,但请注意Hive中的所有数据都存储在HDFS中。Hive具有比较好的灵活性和扩展性,支持UDF,自定义存储格式,适合离线数据处理。

Hive体系架构:
Hive源码编译的示例分析

  • 1.用户接口:包括 CLI, Client, WUI。其中最常用的是 CLI,CLI为shell命令行,Cli 启动的时候,会同时启动一个 Hive 副本。Client 是 Hive 的客户端,用户连接至 Hive Server。在启动 Client 模式的时候,需要指出 Hive Server 所在节点,并且在该节点启动 Hive Server。 WUI 是通过浏览器访问 Hive。
    2.元数据存储:通常是存储在关系数据库如 mysql, derby 中
    3.解释器、编译器、优化器、执行器:完成 HQL 查询语句从词法分析、语法分析、编译、优化以及查询计划的生成。生成的查询计划存储在 HDFS 中,并在随后有MapReduce 调用执行。
    4.Hadoop:Hive中数据用 HDFS 进行存储,利用 MapReduce 进行计算。

Hive源码编译:

我们选取CDH版本进行编译,以hive-1.1.0-cdh6.7.0版本为例。
前期准备:
1.配置jdk1.7环境。
2.安装maven。
3.安装hadoop-2.6.0-cdh6.7.0环境(版本号与hive要对应)。
注:前期我使用的是Apache 2.8版本的hadoop,目前已经更改为CDH版本

1.下载并解压源码包hive-1.1.0-cdh6.7.0-src.tar.gz
# 下载地址: http://archive.cloudera.com/cdh6/cdh/5/
[root@hadoop000 ~]# su - hadoop
[hadoop@hadoop000 ~]$ cd source
[hadoop@hadoop000 source]$ wget http://archive.cloudera.com/cdh6/cdh/5/hive-1.1.0-cdh6.7.0-src.tar.gz
[hadoop@hadoop000 source]$ tar -xzvf hive-1.1.0-cdh6.7.0-src.tar.gz
2.编译
[hadoop@hadoop000 source]$ cd hive-1.1.0-cdh6.7.0
# 需等待一段时间
[hadoop@hadoop000 hive-1.1.0-cdh6.7.0]$ mvn -Phadoop-2 -Pdist -DskipTests -Dmaven.javadoc.skip=true clean package
...
...
[INFO] Hive ODBC .......................................... SUCCESS [  5.811 s]
[INFO] Hive Shims Aggregator .............................. SUCCESS [  0.755 s]
[INFO] Hive TestUtils ..................................... SUCCESS [  1.294 s]
[INFO] Hive Packaging ..................................... SUCCESS [01:41 min]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 18:22 min
[INFO] Finished at: 2018-06-02T11:37:54+08:00
[INFO] Final Memory: 144M/494M
[INFO] ------------------------------------------------------------------------

# 编译成功 会在源码目录下面的packaging/target目录下面生成一个tar包,相关的hive模块jar包都能在这个tar包里面找到。
文件名称:apache-hive-1.1.0-cdh6.7.0-bin.tar.gz
# 可使用此包来安装Hive,也可在此网站http://archive.cloudera.com/cdh6/cdh/5/ 直接下载相应版本已编译的安装包。

以上是“Hive源码编译的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


标题名称:Hive源码编译的示例分析-创新互联
文章链接:http://myzitong.com/article/dhicgi.html