1、关系型数据库RDBMS
结构:
- 数据库以表的形式存在
- 支持FAT、NTFS、EXT、文件系统
- 使用Commit log存储日志
- 参考系统是坐标系统
- 使用主键(PK)
- 支持分区
- 使用行、列、单元格
功能:
-
支持向上扩展
-
使用SQL查询
-
面向行,即每一行都是一个连续单元
-
数据总量依赖于服务器配置
-
具有ACID支持
-
适合结构化数据
-
传统关系型数据库一般都是中心化的
-
支持事务*
-
支持Join
2、HBase
结构:
- 数据库以region的形式存在
- 支持HDFS文件系统
- 使用WAL(Write-Ahead Logs)存储日志
- 参考系统是Zookeeper
- 使用行键(row key)
- 支持分片
- 使用行、列、列族和单元格
功能:
-
支持向外扩展
-
使用API和MapReduce来访问HBase表数据
-
面向列,即每一列都是一个连续的单元
-
数据总量不依赖具体某台机器,而取决于机器数量
-
HBase不支持ACID(Atomicity、Consistency、Isolation、Durability)
-
适合结构化数据和非结构化数据
-
一般都是分布式的
-
HBase不支持事务
-
不支持SQL
-
不支持Join