随着近几年技术的演进和实践,越来越多的客户进一步认识了超融合架构,并应用在数据中心基础设施建设中。然而,当方案涉及核心生产业务、大并发应用的承载时,IT负责人或多或少产生了一些顾虑:即使产品稳定性得到了验证,但是性能真的能媲美中高端FC-SAN么?能保障业务在大并发业务时的高效访问么?
早在2016年,深信服就提出了“关键业务上云”的理念,并且陆续提供了Oracle RAC、SQL Server Alwayson承载方案,以及高性能存储方案。
大量客户通过深信服超融合架构方案,大幅提升了相关业务的访问速度。
- 劲霸男装的大数据分析由10小时缩短到4小时
- 大族激光20小时的业务结算缩短到8小时
- 济南二院减少75%的HIS访问时间
- 贵州理工学院业务上线从几个月缩短至几星期
2018年底,深信服发布的超融合新版本再次突破分布式存储性能瓶颈。在中配CPU、混合磁盘部署(SSD+HDD)的常见使用环境下,3节点超融合一体机存储性能突破44W IOPS。
▲ 客户场景使用的普通混合磁盘一体机
▲4KB、8KB性能测试
超融合架构存储性能是随着节点数量增加而线性增长的,当单卷配置16节点时,性能将轻松突破200W IOPS。对于部分客户期望使用全闪存环境,性能可以进一步提升,在全闪存环境下每节点性能将高达20W IOPS,单卷性能可以突破300W IOPS的极限。
到底新版本具备了哪些特性保障了性能的大幅提升?
高效的分层算法
拥有自主专利的I/O分层技术,能够根据业务读写的切换自适应地分配到读缓存和写缓存空间去,灵活地应对读写两种场景的变换。
例如当数据持续写入量较大时,整个分层都可以申请空间用于写缓冲,同理,当数据持续读取量较大时,整个分层都可以申请空间用于读缓冲,可以更好地满足业务读写的弹性需求。
▲aSAN缓存系统中SSD的各个分区及大小
分层的先进性
-
数据一次写入,开销更小。数据写入到分层后,可以直接用于数据的下次读取,即使数据回写到容量层HDD后,仍然驻留在SSD的分层中。
-
SSD的效能高。首先整个分层空间都是可以用于读缓冲的,并且当数据写入量较大时,整个分层都可以申请空间用于写缓冲,可以更好地满足业务读写的弹性需求。
-
可以抵抗扫描读。对于扫描性的读操作,虽然其被访问的时间上是最近的,但其被访问的次数仅有一次,因此数据热度并不是最高的,不会挤占热度更高的数据。
特色的自适应条带化和I/O本地化技术
深信服分布式存储采用一种全新的aRaid 2.0技术,aRaid 2.0在硬盘底层进行块虚拟化,在上层进行策略管理调度,能够实现条带数据灵活的分布,支持文件级别的条带化和自适应的条带化,最终实现单业务全局最优的并发性能,性能可接近集群的物理极限。
I/O本地化技术
以四节点、双副本为例,对于某个虚拟机而言,其上的数据其中一个副本会聚合在一台主机上(如下图的主机A),称之为聚合副本;另外一个副本会分散在最多三台主机上(如下图的主机B、C、D),称之为散列副本。
▲数据条带化、分片、复制后的分布情况
虚拟机优先运行在聚合副本所在的主机上,以达到数据本地化的效果。虚拟机对数据进行访问时,可以直接从聚合副本中读取,避免跨存储网络对数据进行读取,以此可提高数据读取的吞吐性能,突破网络带宽的瓶颈。
I/O块自适应分布
-
主机内优先跨磁盘组分布策略 – 利用更多的SSD
无论是聚合副本还是散列副本,其分片组内的分片都会在主机内优先跨磁盘组分布。这是因为每个磁盘组都有一块SSD可为其磁盘组下的HDD提供缓存加速的能力,尽可能跨越多个磁盘组,意味着对条带组内的数据进行并发读写时,可以利用到更多的SSD的缓存加速能力,从而提升性能。
-
磁盘组内优先跨磁盘分布策略 – 利用更多的HDD
同一个分片组内的分片落入到同一个磁盘组时,会在磁盘组尽可能地跨磁盘进行分布。如上图所示,主机A的分片分布情况,同一个分片组内的分片尽可能保证不会落到同一块物理磁盘上。这是由于机械硬盘的随机I/O性能较差,为了避免对一个条带组内的数据块进行并发读写时对机械硬盘产生随机的I/O。
I/O无锁化及I/O低开销
深信服虚拟存储架构采用自研的流水线技术,缩短关键I/O路径,结合协程和异步I/O技术自由调度减少阻塞,实现I/O无锁化。随着I/O深度的增大,即并发度的增加,I/O性能可以保持比例增加,提升存储框架性能。流水线技术的实现方式是,把整个I/O流程切分成若干个步骤,每个步骤由一个固定的线程来完成,去掉加锁的环节。这工业生产的流水线作业类似,一个产品的生产过程划分成若干个步骤,每个工人只负责其中一个步骤,整个生产过程构成一个流水线,每个工人完成自己的步骤后,通过流水线交给下一个工人完成下一个生产步骤。
正是对于存储算法和机制的不断优化,深信服超融合存储也在不断承载,深信服规划在2020年,3节点即可突破100W IOPS性能,相信在未来深信服云计算可以给客户的核心生产业务提供更高性能的服务。