IBM XIV
IBM XIV阵列采用的是另一种节点设置方式。节点直接连接到底层硬件的数据保护机制。XIV只使用RIAD-1类型的保护,采用的是1MB大小的数据块,也称为分区。数据以伪随机方式均匀分布在节点上,确保对任何LUN来说,数据都是写入在所有节点上。本文底部的XIV图片显示了这个架构。节点(在XIV中称为模块)分成接口模块和数据模块。接口模块有自己的高速缓存、处理器、数据磁盘和主机接口。数据模块没有主机接口,但是仍然有高速缓存、处理器和磁盘。每个模块有12个1TB SATA驱动器。当数据写入阵列的时候,这些1MB分区写入到所有驱动器和模块中,确保任意一个分区的两个镜像对不会都处在同一个模块上。LUN的顺序分区分布在各个模块上。这样做的结果就是所有的模块都参与服务所有的卷,且单个模块的故障不会导致数据丢失。
虽然XIV可能在性能上做了不少文章,但是它仍然有一些内在风险(尽管比较小)。因为所有LUN都分布在所有磁盘上,如果两个磁盘发生故障,那么有可能带来比较严重的数据丢失。此外,XIV架构要求每个写入操作必须通过以太网交换机,因为数据首先是写入主模块和次模块上的高速缓存,然后才写入主机。因此,单个模块的总带宽受限于可用的网络容量,接口节点的带宽限制是6Gb/秒,数据节点的带宽限制是4Gb/秒。如果以太网交换机发生故障,那么带宽将进一步受到限制。
小结
如今市场上的各种多节点存储阵列实施的方式各有不同。每种方式都有自己的优点和缺点。在你为数据选择平台的时候,要充分考虑它们的优缺点。它们中哪一种方式更适合"企业级"数据仍将是热门话题。在我看来,我会希望使用"1层"存储阵列来提供高水平的可用性和性能。
下次我会讨论模块化阵列和使用双控制器架构的好处。
▲
VMAX Architecture VMAX Disk<->Engine Connectivity XIV Architecture