数据仓库工具Hive的功能详情

作者 : 开心源码 本文共835个字,预计阅读时间需要3分钟 发布时间: 2022-05-12 共212人阅读

Hive是Hadoop项目中的另一个子项目,它是建立在Hadoop基础之上的数据仓库工具,可以存储、查询和分析存储在HDFS中的大规模数据。从架构上看,Hive功能板块包括客户端、解释器、元数据存储和分析数据存储。如下图所示:

Hive功能结构

客户端:主要包含命令行(CLI)、用户端(Client)和Web图形化界面(WebGUI)。最常用的是CLI,它启动的时候会同时启动一个Hive守护进程服务,使用者可以交互式地输入地输入命令并得到相应的结果输出。Client是Hive的用户端,客户通过它连接到Hive的服务器。Client模式启动的时候,需要启动Hive服务器所在的节点,并进行相应的配置。WebGUI工具允许客户通过浏览器访问Hive,使用前要启动HWI组件(Hive Web Interface)。

解释器:主要包含执行编译器、优化器和执行器,它们完成HiveQL查询语句的词法分析、语法分析、编译、优化及计划的生成。生成的查询计划也会存储在HDFS中,并在随后通过MapReduce框架调用执行。这也表现了Hive的核心思想之一,就是尽量简化MapReduce开发的工作量,使得某些操作和查询的复杂逻辑对使用者完全透明。

元数据存储:Hive中的元数据包括表的名字、表的列、表分区、表数据所在的目录、能否为外部表,等等。虽然Hive采用NoSQL的方式进行工作,但它依然使用关系型数据库存储元数据,这点主要是考虑到元数据的规模较小,而对读写同步的要求很高。此外,将元数据的存储从Hive的数据服务中解耦出来,可以大大减少执行语义检查的时间,也能提高整个系统运行的健壮性。常用的关系型数据库配置是MySQL或者Derby嵌入式数据库。

分析数据存储:Hive用于分析的海量数据都存储在HDFS之中,支持不同的存储类型包括纯文本文件、HBase等文件。一旦解释器接受了HiveQL,那么Hive将直接读取HDFS的数据,并将查询逻辑转化成MapReduce计算来完成。

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 数据仓库工具Hive的功能详情

发表回复