微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

hbase与mysql的区别是什么

区别:1、MysqL是行存储模式,hbase是列存储模式;2、MysqL的底层是binlog,hbase的底层是hdfs;3、MysqL主要用来存储业务数据,数据存储量较小,而HBase主要用来存储海量的业务数据和日志数据,数据存储量大。

本教程操作环境:windows7系统、MysqL8版本、Dell G3电脑。

MysqL + HBase是我们日常应用中常用的两个数据库,分别解决应用的在线事务问题和大数据场景的海量存储问题。

综合对比

MysqL:是常用的数据库,采用行存储模式,底层是binlog,用来存储业务数据,数据存储量较小。

HBase:列式数据库,底层是hdfs,可以存储海量的数据,主要用来存储海量的业务数据和日志数据。

从架构对比看差异

相比MysqL,HBase的架构特点:

1.完全分布式(数据分片、故障自恢复)

2.底层使用HDFS(存储计算分离)。

由架构看到的能力差异:

1. MysqL:运维简单(组件少)、延时低(访问路径短)

2.HBase:扩展性好、内置容错恢复与数据冗余

1.png

2.png

从引擎结构看差异

相比MysqL,HBase的内部引擎特点:

1. HBase原生没有sql引擎(无法使用sql访问,使用APlI),云HBase增强版(Lindorm)及开源Phoenix均提供sql能力

2.HBase使用LSM(Log-Structure Merge)树,,Innodb使用B+树。

由引擎结构(B+Tree vs LSM Tree)看到的能力差异:

1.MysqL:读写均衡、存在空间碎片

2. HBase:侧重于写、存储紧凑无浪费、Io放大、数据导入能力强

3.png

4.png

数据访问

相同之处:数据以表的模型进行逻辑组织,应用对数据进行增删改查

不同之处:MysqLsql功能更丰富:事务能力更强,HBase既可以用APIl进行更灵活、性能更好的访问,也可以借助Phoenix使用标准sql访问;只支持单行事务

【相关推荐:mysql视频教程

原文地址:https://www.jb51.cc/mysql/2915308.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐