人类历史上经历过三次工业革命,第一次是18世纪的蒸汽时代,第二次是19世纪末发明内燃机后的电气时代,第三次则是20世纪中叶发明计算机以后的信息时代。而当前,人类社会正经历第四次的工业革命,通往全面的智能时代。
云计算是智能时代的核心技术之一,在云计算体系中,数据从存储单元读出,通过网络传送到计算单元,运算的结果再通过网络传回到存储单元进行保存,在这个过程里,算力、网力和存力构成了云计算的基础。
为了满足云上业务的迅猛发展,以CPU为代表的通用算力,以GPU、NPU为代表的的AI算力,正呈指数级迅速增加;而网络也从25GE、100GE、200GE快速演进,并将进入400GE、800GE时代;算力和存力的提升对于以SSD为代表的存力带来了巨大的挑战和新的要求。
在2023云栖大会上,平头哥高级产品专家周冠锋在分论坛的演讲中指出,当下和未来的云计算场景中对SSD提出了四大要求,分别是极致的性能要求、复杂负载下的稳定时延、更优的TCO以及更高的存储密度。
另外周冠锋还强调,云计算经过近20年的发展已经进入深水区,云已经开始与底层的芯片进行融合,通过上下的联合设计才能带来更好的用户体验。为实现这一目标,需要消除SSD接口税,做到全链路QoS优化,以及通过智能卸载将可靠性计算卸载至SSD,实现全路径存储语义校验,减轻了服务器主机算力开销。
致力于实现和满足上述目标,平头哥在现场发布了旗下首颗SSD主控芯片镇岳510,这款企业级SSD主控芯片为云计算场景深度定制,将率先在阿里云数据中心部署,可应用于AI、在线交易、大数据分析、高性能数据库、软件定义存储等业务场景。
玄铁所铸,高性能、高可靠与低时延的镇岳利剑
据周冠锋介绍,镇岳510集成了多项创新技术,使用平头哥自研芯片架构,采用 RISC-V架构玄铁910多核CPU系统,内置大量自研硬件加速模块,有效平衡性能与功耗;在内存和接口方面,支持业界最领先的DDR5、PCIe 5.0技术,大幅提升芯片的数据吞吐速率;在可靠性方面,通过自研LDPC纠错算法与介质电压预测算法,误码率比业内标杆领先1个数量级。
该芯片还针对云计算场景进行了深度优化,芯片与云存储软件系统紧密融合协作,有效降低数据读写的延时,为系统带来了更高的性能。例如,镇岳510在支持NVMe的队列级调度机制的同时,额外实现了更精细、更灵活的IO级调度机制,结合云存储系统,能更好地满足延迟敏感型IO场景的需求。
在传统的系统方案中,SSD与存储系统分离设计。SSD负责底层闪存数据排布,但无存储语义而无法达到最佳排布;SSD负责后台任务,但无法判断最佳启停时机;而存储系统有存储语义却无法排布闪存数据,有最佳时机却无法启停SSD后台任务。上下的割裂给整个存储系统的性能与寿命带来了额外消耗,这便是“SSD接口税”。
因此ZNS协议被发展出来,通过将盘内FTL层上移至存储系统,达到了存储系统与闪存特性的完美匹配,消减了“SSD接口税”。2021年5月,ZNS协议被收入NVMe规范2.0版本中,并得到了SPDK、Linux以及各设备商的支持。
镇岳510完美实现了ZNS协议,通过灵活的硬件表项加速保持了高IO性能,而Zone分区状态则交由玄铁910CPU维护,保留了对新协议的灵活性。此外,镇岳510定制了Last Sector 随机写功能,实现了小报文的多次反复下盘,简化了ZNS的应用难度。
数据请求可以分为带宽敏感型与时延敏感型,不同的请求应予以不同的处理策略,才能达到业务最佳SLA。NVMe规范中制定了以队列为粒度的标准SQ调度机制,但其灵活性较差,对于业务种类复杂、追求灵活可配的云存储系统来说,它并不是最佳选择。镇岳510在支持NVMe标准的SQ调度机制的同时,额外定制了基于IO粒度的优先级调度机制,允许系统按IO打标,优先级种类多达8级,结合云存储系统,能够更好的保障延迟敏感型业务的服务质量。
云存储系统的完整数据链路,从计算端开始,通过网络到存储服务器,再通过内部互联到达SSD。为了保障数据的高可靠,全链路应采用语义一致的完整性校验。但NVMe规范只规定了以Sector为单位按照T10 DIF/DIX的校验机制,与存储系统的语义并不相同,因此SSD的校验与存储系统的校验产生了差异。
镇岳510以IO为粒度,遵循上层存储语义进行校验,补齐了整个存储系统的数据链路校验的最后一环。不仅如此,镇岳510还支持以存储语义对内部数据进行后台巡检,而无需再读出至服务器,节省了宝贵的PCIe带宽、服务器内存带宽与CPU算力。
盘古开天与镇岳利剑
阿里云资深技术专家吴忠杰在云栖大会演讲中解释称,盘古是远古开天辟地的神,镇岳则是一把利剑,当阿里云的“盘古”大规模分布式存储系统遇上镇岳510,将体现出存储系统软硬件协同设计带来的巨大能量。
吴忠杰表示,通过飞天盘古存储引擎与SSD深度协同设计,能够在IO的SLA以及全链路的数据保护等方面得到很大的收益。同时通过软件定义闪存,进一步增强了存储系统的灵活性和效能提升。
具体而言,吴忠杰认为镇岳510提升了存储引擎两大部分的能力,首先是在标准盘上打破黑盒,增强多个标准能力,例如提供CRC32C数据校验算法、支持CMB、提供PriorityTag机制以及通过优化Sector覆盖写来降低SSD盘写放大系数等。
其次,在ZNS规范基础上,能够提供ZNS增强功能,比如Last sector的覆盖写、SSD与存储引擎协同,以及单队列内部请求的保序等方面。
除了助力飞天盘古,镇岳510还推动了ESSD基础能力的升级。阿里云高级技术专家谷跃胜指出,ESSD是云计算产品生态中的一个组成部分,随着云计算技术的发展,人们对于计算存储的理解,逐渐从单一集中的物理芯片、物理盘演变到了虚拟化的计算以及存储形态。随着虚拟化计算能力的提供,用户可以将应用部署在不同的虚拟机中带来更多灵活的选择。
ESSD产品是一个云上的产品形态,其并不是一个简单的物理盘或云盘,而是一个面向企业级存储的产品,镇岳SSD主控芯片则能在稳定性、性能以及成本这三个方面给ESSD技术能力带来升级。
谷跃胜特别强调,镇岳510内置了数据的交叉校验能力,它能在感知整个存储软件栈的机制之后补齐最终链路,完成对盘古整个层面数据增加和请求的校验,保证写入到盘的过程中不会再出现数据错误,为整个系统提供更高的可靠性。
最后,谷跃胜表示:“百炼成钢,而好钢要用在刀刃上,希望镇岳SSD能够经过千锤百炼后,成为ESSD产品最坚固的基石。”