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