码迷,mamicode.com
首页 > 数据库 > 详细

数据库构架设计中的Shared Everthting、Shared Nothing、和Shared Disk

时间:2018-11-14 20:52:41      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:cto   mysq   serve   模型   增加   ado   服务   并行   之间   

Shared Everthting:一般是针对单个主机,完全透明共享CPU/MEMORY/IO,并行处理能力是最差的,典型的代表SQLServer

 

Shared Disk:各个处理单元使用自己的私有 CPU和Memory,共享磁盘系统。典型的代表Oracle Rac, 它是数据共享,可通过增加节点来提高并行处理的能力,扩展能力较好。其类似于SMP(对称多处理)模式,但是当存储器接口达到饱和的时候,增加节点并不能获得更高的性能 。

 

Shared Nothing:各个处理单元都有自己私有的CPU/内存/硬盘等,不存在共享资源,类似于MPP(大规模并行处理)模式,各处理单元之间通过协议通信,并行处理和扩展能力更好。典型代表DB2 DPF和hadoop ,各节点相互独立,各自处理自己的数据,处理后的结果可能向上层汇总或在节点间流转。

我们常说的 Sharding 其实就是Share Nothing架构,它是把某个表从物理存储上被水平分割,并分配给多台服务器(或多个实例),每台服务器可以独立工作,具备共同的schema,比如MySQL Proxy和Google的各种架构,只需增加服务器数就可以增加处理能力和容量。

ps:Actor模型也用了Shared Nothing 这个设计。

数据库构架设计中的Shared Everthting、Shared Nothing、和Shared Disk

标签:cto   mysq   serve   模型   增加   ado   服务   并行   之间   

原文地址:https://www.cnblogs.com/wintersoft/p/9959852.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!