share nothing 和 share disk

链接:https://www.zhihu.com/question/20120283/answer/35490381

share nothing和share disk是两种常见的分布式数据库模型。

share nothing架构下,每个结点都有自己的CPU、内存、存储。跨结点的数据访问通过结点之间的网络通讯来完成。

share disk架构下,每个结点有自己的CPU和内存,但是共享同一个存储。也就是说,存储只有一份,放在单独的分布式文件系统上,由文件系统本身来保证其可用性,一般由高端的专门存储设备来完成。

大多数分布式数据库都是share nothing的。比较典型的share disk数据库有oracle RAC和DB2 PureScale。mysql cluster的结点之间不共享存储(每个结点有自己的存储),所以属于share nothing。

share nothing和share disk各有利弊,无法简单地认为谁优谁劣,也不存在谁才是“真正的”分布式数据库的问题。二者当然都可以实现事务。一般来说,share disk的实现更复杂,价格也更昂贵。

wiki有个关于share nothing的条目可供参考:

Shared nothing architecture

这里有share nothing和share disk的比较:

Shared-Disk vs. Shared-Nothing_百度文库

主从架构是一种高可用性的解决方案,不属于分布式数据库的范畴。

你可能感兴趣的:(share nothing 和 share disk)