首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >共享磁盘体系结构是扩展还是扩展?

共享磁盘体系结构是扩展还是扩展?
EN

Software Engineering用户
提问于 2019-11-25 14:18:44
回答 3查看 256关注 0票数 1

在设计数据密集型应用程序中,

如果您所需要的只是扩展到更高的负载,那么最简单的方法就是购买一台功能更强大的机器(有时称为垂直扩展或扩展)。在一个操作系统下,可以将多个CPU、多个RAM芯片和多个磁盘连接在一起,快速互连允许任何CPU访问内存或磁盘的任何部分。在这种共享内存体系结构中,所有的组件都可以看作是一台单机1。共享内存方法的问题是成本比线性增长更快:一台拥有两倍多CPU、两倍RAM和两倍磁盘容量的机器通常比另一台机器的成本高出两倍。由于瓶颈,两倍大小的机器不一定能处理两倍的负载。共享内存体系结构可能提供有限的容错能力--高端计算机具有可热交换的组件(您可以在不关闭机器的情况下替换磁盘、内存模块,甚至CPU),-but绝对只限于一个地理位置。另一种方法是共享磁盘体系结构,它使用多台具有独立CPU和RAM的机器,但将数据存储在通过快速网络连接的计算机之间共享的磁盘阵列上。这个体系结构用于一些数据仓库工作负载,但是争用和锁定开销限制了共享磁盘方法2的可伸缩性。相比之下,没有共享的体系结构3.获得了很大的普及。在这种方法中,运行数据库软件的每台机器或虚拟机都称为节点。每个节点独立地使用其CPU、RAM和磁盘。节点之间的任何协调都是在软件级别进行的,使用的是传统的网络。

共享磁盘体系结构是扩展还是扩展,还是两者兼而有之?

该体系结构使用多台机器,因为“有几台具有独立CPU和RAM的机器,但是将数据存储在机器之间共享的磁盘阵列上”。

但我不确定体系结构是否正在扩展,因为机器共享磁盘,书中没有提到扩展,直到没有共享任何体系结构。

谢谢。

EN

回答 3

Software Engineering用户

发布于 2019-11-25 14:29:11

共享磁盘是垂直缩放磁盘的方法。正如罗伯特·哈维( Robert )所指出的,您是在水平缩放内存和CPU,但是磁盘是一个(或几个)组件。

有一种简单的方法可以确定某物是水平的还是垂直的。如果您想要添加更多的容量,您是添加了更多的组件(内存、磁盘、CPU)还是需要增加组件的容量(或者替换它)。

票数 3
EN

Software Engineering用户

发布于 2019-11-25 14:25:04

看看您引用的定义,我个人的解释是,共享磁盘体系结构仍然是垂直扩展的体系结构。诚然,CPU和内存可以无限期地水平缩放,但瓶颈仍然存在于磁盘存储中。而磁盘存储不能在本地水平缩放,只能垂直缩放。因此,迟早,您会遇到磁盘吞吐量垂直扩展的限制。

票数 1
EN

Software Engineering用户

发布于 2019-11-26 06:15:58

此时,最好不要再把磁盘看作是服务器的一部分,而是把磁盘看作是“网络附加存储”(或NAS)服务的一种单独的专门形式。

在简单的情况下,NAS向单个远程计算机提供块接口(例如使用iSCSI),作为磁盘单独使用。然而,本文引用了一个额外的步骤,为多个服务器提供相同的块接口。

通过向NAS中添加更多磁盘以增加容量,或者通过增加多个冗余副本来提高读取吞吐量,可以垂直地扩展此服务。(例如RAID)

乍一看,该服务还可以通过多个NAS控制器之间的镜像进行横向缩放。但是,在多个服务器上保持多个数据副本并发的复杂性,以及对文件集的严格要求意味着,在实践中,镜像用于冗余和只读性能,提高了容错和可用性特性,但没有整体吞吐量(并且没有额外的扩展)。

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/401601

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档