登录
首页大数据时代Hbase是什么?与Hive有哪些区别?
Hbase是什么?与Hive有哪些区别?
2020-07-14
收藏

HbaseE是一个具有高可靠性、高性能特点、面向列、可伸缩的分布式存储系统。利用Hbase技术能够在廉价PC Server上搭建起大规模结构化存储集群。Hbase的目标为:存储并处理大型的数据。更进一步说就是仅需通过普通的硬件配置,处理由成千上万的行和列所组成的大型数据。

一、Hbase基本概念

RowKey:是Byte array,是表中每条记录的“主键”,方便迅速查找,Rowkey的设计非常重要。

Column Family:列族,拥有一个名称(string),包含一个或者多个相关列

Column:属于某一个columnfamily,familyName:columnName,每条记录能够动态添加

Version Number:类型为Long,默认值是系统时间戳,可由用户自定义

Value(Cell):Byte array

二、HbaseHive异同点

相同点

HBase 和 Hive 都是架构在 Hadoop 之上,用 HDFS 做底层的数据存储,用 MapReduce 做数据计算

不同点

1、Hive 是建立在 Hadoop 之上为了降低 MapReduce 编程复杂度的 ETL 工具。

HBase 是为了弥补 Hadoop 对实时操作的缺陷

2、Hive 表是纯逻辑表,因为 Hive 的本身并不能做数据存储和计算,而是完全依赖 Hadoop

HBase 是物理表,提供了一张超大的内存 Hash 表来存储索引,方便查询

3、Hive数据仓库工具,需要全表扫描,就用 Hive,因为 Hive 是文件存储

HBase 是数据库,需要索引访问,则用 HBase,因为 HBase 是面向列的 NoSQL 数据库

4、Hive 表中存入数据(文件)时不做校验,属于读模式存储系统

HBase 表插入数据时,会和 RDBMS 一样做 Schema 校验,所以属于写模式存储系统

5、Hive 不支持单行记录操作,数据处理依靠 MapReduce,操作延时高

HBase 支持单行记录的 CRUD,并且是实时处理,效率比 Hive 高得多

数据分析咨询请扫描二维码

客服在线
立即咨询