依据CAP理论,从应用的需求不同,数据库的选择可从三方面考虑:
- 考虑CA,这就是传统上的关系型数据库(RDBMS)。
- 考虑CP,主要是一些Key-Value数据库,典型代表为Google的Big Table,将各列数据进行排序存储。数据值按范围分布在多台机器,数据更新操作有严格的一致性保证。
- 考虑AP,主要是一些面向文档的适用于分布式系统的数据库,如Amazon的Dynamo,Dynamo将数据按key进行Hash存储。其数据分片模型有比较强的容灾性,因此它实现的是相对松散的弱一致性——最终一致性。