Hbase和关系型数据库、HDFS、Hive的区别

文章详细阐述了Hbase与关系型数据库在存储结构、事务支持和JOIN操作上的差异,Hbase与HDFS在存储特性和读写性能上的不同,以及Hbase与Hive在数据处理目的、查询延迟和适用场景上的区别。Hbase是面向列的NoSQL数据库,适合实时查询,而Hive则更适合离线数据分析。
摘要由CSDN通过智能技术生成

目录

1.Hbase和关系型数据库的区别

 2.Hbase和HDFS的区别

 3.Hbase和Hive的区别


1.Hbase和关系型数据库的区别

          关系型数据库                       Hbase
存储适合结构化数据,单机存储适合结构化和半结构数据的松散数据,分布式存储
功能

(1)支持ACID

(2)支持join

(3)使用主键PK

(4)数据类型:int、varchar等

(1)仅支持单行事务

(2)不支持join,把数据糅合到一张大表

(3)行键 row key

(4)数据类型:byte[]

 2.Hbase和HDFS的区别

            HDFS                            Hbase
功能

(1)具有高吞吐量,是一个非常适合存储大型文件的分布式文件系统。

(2)适合于批量数据处理, 主要应用离线OLAP, 不支持随机读写(即:无法在文件中快速查询某个数据)

(1)基于hadoop, 和 HDFS是一种强依赖关系, HBase的吞吐量不是特别高, 支持高效的随机读写特性(即:大型表提供快速记录查找(和更新))为

(2)HBase内部将大量数据放在HDFS中名为「StoreFiles」的索引中,以便进行高速查找。

(3) Hbase比较适合做快速查询等需求,而不适合做大规模的OLAP应用。

思考:HBase是基于HDFS, 但是HDFS并不支持随机读写特性, 但是HBase却支持高效的随机读写特性, 两者貌似出现了一定的矛盾关系?

        HBase是基于HDFS之上的一个分布式的列存储数据库,而HDFS是一个分布式文件系统。虽然HDFS本身不支持随机读写,但是HBase通过其自身的结构和实现方式,可以在HDFS之上实现高效的随机读写特性。

        具体来说,HBase将数据按行分片存储在HDFS上,每个数据行可以根据其行键进行快速定位和访问。HBase还采用了B树索引和布隆过滤器等技术来加速随机查询的速度。同时,HBase还通过缓存、批量操作等手段来提高随机写入的性能。因此,HBase可以在HDFS之上实现高效的随机读写,从而满足更广泛的应用需求。

 3.Hbase和Hive的区别

HbaseHive

1. NoSQL数据库。

2. 是一种面向列存储的非关系型数据库。

3. 用于存储结构化和非结构化的数据。

4. 适用于单表非关系型数据的存储,不适合做关联查询,类似JOIN等操作。

5. 基于HDFS。

6. 数据持久化存储的体现形式是Hfile,存放于DataNode中,被ResionServer以region的形式进行管理。

7. 延迟较低,接入在线业务使用.

8. 面对大量的企业数据,HBase可以直线单表大量数据的存储,同时提供了高效的数据访问速度。

1. 数据仓库工具。

2. Hive的本质其实就相当于将HDFS中已经存储的文件在Mysql中做了一个双射关系,以方便使用HQL去管理查询。

3. 用于数据分析、清洗。

4. Hive适用于离线的数据分析和清洗,延迟较高

5. 基于HDFS、MapReduce。

6. Hive存储的数据依旧在DataNode上,编写的HQL语句终将是转换为MapReduce代码执行。

                                                           总结

1.Hive和Hbase是两种基于Hadoop的不同技术实现。

          (1)Hive是一种类SQL的引擎,并且运行MapReduce任务。

          (2)Hbase是一种在Hadoop之上的NoSQL 的Key/value数据库。

2.Hive可以用来进行统计查询,HBase可以用来进行实时查询,数据也可以从Hive写到HBase,或者    从HBase写回Hive。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

别这么骄傲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值