Intel在2017年发布了一种新型的非易失性固态存储技术——3D XPoint,Intel宣称3D Xpoint的速度比NAND Flash快1000倍以上,寿命也比其长1000倍,相比DRAM,其存储密度有8到10倍的改善,并且具有更低的价格。Intel认为3D Xpoint可能成为1989年NAND Flash诞生以来的最大突破。
在过去二十多年中,存储系统飞速发展,在存储系统性能方面,代表计算能力的CPU性能提升了近580倍,I/O通道性能提升了近1000倍,但是存储系统介质仅仅提升了20倍,硬盘因此而成为存储系统中最大的性能瓶颈,3D Xpoint的出现无疑相当振奋人心。
华为发挥自身在存储研究上的技术优势,在全闪存阵列OceanStor Dorado的基础上引入以3D Xpoint介质的ColdStream盘,进一步提升Dorado容量与性能,降低在同等性能下的成本。
单盘容量剧增造成系统性能下降,新技术应运而生
从SSD介质发展趋势看,单盘容量在不断变大,目前已经出现32TB的容量选择,64TB、128TB相信在近两年也会迅速问世,因此存储阵列也需相应增大容量规格,而容量增大后,产生的元数据便无法全缓存在内存中,会造成系统性能的明显下降。因此从长远发展的角度来看,需要寻找一种更好的方式来解决这个问题,而ColdStream的出现带来了新的契机。
随着新介质3D Xpoint的出现,性能介于DRAM和SSD的ColdStream成为下一个热点,各存储厂商都在积极推出基于ColdStream的应用。华为作为主要存储厂商之一,也在积极研究ColdStream的应用,在全闪存阵列OceanStor Dorado上引入ColdStream,并通过设计高效的数据结构和算法,对Dorado在性能和成本上进行完善和优化,使产品更具竞争力,为企业提供更好的产品服务,巩固闪存产品竞争力在存储市场的领先地位。
▲
ColdStream:让OceanStor Dorado系统时延下降到0.25ms
3D XPoint作为第一款大规模应用的SCM介质,相比DRAM,3D Xpoint的优势主要是非易失、低功耗、高密度,相比NAND它的优势是快读写、寿命长。因此,3D XPoint的引入必将影响新一代的存储架构。
▲
存储介质性能对比图
目前,各大厂商对于3D XPoint的应用都处于探索阶段,现阶段我们主要研究如何将ColdStream与OceanStor Dorado结合,充分发挥新型介质的优势,帮助产品提升大容量下的性能,降低在同等容量及性能下的成本。目前针对它主要有两个应用场景:
第一, 在Dorado中使用Coldstream做元数据读缓存,对元数据访问进行加速,提升大容量下产品的性能;
第二, 在Dorado中使用Coldstream做数据读缓存,降低在热点场景下的读时延。
高效索引机制
随着SSD单盘的容量在不断变大,元数据的量也在不断增大。当元数据增加到一定程度时,DRAM已无法全缓存,采用ColdStream作为扩展缓存,将元数据缓存在ColdStream上,并且配合相应的算法,可以加速大容量下元数据访问性能,从而提升阵列在大容量下的整体性能。通过对hash、radix tree、B+树等各种索引数据结构和算法充分比较,选取对ColdStream上的存储内容高效的索引数据结构和算法,使其既能快速访问索引和ColdStream上内容,同时占用的CPU和内存资源又少。
热点识别与精准淘汰
在实际应用中,大部分的应用都存在热点数据。在数据cache的设计中,使用了高效的热点识别算法对数据进行识别,同时设置了多级热度管理的机制,频繁访问的热数据缓存在内存中,次热数据缓存在ColdStream盘中,使得热数据直接从内存或ColdStream访问,减少SSD读取数据的操作,从而降低时延,最大限度的提高热点数据的访问速度。系统还设计了精准的淘汰算法,将盘中的冷数据及时进行淘汰,释放存储空间,还精细地设计了顺序流识别算法,对数据进行预取,从而降低读延时。
低时延是关键竞争力
500μs稳定时延是AFA市场PK的核心指标,使用ColdStream作为数据读缓存,通过使用有效的热点识别、顺序流识别和精准冷数据淘汰算法,可识别95%以上的热数据。将这些热数据进行缓存之后,相比无读缓存,在热点场景下(OLTP)的平均读时延会降低50%,从500μs降低到250μs。
未来展望
华为OceanStor Dorado是面向企业关键业务打造的全闪存阵列,满足数据库、虚拟化等企业级应用对高性能、高可靠、高效率存储的需求,增加ColdStream之后,在同等成本下,OceanStor Dorado在大容量下的性能更优,时延更低,产品更具竞争力,使之成为企业核心应用的非常好的选择。目前该技术已经在华为实验室中得到全流程的验证,商业产品将在明年正式问世。