一、关系型数据库
优点:
(1)功能强大
作为传统的关系型数据库,提供了完整的ACID操作,支持丰富的数据类型、强大的关联查询、where语句等,能够非常容易地建立查询索引,执行复杂的内连接、外连接、求和、排序、分组等操作,并且支持存储过程、函数等功能。
(2)产品成熟度高
对于大多数中小规模的应用来说,关系型数据库拥有强大完整的功能,以及提供的易用性、灵活性和产品成熟度,地位很难被完全替代。
受限点:
(1)不适用于高并发访问或者海量数据存储场景
(2)系统设计和管理复杂
由于需要对数据存储进行拆分,如分库分表,以及进行反范式设计,以提高系统的查询性能,是的我们放弃了关系型数据库大部分原本强大的功能,牺牲了系统的易用性,并且是的系统设计和管理变得更为复杂。
二、Key-Value存储
典型代表:Redis。
优点:
(1)灵活
丰富的数据类型支持,灵活地满足业务需求。
(2)更高的高并发
(3)更好的读写吞吐能力
三、分布式数据库
典型代表:HBase。
优点:
(1)更好的伸缩能力
(2)适合于海量数据的存储和处理
(3)并发写入性能好
由于HBase能够支持多个Region Server同时写入,所以并发写入性能十分出色。
受限点:应用场景有限。
由于HBase本身所支持的查询维度有限,难以支持复杂的条件查询,如group by、order by、join等,使得它的应用场景受到了限制。