传统存储与Fusionstorage的区别?及劣势!

2021-02-24 11:00:45 浏览数 (1)

区别介绍

华为面试中经常提到的一个问题,从以下几点分析:

1. 机头

1)传统存储支持双控~16控

2)Fusionstorage 采用分布式软件机头,可以线性扩展至4096个。准确的说是4096个VBS,而不是必须是4096个节点,因为有些场景一个节点可以有多个VBS。

引申:为什么传统存储最大 16 控?

控制器和控制器间需要形成集群关系,同步信息(如管理数据),关系的维护需要消耗cpu和内存实现,控制器越多消耗的资源越多,再往上加的话,性价比不高。

为什么我的分布式软件机头最大4096个?

主VBS存在性能上瓶颈,因为VBS之间需要同步信息。

VBS集群为什么会有主的VBS?

原因在于解决多 VBS 对同一卷元数据的一致性操作上,FS中如果多个VBS同时操作元数据卷,会引起数据数被写坏等问题,为了防止数据被写坏的问题,所以只有主 VBS 能够操作元数据,备的VBS不允许对数据进行操作。

2. 元数据

1)传统存储中LUN的元数据存放在归属控制器上(内存中),访问该LUN 时,需要先访问元数据,当LUN较多时,归属控制器需要维护的元数据也较多,并发性性访问时,会存在性能瓶颈。

2)FusionStorage元数据分2部分,视图存放在ZK中,卷的元数据被打散存放在相应资源池的所有存储中。元数据通过 VBS 中的 DHT 算法去计算得到。所以没有性能瓶颈。

引申:DHT为什么要hash?

为了实现负载均衡,使得数据可以分布在各个节点

3. IO瓶颈

1)传统存储会有IO瓶颈,lun会有元数据,存放于某个控制器上,形成归属控制器。服务器访问该 lun,一定要经过归属控制器,当 IO 比较大的时候,就会形成IO瓶颈。

2)因为VBS是无状态机头,状态信息由管理层面保存并且同步记录(MDC),VBS只要维持管理卷的元数据就行。(处理请求时不会依赖上一次的请求,每次通过DHT计算得到的,所以是无状态的)。数据打散存放,不存在IO性能瓶颈。

4. 缓存

1)传统存储提供GB级别的缓存,V3存储采用SmartCache特性,读缓存可以达到TB级别,传统存储cache由机头提供。(cache有内存和ssd盘,只有读cache。SSD不给写,因为SSD有擦写次数,如果写操作过多,会影响寿命。)

2)fusionstorage 采用分布式智能缓存技术,由多个节点同时提供,可以提供TB级别的缓存。

5. 管理

1)传统存储缺乏资源共享,不同厂商管理软件不同,不易管理。也可以用第三方软件进行统一管理。但体验度有待探究。

2)fusionstorage是数据中心级别的资源共享,支持FSM统一管理.

6. 性价比

1)传统存储成本随性能提升成本大幅提升,性价比不高2)fusionstorage部署在通用的X86上,计算和存储线性扩展,并且既能提高存储空间,又能提高存储整体IO性能。实现设备利旧,保护投资,节约成本。

7. 可靠性

1)传统存储采用主备模式、RAID技术来保障数据的可靠性。

2) FusionStorage

1.数据可靠性:采用多副本和 EC(Erasure Coding)允许硬盘、服务器、机柜级故障,并且有故障数据自动重建机制。

2.组件可靠性:MDC/VBS/OSD/ZK 都是主备模式

3.采用保电介质做读写 Cache, SSD 或NVDIMM 内存条。

4.支持远程复制、双活。(产品文档上说的支持,但是好像没人用,不主动提。)

0 人点赞