从里德-所罗门算法到Flex EC,数学是华为云真正的“硬核”


“宇宙很大,粒子很小,火箭的速度,化学的技能,地球的变化,生物的神秘,日常使用,数学无处不在。”

----华罗庚

img_pic_1561366332_0.jpg

2012年,吴军博士编辑的《数学之美》在中国畅销。本书更容易,更轻松地教授高级数学原理,使非专业读者也能体会到数学的魅力。吴军博士在书中提到,着名的计算机科学家兰迪卡茨发明了RAID(计算机独立磁盘冗余阵列)系统,这是商业存储系统高性能和可靠性的基础。 RAID的核心思想是使用EC(Erasure Code)纠错码灵活配置数据冗余,并提供比多拷贝技术更好的存储利用率,同时保持存储系统的高性能和可靠性。

1.Erasure Code和Reed-SolomonCodes:

随着云计算领域的发展,云计算能力呈指数级增长,5G和AI应用的兴起,云上的海量数据已经是不可逆转的趋势,云存储系统管理的数据已经从传统企业存储太字节。对于EB级别(1EB=1 000 000 TB),在云存储开发的早期阶段,受技术能力的限制,每个云存储供应商主要使用多种复制机制(通常为3份),从而实现云存储的空间利用系统只有33%,数据存储成本很高,而且业界通常使用EC来降低成本。

img_pic_1561366332_1.png

传统的EC(Erasure Code)纠错码使用Reed-Solomon码(RS码),它们应用于云存储系统:

将云存储的所有存储单元(单个硬盘或存储节点)(主要是公共云对象存储系统)视为一个Erasure Code存储池,它可以以N + M模式存储对象(N是对象数据碎片,M是一个检查切片),它将对象分成N个数据和M个检查块。以6 + 3 EC为例,空间利用率可达67%。较大比例的N + M将具有更高的空间利用率,并且在成本方面具有很强的竞争力。同时,系统的吞吐量为3 A副本(或多个副本)具有更大的提升。因此,EC技术已经在云存储领域得到了大规模应用。

1.在对象大小不确定的情况下,需要零填充和填充计算,这会浪费存储空间并且成本很高。

2.如果不补零,则需要多次写入以确保EC成员组的原子性。这可能导致系统复杂性增加,吞吐量降低,CPU速度更快,网络带宽更大,以及存储成本增加。

将高性能SSD层写入3份,填充EC单元,然后计算并移至HDD Tier。离线EC方法具有以下缺点:

a)额外的SSDTier,成本高;

b)对SSD可靠性的持续写作挑战;

c)数据移动消耗大量内部带宽。

4,传统的EC在很大比例的N + M(如20 + 3)中,如果存在节点/介质故障,则需要读取大量数据切片和校验和进行数据重建,导致陡峭系统性能下降。

基于以上所述,我们可以知道使用EC测量数据存储系统的优点可以通过以下方面来考虑:

1.有效的空间利用:系统可以稳定地提供多少空间利用率,并且在给定的N + M下空间利用率是恒定的。

2,高效的写性能:无论业务层如何变化,对象的大小如何变化,都应该有一个恒定的写带宽,IOPS。

3,高效的重建性能:尽可能少的系统重建IO带宽,尽可能少地占用跨AZ/DC的网络带宽。

2.华为云“在线流媒体擦除编码”和“Flex擦除编码”:

华为云OBS服务通过创新的“在线流式擦除编码”和“Flex擦除编码”提供在线擦除编码存储机制,解决了公共云对象存储系统中的几个关键问题。

1.在线流式擦除编码

如下图所示,整个系统的核心组件是Streaming ErasureCoding Unit。多个对象的数据可以流入处理单元,并且由其执行编码操作。通过多个对象数据的组合,可以在对象未满时消除数据写入零填充的浪费。

img_pic_1561366332_2.png

此过程不需要复杂且低效的分布式事务,也不需要读取已编写的数据。通过Streaming ErasureCoding Unit,提供在线EC机制以避免内部数据重定位动作。

2. Flex Erasure Coding算法:

华为云采用新的Flex Erasure Coding编码算法。在保持数据重配置效率的基础上,大大降低了重配置的带宽需求,大大提高了故障情况下数据重配置的性能,有效缩短了重配置时间,保证了数据的持久性和系统吞吐量。

通过上述两种自主开发的算法,华为云OBS的单流带宽为业界朋友的3-5倍,超过300 MB/S,并发链路超过1000万,并且在高端仍保持稳定的低延迟交通负荷。与多拷贝或传统EC技术相比,其整体性能和空间利用率都得到了很大提高。

在大数据应用场景中,由于写入放大率的降低,单流带宽的急剧增加以及大数据对象情况下性能倍数的提高,用户可以更快地获得数据分析结果。

在物联网场景中,大量物联网设备需要实时数据传输到云端,而OBS拥有超过1000万的并发能力,可以支持数亿台物联网设备的连接访问。

在视频应用(视频监控,直播和点播)场景中,华为云OBS具有稳定的低延迟,支持无需纸箱即可快速播放高质量视频。

在更多应用场景中,华为云OBS具有同样出色的性能,数学算法的优化可以使软件产品再次引领行业发展。

软件的灵魂是算术,算术的核心是数学。

“我认为通过物理方法解决问题已接近饱和,我们应该关注数学方法的突现。”任正非

华为在数学方面的长期持续投入使其产品在云+ AI + 5G时代具有竞争力。

早在1999年,华为就在俄罗斯建立了一个特殊算法研究所。基于俄罗斯科学家的数学能力,它不断突破3G/4G移动网络技术的特殊瓶颈,使华为成为4G移动网络设备的全球领导者。 2016年,华为再次宣布在法国建立第二所欧洲数学研究所,并继续加强基础科学研究。

除了在俄罗斯和法国建立的数学研究所外,华为还积极参与和投资包括中国在内的全球数学家的研究项目,积极推动数学研究和数学成就的发展。在华为的长期支持下,Erdal Arikan教授在Polar代码方面取得了许多突破,最终成为5G控制信道编码标准,推动了通信技术的发展。

基于数学和其他基础科学研究在芯片设计,集成电路开发,软件算法和质量管理等方面的应用,华为可以成为ICT行业的长跑者,可以维持当前的外部环境。持续进步的动力。

img_pic_1561366332_3.png

华为在其官方媒体上发表了一篇文章《基础研究与基础教育是产业诞生和振兴的根本》(链接),以官方公告的形式阐述了基础研究,特别是数学研究对行业发展的贡献。它还提出“数学是打开一切的工具”。论文。

数学是华为持续的指导和华为云的真正“硬核”力量。