京东云云海:如何定义“下一代”存储
这是一个“老产品”,这是一段“新故事”,被需求逼出来的创新故事。
近年来,随着行业数字化转型需求爆发以及应用场景日益多元,高速增长的数据使得存储成本逐年攀升。数据安全性、“国产化真替真用难”成为当前不少行业用户面临的问题。与此同时,AI大模型、智能驾驶等新兴领域又对存储系统的性能、扩展性等方面提出了更高的要求。
最新发布的《中国存力白皮书(2023年)》也提到了我国各行业对先进存力的重视,并提出需要全面加快技术创新,推动先进存力的研发部署,提升存储的能效、安全、容量、可靠性、安全性等,继而提升先进存力占比。
去年以来,大模型兴起后,企业训练、推理模型所需要的海量数据存储需求更大了。此前并不抢眼的“存储”逐渐登上舞台,创新故事层出不穷。比如,在历经了自身复杂的多场景历练后,京东云推出基于云原生理念自主研发的下一代分布式存储平台——京东云云海。
如何定义先进的存力?上一代架构为何不足以满足目前应用?云海分布式存储系统如何重构“下一代”存储? 要回答这些问题,需要从存储技术发展简史说起。
技术向前
分布式+存算分离架构登上舞台
众所周知,冯·诺依曼提出了存储程序逻辑架构,我们可以依照冯·诺依曼体系结构来划分存储产业发展的阶段。
单机存储阶段,数据直接存储在计算机的本地磁盘上。这是因为早期的计算机多是用来提供算力,存储更多的是作为计算的辅助部件来出现,是整个计算机的一部分。单机存储时代比较代表性的产品有大型机、小型机和微机等,因为具有低成本、易于管理和维护等特点,在早期计算发展时期起到了重要的作用。单机存储也有着自己的一些缺点,其容量有限、可靠性低和数据安全差等。随着用户需求增长,存储开始进入“集中式存储”阶段。
在集中式存储时期,人们开始在计算机外部连接专用存储,通过专用线缆将存储连接到服务器总线上,于是DAS、NAS、SAN等存储相继出现。这期间,我国也诞生了大量硬件存储企业。这些存储产品的出现很好的解决了当时的存储需求。但随着互联网行业发展,企业对存储的需求越来越大,数据读取速度也越来越快。集中式存储反而成为数据中心系统的瓶颈,不能满足大规模存储应用的需要。于是,分布式存储应运而生。
受益于服务器技术、高速网络技术、SSD存储技术的发展和成熟,依托于x86标准服务器的分布式存储开始出现,并逐渐被广泛的应用起来。分布式存储就是将数据分散存储到多个存储服务器上,并将这些分散的存储资源构成一个虚拟的存储空间。打个比方,就像顾客去仓库提取物品,只要和仓库管理员沟通即可,不用关心物品到底存放在仓库的哪个角落。分布式存储的好处是提高了系统的可靠性、可用性和存取效率,还易于扩展。
如今,被广泛应用的Ceph分布式存储软件架构再次受到了行业需求的挑战——
首先,AI、IoT的发展,数据量爆炸式增长,企业客户对存储的需求增大,从而导致用户对存储成本和效率要求越来越高;
其次,如今的PaaS平台产品越来越多,如何将这些不同平台之间的数据打通,让数据流动并管理起来成为企业客户的迫切需求;
第三,随着数据爆炸式增长,企业对存储设备的容量需求从GB、TB开始走向PB、EB、ZB;
第四,当前行业硬件升级的速度远远超过了软件,软件反而阻碍硬件性能的发挥。
由于自身的数据体量超大,京东很早就发现了“老式存储”的问题。据京东云存储研发负责人介绍,传统的存储采用存算一体架构,会出现资源利用率不均、存储成本高、资源共享难等问题。与此同时,上一代分布式存储在延迟指标上表现平平,难以满足很多高性能要求。此外,随着日益严格的数据监管要求,市面上的开源存储技术基本来自于国外大厂,合规风险很高,亟需自主可控的存储技术和产品来实现真替真用。
京东早在2012年就开始进行存储产品的研发。研发方向,正是瞄准了“分布式存储”以及“存算分离”的新架构。但“分布式存储”和“存算分离”的结合并非易事,相对于本地NVMe磁盘,传统分布式存储的性能低下,强做存算分离,性能甚至无法满足业务的一般需求。分布式存储的能力,是实现高效存算分离存储的“最后一公里”卡点。
研发攻坚
云海定义“下一代存储”
由于“下一代存储”没有可以参考的对象,云海研发团队只能摸着石头过河。好消息是,京东有极其丰富的业务形态,零售、物流、金融、健康、工业等等。这些多元化业态的复杂场景都为云海研发提供了创新的能力与试错的场景。在完成了重写系统架构、解决网络传输以及大量的工程化调优与落地后,京东云发布了全新的存储产品“京东云云海分布式统一存储”,而云海成为先进存力的代表,正是在于其架构的“领先性”和工程高性能“实践性”。
首先,云海自研之初就将重点放在了架构升级方面,基于全新的分布式引擎技术架构,在高性能网络、全用户态组件等方向做了全链路提升,做到性能指标接近本地NVMe磁盘,保证IO处理延迟最低,解决存算分离的关键卡点问题。
据介绍,存储引擎和传统开源引擎从架构设计上完全不一样。比如,传统开源引擎数据的写入采用覆盖型模式,而云海的引擎全部为追加型,以日志追加的方式来进行落盘。这样的方式减少了数据擦除的步骤,磁盘存储效率会更高。同时,云海引入全异步、非阻塞、无锁化全量的架构,使得云海可以满足客户对高性能、高及时响应处理请求的需求。
其次,提升存储产品IO效率需要大量的工程化的调优与落地。比如NVMe技术和存储的结合,还有整个链路运行效率架构上的调优、全面的无阻塞和数据的零拷贝的工程实践,这些在高吞吐场景下做的,相当于在高带宽下整个性能保持平稳。
经历诸多细节大量的优化和长期工程化的打磨,京东云云海“下一代”分布式存储得到了全方位的升级和进化。
在性能上,云海通过研发低延迟RDMA高速及高性能存储引擎,使分布式存储的性能接近本地NVMe磁盘。优化长尾时延,做到了百万IOPS 时,时延低于100us,达到行业领先,是商业化分布式存储Ceph版本的5倍,集群IOPS更是达到了千万级。另外,性能的提升带来的最直接的好处就是让“存算分离”这一技术得以实现。如果性能不足,就会导致存储性能衰减,达不到提升利用率、降低成本的目的。云海分布式存储解决传统存算一体架构的弊端,真正实现“存算分离架构”升级,支撑 EB 级海量数据存储。
目前基于云海的存算分离的技术架构已在京东全面落地,相比存算一体的形态,云海支持的存储资源利用率提升至85%以上,PaaS综合成本降低达到了30%~50%。这也是云海成为“下一代”分布式存储的底气所在,不仅更好的满足了用户对分布式存储的需求,也巩固了京东云的行业领跑者地位。
软硬协同
扛住超高并发IOPS压力
众所周知,分布式存储产品形态多样,有纯软件或软件+硬件形态多种交付方式。对于用户来说,软件和架构的创新需要和新一代硬件发展技术进行匹配,能够实现更好的资源利用率、更好的容错性、更灵活的部署方式等。
在纯软件交付方面,云海分布式可以支持灵活多样的服务器配置,客户原有服务器也可利旧使用。支持独立输出块、文件、对象存储等,存算分离下,综合成本降低30%以上。
对于大多数企业用户,采用一体机无疑是一种最佳的交付方式,通过软硬协同交付的方式可以实现端到端的高可靠、高性能、高扩展以及一体化的运维能力,基于软件+硬件提供更细致的运维管理粒度,彻底降低了分布式存储在部署、管理和服务等方面的复杂性,全面满足用户需求。
正是基于“存算分离”架构,京东云云海可以同时支持纯软授权和软硬一体机形式的独立交付,也可作为存储标准化产品,以纯软或软硬一体机的形式被集成在解决方案中输出。用户可以根据自己的实际需求来配置存储和计算,大幅优化存储成本。
存储一体机其适配应用场景的潜力巨大,随着新应用、新场景日渐丰富,必然会带来大量的数据存储需求,而一体机有望加速获得更多应用部署。例如,像AI大模型、精准医学领域的基因测序、智慧交通领域的自动驾驶、能源领域的勘探等场景,对存储的性能、扩展性都要求极高。
以大模型为例, 其在存储方面的挑战一是数据加载不够快。大模型训练以文档、图片、音视频等非结构化数据为主,呈现海量小文件的特点,文件数量庞大,在几亿到几十亿量级;另一方面,数据空间占用大,从纯文本的TB级到多种数据类型的PB级,这些数据类型多元,协议复杂多样,就需要存储系统支持高吞吐和大容量,同时支持多协议数据互通,兼容性好,避免数据等待产生算力闲置。挑战二是带宽不够大,时延不够低。一般大模型应用读需求在每秒读40G、写20G,存储带宽的要求比电商业务顶峰时段高出几百甚至几千倍,存储性能的高低可能造成模型训练周期数倍的差异。挑战三是可用性不够高。长周期的训练过程中,由于软硬件系统稳定性和模型调优等方面的问题,大模型训练往往容易出现中断,而训练中断非常影响训练效率。
还有一个令人头痛的问题是硬件成本高。不仅AI芯片价格高,存储也是一笔不小的开销。千亿级别参数的大模型,动辄以月来计算的训练过程,反映到存储环节意味着巨大的成本,单次投入在数百万至数千万级别。
而云海在大模型训练的并行文件存储下,单文件系统支持千万级IOPS,上千台服务器同时并发访问;单客户端数据200μs延迟和数百GB/s的读写吞吐(物理网卡上限等限制)。此外,云海核心基于创新的架构,云海形成了低至1.1x副本的业内超低冗余的EC存储,并在生产环境成熟使用,大幅提升磁盘空间利用率,节省整体基础设施成本超30%。
100%自研
多场景国产化真替真用
数据是企业的核心生产要素。在国产化浪潮下,采用自主可控的国产化存储工具,实现数据的安全合规存储以及数据的高效流通和使用,成为企业IT基础设施建设的核心重点。例如,数字化程度颇高的金融行业,发展大模型就有很强的实力和意愿。尤其对于头部金融机构而言,大模型被视为变革性技术,继续提升AI应用。
但一方面大模型在长周期的训练过程中,由于软硬件系统稳定性和模型调优等方面的问题,往往容易出现中断。这就要求存储系统本身具备高可用性,避免因为存储系统的硬件故障、数据一致性错误等问题出现训练中断,影响训练效率。
另一个方面,在目前芯片出口限制、算力紧缺的大势下,如何提高硬件资源利用率,成为影响国产大模型技术发展和实用性的重要前提。而要提升大模型训练效率,主要在于对芯片、框架、模型、应用四层的优化,京东云云海作为自研产品,与飞腾、鲲鹏、海光等国产化硬件完全适配。一方面满足合规实现数据的高效流通和使用,同时能做到国产化真替真用。
除了为大模型训练提速,目前部分国产化分布式存储系统兼容性和产品成熟度仍有较大提升空间,导致企业国产化替代后,实际使用体验不佳,出现页面加载时间长、卡顿,甚至宕机的现象。京东云云海采用全局无锁架构,基于全自研技术,可完全自主可控,充分发挥国产硬件能力,可基于国产硬件提供接近x86水平的存储性能指标,快速替换原有非国产化环境的各类存储产品,实现真替真用。
最后总结
近年来,随着我国数智化转型的加速,信息安全愈发重要。此外,大模型等新应用、新场景层出不穷,都需要创新的存储系统来支持。分布式存储可帮助用户突破硬件扩展的限制,提升存储系统的灵活和稳定性;而软硬一体的交付方式能为用户提供一个无缝、开箱即用的高效能平台;同时,存储技术的自主研发也是我国信息化高速发展的必然选择。因此,下一代存储的架构和形态,将继续向分布式、软硬一体协同、国产自研的方向演进。
京东云云海利用自身业务积淀,提前洞悉市场需求,不断完善在存储领域的布局。通过分布式存储架构创新+软硬一体的交付方式,不断细化行业场景,基于工程化实践及时满足AI大模型等需求,持续在存储行业深耕。作为先进存力的代表,京东云云海将助力我国信息建设的国产替代从“可用”到“好用”迈进,最终推动数字技术与实体产业深度融合。