软硬协同设计下的飞天盘古,是如何降低存储系统开销的?

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 历经 15 载,如今的飞天盘古系统已迭代至第三代,数千万行代码和 1,000 余项专利,从大规模、到高性能、到高效能的分布式存储系统的演进,更高效地让数据中心成为一台计算机。

“万古乾坤心上辟,于令日月掌中悬。”飞天盘古分布式存储系统是飞天云操作系统的核心组件,是阿里云数据存储底座。块存储EBS、对象存储OSS、文件存储NAS、表格存储Tablestore等核心存储产品,都生长在飞天盘古之上。飞天盘古作为业界少有的统一存储平台,具有稳定、规模、普适、性能、安全的特点。

 

  • 在稳定性方面,飞天盘古提供了多AZ的技术支持,保证服务的高可用。在数据可靠性方面,飞天盘古提供了多副本以及纠删码技术,保证数据全链路的数据可靠性。
  • 在规模方面,飞天盘古从4节点起步,运行的单集群规模支持十万台。
  • 在普适性方面,飞天盘古作为一个通用的平台,它既可以支持低延迟的访问,也可以支持高吞吐的应用,适用于全场景的业务场景。在硬件平台上,支持闪存、非易失性内存、磁盘等各种硬件平台。
  • 在性能方面,提供微秒级I/O的访问延迟,基于飞天盘古的云盘提供100IOPS能力。
  • 在数据安全方面,飞天盘古提供了包括数据默认加密等技术能力。

 

经过十几年的技术演进,阿里巴巴已经实现了统一存储的目标——即以“飞天盘古”系统作为统一底座,通过标准化、服务化和开放化的方式建立了完整的存储产品和服务体系,服务广大内部和外部客户。

 

一、从大规模到高性能再到高效能,飞天盘古的演进史


 


艰难困苦,玉汝于成。飞天盘古不是一蹴而就的,而是历经了软硬件之间的不断融合与迭代发展而来的。Pangu1.0诞生于2009年,当时只有千兆万兆的网卡,它的存储介质主要是HDD。之后数年,阿里云构建了大规模的分布式存储系统,2015年时单集群规模数达到了十万台。

 

2016年,随着25Gbps RDMANVMe SSD时代的开启,阿里云拥抱RDMANVMe高性能硬件,构筑了高性能的Pangu2.0分布式存储系统。随着云计算技术的不断发展,硬件的设计需要和云进行匹配,因此出现了云定义的硬件产品,而软硬件深度协同设计的Pangu New-Gen也即将面世,进一步提升存储系统效能。

 

总而言之,历经 15 载,如今的飞天盘古系统已迭代至第三代,数千万行代码和 1,000 余项专利,从大规模、到高性能、到高效能的分布式存储系统的演进,更高效地让数据中心成为一台计算机。

 

二、飞天盘古设计中遇到的各种存储开销

 

在整个技术演进的过程中,飞天盘古也遇到了多种技术挑战,具体可概括为:

 

  • 面对存算分离场景,如何去除网络的开销。
  • 在云原生访问存储的场景下,如何让计算更高效地访问存储,去除中间链路的开销。
  • 在高性能的闪存条件下,如何发挥闪存的效能,去除软硬件的开销。
  • 面对HDD这样的磁盘存储介质,如何去除软硬件的开销,发挥出磁盘的吞吐能力。

 

以上提到的各项“开销”,是飞天盘古演进过程中的拦路虎,而如果纵览I/O的一生,这些开销都可以看作是跨国贸易中的重重关税:安全隔离税、TCP网络税、内核税、接口税、传统文件系统税、垂直记录税等等。



要想有效提升飞天盘古的性能。一个行之有效的解决思路就是通过软硬协同设计,逐步去掉这些存储开销

 

三、软硬协同设计,去除存储开销

 

1、通过VSC去除安全隔离开销,降低存储访问延迟

 

在存算分离的场景下,云原生容器已经成为计算任务运行的主要场景。由于云原生容器主要在VPC计算域里运行,在访问存储时,中间的物理网络是隔离的。尽管从隔离的网络里可以访问存储,但是延迟很高。

 

为了降低存储访问延迟,飞天盘古利用了计算端CIPU/DPU的能力,提供了基于VirtioRPC接口,构建了通用的VSCVirtual Storage Channel)数据访问通路,在保证安全的同时,提升了I/O访问性能。目前,VSC已在线上规模部署,支持阿里集团业务上云。


 

值得一提的是,采用飞天盘古VSC技术架构解决云原生场景下计算端资源占用,隔离网络高性能访问等问题的相关论文已在FAST’23会议上发表。

 

2、基于RDMA增强技术去除传统TCP网络开销

 

存储系统对网络的要求很高,高性能网络是分布式存储的基石。近年来,无论是以太网还是PCIe,其物理链路的性能都得到了飞速发展和提升。可以预见,PCIe等高速互连技术的发展,将进一步推进存算分离。


 

随着以太网性能的提升,传统的TCP实现成为重要的性能瓶颈点。同时,基于以太网的RoCE RDMA协议不统一,存在性能跌零等稳定性风险。为了解决这些问题,需要发展高性能网络协议,去除传统协议和实现带来的开销。

 

针对存储业务特征,阿里云对RDMA技术进行了增强,形成了高速存储网络,实现了高速RDMA通路与传统IO通路的混合调度、PFC风暴的实时监测与控制、规模化链接的共享与复用以及RDMA端口实时监测与流量调度。

 

早在2018年,阿里云就构建了当时全球最大规模RDMA存储集群。飞天盘古存储网络相关成果已在NSDIOSDI会议上发表。


3、全用户态存储引擎解决内核开销

 

NAND闪存经历了SLCMLCTLCQLC四代演进。闪存技术的发展,为业务提供高性能IO奠定了基础。总的来说,闪存的存储密度在持续增高,单GB性能在下降,介质的寿命在降低,为了更好地利用闪存容量和性能,需要用新的技术架构来发挥硬件的能力,去除不必要的开销,提升云存储效能。

 

最近几年,阿里云在闪存方面做了很多的创新工作,主要包括五个方面:用户态存储引擎、存储引擎与SSD协同设计、用异构介质的方式使能QLC介质、和行业协同推进ZNS技术标准化、在ZNS介质基础之上构建存储引擎。


 

针对内核开销(包括系统的上下文切换、内存拷贝、中断导致CPU效率下降、锁开销),全自研飞天盘古全用户态存储引擎选择了逐个击破:采用Bypass Kernel技术绕过Linux内核(TCP/IP协议栈)、利用零拷贝技术提升文件传输的性能、通过polling避免大量中断、无锁设计,垂直单元化设计提升效率。此外,飞天盘古还将管控与数据通路进行分离,构建了针对高性能场景的USSOSUser Space Storage Operating System)平台,实现用户态存储资源管理。通过多重技术加持,支持NVMe SSDHDD的飞天盘古,将CPU效率提升了一倍以上。当前已在阿里云规模化使用,相关成果发表在了FAST’23会议论文《More Than Capacity: Performance-oriented Evolution of Pangu in Alibaba》中。

 

4、通过ZNS解决SSD接口开销,提升效能

 

尽管NVMe SSD已经规模应用,但依然不够完美,这体现在:稳态IOPS性能远低于空盘,SSD内部GC耗费了用户带宽;受到内部GC影响,长尾延迟大;在随机写IOPS和使用寿命方面,QLC SSD和规模使用的TLC SSD有很大的差距。


 

为了更好地使用NAND Flash,使其服务于数据中心存储,可以引入ZNSZoned NameSpaceSSD技术,将Data Placement功能上移至存储软件栈,并和存储软件栈融合,重塑软硬件的分工,从而更灵活地布局数据、提升效能。所以,ZNSFlash而言是更友好的接口,有利于进一步挖掘NAND Flash的能力。20215月,ZNS协议被收入NVMe规范2.0版本中,并得到了SPDKLinux以及各设备商的支持。

 

提供分布式Append-Only和随机读能力的飞天盘古,正是通过创新的存储引擎来使用ZNS。针对大规模数据中心应用,飞天盘古去除FTL映射层,让NAND Flash特性与分布式存储软件完美匹配。看似是接口变化,但本质在于Data Placement(数据布局)/ GC(垃圾回收)上移到了存储软件层。未来,阿里云将继续与业界共同推动ZNS技术标准的发展。

 

5、去除通用文件系统开销100%发挥磁盘吞吐

 

如果以存储设备接口为标准来划分存储介质,那么存储介质可以分为两类。一类是可以进行随机读写的块设备接口的介质,包括HDDSSD。另一类是支持Append-Only且没有块设备接口的Zoned Storage介质。Zoned Storage介质类型在数据中心有着良好的应用前景,因为它在相同的硬件基础上可以增加容量,且能够更好地控制NAND写放大系数,实现性能的优化。


 

当下,随着数据量的指数级增长,HDD依然是具有高性价比的存储介质,而针对HDD,飞天盘古采用了通用的用户态存储引擎,去除了Ext4元数据操作带来的开销以及通用文件系统的复杂操作。去除Ext4后,用户态存储引擎直接和上层的存储软件融合在一起,可以平衡业务对容量与吞吐的不同需求,优化数据布局, 百分之百地发挥磁盘的吞吐带宽。

 

6、去除垂直记录开销,获取磁盘存储密度红利

 

针对冷数据长期存储场景,阿里云采用了成本更低的SMR HDD 磁盘,SMR HDD 磁盘采用叠瓦式的记录方式,而常用的PMR  HDD磁盘采用的是垂直记录的方式。叠瓦式的记录方式利用了磁道在读写方向上的不对称性,从而可以更好的控制磁道的间距,让存储密度达到最优。

 

不可否认,垂直记录和叠瓦式记录两种方式各有优劣。采用垂直记录的方式会浪费一些存储空间,产生存储垂直记录开销,但是可以对外提供随机读写的能力。采用叠瓦式的记录方式,可以提升存储密度、存储容量,却无法进行随机读写,会导致传统的存储引擎不能正常工作。

 

所以,飞天盘古采用了名为“SMRStore”的存储引擎使能SMR HDD,通过数据冷热分离、端到端协同设计、流量打散等技术有效地控制GC(垃圾回收),让整个盘的IOPS利用率达到最高。


 

经过长时间的性能对比测试,阿里云发现SMRStore + SMR吞吐带宽稳定,整体性能优于Ext4 + CMR HDD。通过SMRStore,可以将SMR扩展至热数据存储领域。相关技术成果发表在了FAST'23 会议论文《SMRstore: A Storage Engine for Cloud Object Storage on HM-SMR Drives》中。

 

全栈自研的飞天盘古,通过软硬协同设计,去除了I/O全栈存在的各种存储开销,提升了存储系统的效能。基于飞天盘古构建的块存储、对象存储、表格存储、文件存储、灾备、相册与网盘、云定义存储等多种存储产品,为全球客户提供了普惠、智能的存储服务。随着飞天盘古技术的不断演进,阿里云将继续引领云存储技术的发展,通过技术普惠,为客户提供稳定、安全、高性能的存储服务。

相关实践学习
利用HBR实现ECS文件备份
当您已使用ECS,并在云盘中保存文件后,可能会遭遇病毒勒索,文件误删除的情况。本场景主要介绍如何使用HBR为ECS文件备份,保证数据安全并可及时恢复。
相关文章
|
2月前
|
机器学习/深度学习 数据处理 数据安全/隐私保护
|
存储 人工智能 运维
超大规模云数据中心对存储的诉求有哪些?
要实现超大规模部署的特性,就对存储有别于普通数据中心或者消费市场的诉求。具体有哪些呢?主要有以下几点,我们针对部分信息展开讨论
|
1月前
|
存储 调度 块存储
十二年磨一剑:三代架构演进,打造高性能、低成本的块存储!
上周,全球计算机存储顶会USENIX FAST 2024 在美国加州圣克拉拉召开,继去年获得国内首个FAST最佳论文奖后,凭借在分布式块存储上的创新,阿里云新作再次斩获FAST大会最佳论文奖。这也是国内唯一一家连续两年获得FAST最佳论文奖的科技公司。
104618 104
|
3月前
|
存储 人工智能 运维
【云原生企业级数据湖:打破数据孤岛,优化存储成本】
【云原生企业级数据湖:打破数据孤岛,优化存储成本】 随着大数据时代的到来,企业对于数据的处理和存储需求日益增长。如何有效地存储和管理大量数据,同时降低运维成本,成为了企业面临的一大挑战。盛通教育的云原生企业级数据湖方案,正是为了解决这一问题而设计的。
163 1
|
11月前
|
存储 架构师 Cloud Native
【云计算架构】通过新的优化视角查看云架构
【云计算架构】通过新的优化视角查看云架构
|
11月前
|
运维 Cloud Native 中间件
《边缘云技术演进与发展白皮书》——五、边缘云分布式云管系统技术演进——01 分布式云管架构演进—— 4.云管第四阶段:生态支撑
《边缘云技术演进与发展白皮书》——五、边缘云分布式云管系统技术演进——01 分布式云管架构演进—— 4.云管第四阶段:生态支撑
130 0
|
11月前
|
存储 调度
《边缘云技术演进与发展白皮书》——五、边缘云分布式云管系统技术演进——01 分布式云管架构演进——2.云管第二阶段:融合管控
《边缘云技术演进与发展白皮书》——五、边缘云分布式云管系统技术演进——01 分布式云管架构演进——2.云管第二阶段:融合管控
313 0
《边缘云技术演进与发展白皮书》——五、边缘云分布式云管系统技术演进——01 分布式云管架构演进——2.云管第二阶段:融合管控
|
11月前
|
网络架构 块存储
《边缘云技术演进与发展白皮书》——五、边缘云分布式云管系统技术演进——01 分 布式云管架构演进——1.云管第一阶段:基本功能
《边缘云技术演进与发展白皮书》——五、边缘云分布式云管系统技术演进——01 分 布式云管架构演进——1.云管第一阶段:基本功能
353 0
|
SQL 运维 Oracle
云上“升舱”,升级到速度更快,功能更全面,性价比更高的数仓平台
阿里云AnalyticDB“升舱”活动致力于帮助您将线下或自建的数仓全面迁移至云原生架构之上,享受全托管的使用体验;为企业构建数据平台带来速度更快,功能更全面,性价比更高的数据平台
云上“升舱”,升级到速度更快,功能更全面,性价比更高的数仓平台
|
人工智能 运维 监控
深度解读阿里云数据中心自研网络引擎
深度解读阿里云数据中心自研网络引擎
深度解读阿里云数据中心自研网络引擎