分布式数据库

分布式系统与网络分区

Contents

  • 1 分布式系统的基本: 数据一致性
  • 2 网络分区
    • 2.1 实例1:传统数据库与2PC
    • 2.2 实例2: Redis
    • 2.3 实例3: MongoDB
    • 2.4 实例4: Dynamo
    • 2.5 实例5: BigTable
  • 3 思考: 分布式数据库系统的设计
  • 4 小结
  • 5 参考资料
在OpenStack中,数据库是主要系统“状态”的主要来源。大部分Core Projects都使用传统关系型数据库作为系统数据和状态的存储,另外如Ceilometer使用了MongoDB,还有其他Incubator Projects使用了Redis作为队列或者状态存储。数据库给OpenStack提供了状态组件并把状态的“共享”问题交给了数据库,因此解决OpenStack的扩展问题实际上就是解决使用的数据库本身的扩展问题。比如OpenStack HA Solution最令人头疼的就是传统关系数据库或者其他数据存储的扩展问题,数据库扩展问题的根源是其本身不支持分布式和良好的扩展性,而这个根源又会衍生出分布式系统最大的噩梦–“网络分区”。

你可能感兴趣的:(分布式数据库)