主页 > 新闻资讯 > Hbase和Hive的区别:Hadoop数据存储分析

Hbase和Hive的区别:Hadoop数据存储分析

作者:张老师 浏览次数: 2020-02-12 17:14
在Hadoop生态系统当中,二十多个组件共同构建起大数据处理的平台解决方案,但是很多初入门的同学,常常会发现其中的某些组件似乎指向解决同一个问题,比如说Hbase和Hive两者,都是关于数据存储方面的。那么这两者难道是一样的吗,Hbase和Hive的区别是什么?

首先,从定义上来说,Hbase和Hive是两个层面的东西。

Hbase和Hive的区别

Hive是一个构建在Hadoop基础设施之上的数据仓库,通过Hive可以使用HQL语言查询存放在HDFS上的数据。HQL语言是一种类SQL语句,在Hadoop系统当中,当收到HQL查询需求之后,系统会将这个需求转换成MapReduce操作,因此实际上所执行的是计算程序,所以Hive是不能进行交互查询的。

而HBase是一种面向列的非关系型数据库,是一种Key/Value系统,在HDFS之上运行,这是在数据库上实时运行,而不是运行MapReduce任务,所以可以支持交互式的查询请求。

在Hbase中,行是key/value映射的集合,这个映射通过row-key来唯一标识。Hbase利用Hadoop的基础设施,可以利用通用的设备进行水平的扩展。

所以说,Hbase和Hive不不同层面的两个东西,千万不要混为一谈。Hive和Hbase是两种基于Hadoop的不同技术--Hive是一种类SQL的引擎,并且运行MapReduce任务,HBase是一种在Hadoop之上的NoSQL的Key/vale数据库。

在Hadoop系统的实际操作使用当中,用户可以根据实际的数据查询分析需求,将这两中工具结合起来使用。Hive可以用来进行统计查询,HBase可以用来进行实时查询,数据也可以从Hive写到Hbase,设置再从Hbase写回Hive。

关于Hbase和Hive的区别,相信大家看完以上的内容也能够有初步的了解了。作为大数据的主流运用框架之一,Hadoop能够满足绝大部分的企业大数据处理需求,而这些功能的视线,就依靠于各个组件的系统运作。成都加米谷大数据,专业大数据培训机构,大数据技术分享,更多详情可联系客服了解!
热点排行
推荐文章
立即申请>>