广州尧顺信息科技有限公司

 公司热线:13560099278

                 020-28101466

N

公司动态

news

四种存储双活方案对性能影响的比较分析
来源: | 作者:pmodac4c0 | 发布时间: 2018-04-14 | 8566 次浏览 | 🔊 点击朗读正文 ❚❚ | 分享到:

NVRAM的写日志至站点AMCC通过这种方式实现两个站点存储的双活,MCC集群节点也是双活,但对于某一应用主机来说,实则只在一个站点活动。

性能方面,MCC的读性能和单存储类似,写性能存在1倍的RTT

(4)SVC Vplex Metro

Vplex Metro和其他三种方式都不一样,是一种分布式的存储双活/多活架构。Vplex没有写缓存,有了分布式缓存,标榜为access anywhere

没有写缓存就意味了,主机对VPLEX的写是透写模式,主机的写IO只是经过VPLEX的虚拟化直接落入到底层存储,并在分布式缓存目录表中记录这个写IO是通过哪个VPLEX引擎写入的。当需要对该数据块进行读操作时,先是在分布式缓存目录中查找数据块是通过哪个VPLEX引擎写入的,然后再通过本地的VPLEX引擎转发该读请求至上一次写入该数据块的VPLEX引擎,通过它来读取它后端的存储,*终原路返回。另外,对于写入的IO,透穿过VPLEX写底层存储时,还将同步一份IO副本至另一VPLEX引擎的底层存储。

所以可以看到,对于某数据中心VPLEX的读操作来说,如果刚好上次该数据块的写操作时也是发在该VPLEX中,那么读是本地读,亲和性好。如果刚好上次该数据块的的写操作不是在该VPLEX,那么就需要跨站点进行读操作,亲和性弱,存在1倍的跨站点RTT;对于写,都是本地写,只不过需要将该写IO同步至另一站点的底层存储,也存在1倍的跨站点RTT

好了,写了这么多,将几种主流的存储双活架构的读写操作流程写清楚了。简单对比如下:

 

由这张图可以看到:

读性能:

SVC ESCHDS GADNETAPP MCC都是本地读,性能*好,而SVC HYPERSWAPSVC VPLEX METRO的本地读不稳定,某些情况下,存在跨站点读的问题,增加了读响应时间。

写性能:

基本上所有的存储双活方案都存在写往返延迟的问题,*少为1倍的RTT,其中SVC ESCHDS GADNETAPP MCCSVC VPLEX METRO都存在1RTT,这是无法避免的,可以说是存储双活的必然问题,而SVC HYPERSWAP某些情况下,存在2RTT的问题,写性能影响更严重。

当然评价一个存储双活方案的好坏,不能仅从性能影响去看,更应该看重其综合能力,这里不再赘述。