Hive概述及其基本原理

Hive是一个基于Hadoop的数据仓库工具,提供类SQL查询功能,用于大规模数据分析。它将SQL语句转换为MapReduce任务在HDFS上执行。Hive包括用户接口、驱动模块和元数据存储,其工作流程涉及编译、优化和执行MR任务。Hive适合批处理分析,不适用于实时查询。此外,Hive HA通过HAProxy实现高可用性。
摘要由CSDN通过智能技术生成

Hive是一个基于Hadoop的数据仓库工具, 可以将结构化的数据文件映射为一张表, 并提供类似于SQL的查询功能。

Hive本身并不存储和处理数据,更像是一个接口,存储由HDFS实现,处理数据由MapReduce实现。简单来说,Hive可以将sql语句转换为MapReduce任务, 在HDFS上进行数据查询。

Hive的特点

  • Hive采用类SQL开发,简单容易上手,避免了编写MapReduce的工作
  • Hive执行延迟比较高,无法胜任实时的工作(OLTP),大多用于数据分析工作(OLAP)。
  • Hive擅长处理大规模的数据

Hive系统架构

在这里插入图片描述
(图源:https://zhuanlan.zhihu.com/p/25608332)

Hive主要由以下三个模块组成:

  • 用户接口模块,含CLI、HWI、JDBC、Thrift Server等,用来实现对Hive的访问。CLI是Hive自带的命令行界面;HWI是Hive的一个简单网页界面;JDBC、ODBC以及Thrift Server可向用户提供进行编程的接口,其中Thrift Server是基于Thrift软件框架开发的,提供Hive的RPC通信接口。
  • 驱动模块(Driver),含编译器、优化器、执行器等,负责把HiveQL语句转换成一系列MR作业,所有命令和查询都会进入驱动模块,通过该模块的解析变异,对计算过程进行优化,然后按照指定的步骤执行。
  • 元数据存储模块(Metastore),是一个独立的关系型数据库,通常与MySQL数据库连接后创建的一个MySQL实例,也可以是Hive自带的Derby数据库实例。此模块主要保存表模式和其他系统元数据,如表的名称、表的列及其属性、表的分区及其属性、表的属性、表中数据所在位置信息等。

Hive工作原理

接下来,我们使

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值