导航:首页 > 源码编译 > hive编译详细

hive编译详细

发布时间:2022-04-14 00:24:37

❶ 程序中的Hive具体是干什么用的呢

Hive是基于Hadoop平台的数仓工具,具有海量数据存储、水平可扩展、离线批量处理的优点,解决了传统关系型数仓不能支持海量数据存储、水平可扩展性差等问题,但是由于Hive数据存储和数据处理是依赖于HDFS和MapRece,因此在Hive进行数据离线批量处理时,需将查询语言先转换成MR任务,由MR批量处理返回结果,所以Hive没法满足数据实时查询分析的需求。
Hive是由FaceBook研发并开源,当时FaceBook使用Oracle作为数仓,由于数据量越来越大,Oracle数仓性能越来越差,没法实现海量数据的离线批量分析,因此基于Hadoop研发Hive,并开源给Apacha。
由于Hive不能实现数据实时查询交互,Hbase可提供实时在线查询能力,因此Hive和Hbase形成了良性互补。Hbase因为其海量数据存储、水平扩展、批量数据处理等优点,也得到了广泛应用。
Pig与HIVE工具类似,都可以用类sql语言对数据进行处理。但是他们应用场景有区别,Pig用于数据仓库数据的ETL,HIVE用于数仓数据分析。
从架构图当中,可看出Hive并没有完成数据的存储和处理,它是由HDFS完成数据存储,MR完成数据处理,其只是提供了用户查询语言的能力。Hive支持类sql语言,这种SQL称为Hivesql。用户可用Hivesql语言查询,其驱动可将Hivesql语言转换成MR任务,完成数据处理。
【Hive的访问接口】
CLI:是hive提供的命令行工具
HWI:是Hive的web访问接口
JDBC/ODBC:是两种的标准的应用程序编程访问接口
Thrift Server:提供异构语言,进行远程RPC调用Hive的能力。
因此Hiv具备丰富的访问接口能力,几乎能满足各种开发应用场景需求。
【Driver】
是HIVE比较核心的驱动模块,包含编译器、优化器、执行器,职责为把用户输入的Hivesql转换成MR数据处理任务
【Metastore】
是HIVE的元数据存储模块,数据的访问和查找,必须要先访问元数据。Hive中的元数据一般使用单独的关系型数据库存储,常用的是Mysql,为了确保高可用,Mysql元数据库还需主备部署。
架构图上面Karmasphere、Hue、Qubole也是访问HIVE的工具,其中Qubole可远程访问HIVE,相当于HIVE作为一种公有云服务,用户可通过互联网访问Hive服务。
Hive在使用过程中出现了一些不稳定问题,由此发展出了Hive HA机制,

❷ 我想学习hive,请问安装hive之前,必须安装centos、hadoop、java这些吗

安装需要
java 1.6,java 1.7或更高版本。
Hadoop 2.x或更高, 1.x. Hive 0.13 版本也支持 0.20.x, 0.23.x
linux,mac,windows操作系统。以下内容适用于linux系统。
安装打包好的hive
需要先到apache下载已打包好的hive镜像,然后解压开该文件
$ tar -xzvf hive-x.y.z.tar.gz

设置hive环境变量
$ cd hive-x.y.z$ export HIVE_HOME={{pwd}}

设置hive运行路径
$ export PATH=$HIVE_HOME/bin:$PATH

编译Hive源码
下载hive源码
此处使用maven编译,需要下载安装maven。

以Hive 0.13版为例
编译hive 0.13源码基于hadoop 0.23或更高版本
$cdhive$mvncleaninstall-Phadoop-2,dist$cdpackaging/target/apache-hive-{version}-SNAPSHOT-bin/apache-hive-{version}-SNAPSHOT-bin$lsLICENSENOTICEREADME.txtRELEASE_NOTES.txtbin/(alltheshellscripts)lib/(requiredjarfiles)conf/(configurationfiles)examples/(sampleinputandqueryfiles)hcatalog/(hcataloginstallation)scripts/(upgradescriptsforhive-metastore)
编译hive 基于hadoop 0.20
$cdhive$antcleanpackage$cdbuild/dist#lsLICENSENOTICEREADME.txtRELEASE_NOTES.txtbin/(alltheshellscripts)lib/(requiredjarfiles)conf/(configurationfiles)examples/(sampleinputandqueryfiles)hcatalog/(hcataloginstallation)scripts/(upgradescriptsforhive-metastore)
运行hive
Hive运行依赖于hadoop,在运行hadoop之前必需先配置好hadoopHome。
export HADOOP_HOME=<hadoop-install-dir>

在hdfs上为hive创建\tmp目录和/user/hive/warehouse(akahive.metastore.warehouse.dir) 目录,然后你才可以运行hive。
在运行hive之前设置HiveHome。
$ export HIVE_HOME=<hive-install-dir>

在命令行窗口启动hive
$ $HIVE_HOME/bin/hive

若执行成功,将看到类似内容如图所示

❸ hive的Hive 体系结构

主要分为以下几个部分:
用户接口
用户接口主要有三个:CLI,Client 和 WUI。其中最常用的是 CLI,Cli 启动的时候,会同时启动一个 Hive 副本。Client 是 Hive 的客户端,用户连接至 Hive Server。在启动 Client 模式的时候,需要指出 Hive Server 所在节点,并且在该节点启动 Hive Server。 WUI 是通过浏览器访问 Hive。
元数据存储
Hive 将元数据存储在数据库中,如 mysql、derby。Hive 中的元数据包括表的名字,表的列和分区及其属性,表的属性(是否为外部表等),表的数据所在目录等。
解释器、编译器、优化器、执行器
解释器、编译器、优化器完成 HQL 查询语句从词法分析、语法分析、编译、优化以及查询计划的生成。生成的查询计划存储在 HDFS 中,并在随后由 MapRece 调用执行。
Hadoop
Hive 的数据存储在 HDFS 中,大部分的查询由 MapRece 完成(包含 * 的查询,比如 select * from tbl 不会生成 MapRece 任务)。

❹ 请详细描述安装配置hive的步骤

嗯,首先你需要下载它的安装包,然后断网,然后进行相应的安装步骤,之后嗯,安装相应的补丁就可以了

❺ hive的安装配置

你可以下载一个已打包好的hive稳定版,也可以下载源码自己build一个版本。
安装需要 java 1.6,java 1.7或更高版本。 Hadoop 2.x或更高, 1.x. Hive 0.13 版本也支持 0.20.x, 0.23.x Linux,mac,windows操作系统。以下内容适用于linux系统。 安装打包好的hive
需要先到apache下载已打包好的hive镜像,然后解压开该文件 $tar-xzvfhive-x.y.z.tar.gz设置hive环境变量 $cdhive-x.y.z$exportHIVE_HOME={{pwd}}设置hive运行路径 $exportPATH=$HIVE_HOME/bin:$PATH编译Hive源码
下载hive源码
此处使用maven编译,需要下载安装maven。
以Hive 0.13版为例 编译hive 0.13源码基于hadoop 0.23或更高版本
$cdhive$mvncleaninstall-Phadoop-2,dist$cdpackaging/target/apache-hive-{version}-SNAPSHOT-bin/apache-hive-{version}-SNAPSHOT-bin$lsLICENSENOTICEREADME.txtRELEASE_NOTES.txtbin/(alltheshellscripts)lib/(requiredjarfiles)conf/(configurationfiles)examples/(sampleinputandqueryfiles)hcatalog/(hcataloginstallation)scripts/(upgradescriptsforhive-metastore) 编译hive 基于hadoop 0.20
$cdhive$antcleanpackage$cdbuild/dist#lsLICENSENOTICEREADME.txtRELEASE_NOTES.txtbin/(alltheshellscripts)lib/(requiredjarfiles)conf/(configurationfiles)examples/(sampleinputandqueryfiles)hcatalog/(hcataloginstallation)scripts/(upgradescriptsforhive-metastore) 运行hive
Hive运行依赖于hadoop,在运行hadoop之前必需先配置好hadoopHome。 exportHADOOP_HOME=<hadoop-install-dir>在hdfs上为hive创建 mp目录和/user/hive/warehouse(akahive.metastore.warehouse.dir) 目录,然后你才可以运行hive。
在运行hive之前设置HiveHome。 $exportHIVE_HOME=<hive-install-dir>在命令行窗口启动hive $$HIVE_HOME/bin/hive若执行成功,将看到类似内容如图所示

❻ 如何编译hive_hbase-handler.jar

之前上传了一个文档:http://wenku..com/view/faec57fb04a1b0717fd5dd00.html?st=1你可以看看。

❼ hive的源代码的编译与调试怎么做

windows自带的记事本只能做编辑源代码使用,要编译需要有编译器才行,找些其他的集成化软件,编辑编译连接调试集成一体的,如vc6.0,wintc等

❽ Hive是什么

此外,hive也支持熟悉map-rece的开发者使用map-rece程序对数据做更加复杂的分析。 hive可以很好的结合thrift和控制分隔符,也支持用户自定义分隔符。 hive基于hadoop,hadoop是批处理系统,不能保存低延迟,因此,hive的查询也不能保证低延迟。 hive的工作模式是:提交一个任务,等到任务结束时被通知,而不是实时查询。相对应的是,类似于Oracle这样的系统当运行于小数据集的时候,响应非常快,可当处理的数据集非常大的时候,可能需要数小时。需要说明的是,hive即使在很小的数据集上运行,也可能需要数分钟才能完成。 低延迟不是hive追求的首要目标。

阅读全文

与hive编译详细相关的资料

热点内容
个人idc销售源码 浏览:70
资治通鉴下载pdf 浏览:456
北京英雄联盟服务器云空间 浏览:781
算法铺砖预留一个空不铺 浏览:933
江苏java程序员接私活项目 浏览:180
wap商城源码下载 浏览:845
天猫精灵接人源码 浏览:293
香港加密货币监管跟踪研究 浏览:543
广州五险一金算法 浏览:449
运用列主元消去法编程 浏览:864
如何在图片中加密 浏览:741
android停止补间动画 浏览:727
空气压缩机图例 浏览:884
怎么让应用加密oppo 浏览:818
甜糖服务器为什么老是网络变化 浏览:123
部队吃的压缩饼干 浏览:88
linux下安装mongodb 浏览:92
phptextarea换行符 浏览:503
做衣服pdf 浏览:801
lcb2服务器怎么用 浏览:216