金庸小说里,剑魔独孤求败练剑30载,练就无锋的重剑,横行天下而难求一败,并悟出了“重剑无锋,大巧不工”的道理。
从2012年的初探自研,到2022年正式对外开放,十年磨一剑的京东云存储,能够在产业应用中所向披靡,所诠释的也恰是“重剑”的道理,十年沉浸于技术与产品的打磨,一朝释放,已是巅峰。
01
云海亮相,存算分离架构受客户认可
2022年,刚刚对外开放的京东云存储产品云海,迅速迎来了第一个要交付的“独立化”客户。
京东云云海存储产品经理张帆,仍然记得那时候的忐忑和紧张,“第一个客户是一家金融机构,因为大家既重视又紧张,整个项目在略显紊乱的状态下展开了。”
“彼时云海POC资历尚浅,京东云拿着自己的最佳实践来到POC现场,却发现与客户的实际流程有很大差别。银行的数据中心有严格的要求,不允许外部人员进入现场,我们有时需要远程指导客户的员工在现场配置,而这些员工甚至是不懂存储的。”张帆说。
“但是,在与多个客户交流过程中,他们多次提到云海的领先性存算分离架构,非常契合企业的业务现状和未来对公司整体技术架构的发展规划,既能保证业务稳定,又节省了存储成本。而且客户是很认可京东大规模实践打磨出来的产品能力。
同时,由于京东云是几家POC厂商中唯一在客户现场搭建了真实POC环境的,而非其他厂商只提供了测试机,因而在服务能力上也备受客户认可。”
云海存储一体机
过去一年中,真正让京东云感到振奋的是,在金融、证券等大行业客户对存储系统的横比中,京东云屡屡斩获性能指标排名第一,以实实在在的技术能力赢得了客户。
比如一家音视频领域的客户,自身技术能力很强,有一套完整的性能监控业务指标,在经历了接近2个月的性能横比后,京东云的性能不仅完胜对手,更是超出了客户的预期,因此实现了签约;再有一家证券客户,对技术的演进很有自己的思路和规划,也是经过了两个月左右的深度POC,认可云海的存算分离架构与其技术发展方向的契合,最终选定京东云成为存储产品的长期伙伴。。
这样的案例在京东云比比皆是。客观地说,作为一家企业存储服务的“新军”,如此强势的表现凭借的只能是技术能力的领先性。
02
十年磨一剑,京东云云海诞生记
所有的成功,都有其发展、演进的脉络。从今时今日的成就,回溯到京东云云海的“初生期”,又会给我们带来哪些不一样的启示?
2012年,是中国电商行业的一个分水岭。移动互联网的崛起,智能手机的普及,电商正式进入了中国零售的头部阵营,京东的后台支撑系统面对与日俱增的压力,京东云存储也步入了第一代自研的阶段。
京东云云海十年的资深研发老兵王黎说,“从2012年到2016年,我们通过开源加自研的方式,针对各业务线,做存储集群的管理。2016年之后,京东业务规模的扩大,业务场景的多样化,给了京东云存储更多的压力,京东云存储决定走向全面自研的分布式存储系统。”
开源能够满足几十个节点的存储系统,但随着京东业务规模的迅速扩大,几百乃至上千节点的架构已是常态,开源已经无法满足京东的要求;另外,京东云存储支撑的业务稳定性要求也越来越高,在99.995%的高要求下,做到高并发、高可用、高稳定、高可靠,并能够保证下一代的业务场景,如AI训练的要求,这条自研之路,京东云存储非走不可。
“但是,到了2020年前后,第二阶段的每个自研项目都是独立的存储引擎,从整体角度,它还存在瓶颈,性能、稳定性和可靠性都没有达到极致。”王黎说。
这一时期,京东内部还有一个关键事件催生京东云存储向第三代升级,那就是天琴α的诞生。
京东探索研究院建设了全国首个基于DGX SuperPOD架构的超大规模计算集群——天琴α,为超级深度学习、可信人工智能以及量子机器学习三大方向的研究提供算力支撑。也可以理解为京东云初代的大模型探索。
正是为了满足新的要求,2020年,“云海系统”的理念在京东云存储内部开始滋生,“我们能不能面向未来10年,甚至20年的存储需求,将性能、规模、稳定性、可靠性、成本做到极致,并将这些维度做统一的架构,依照这个架构来设计分布式存储系统呢?”王黎说。
2023年大模型元年到来,大模型对存力的需求也日渐清晰。这也印证了京东云存储3年前的判断,下一代存储的时代到来了。
云海早期核心团队
作为一个面向“下一代存储”的架构,京东云云海由京东云自主研发,采用分布式存储架构,统一了主流的三大存储引擎:分布式块存储(JD-CBS)、分布式对象存储(JD-COS)、分布式文件存储(JD-CFS);满足一套集群兼容多种存储,同一块磁盘上可以有文件、对象、块的任何一种数据,又满足各行业对存储高性能、低延时的业务诉求,实现性能与成本的平衡。
那么到底什么是“下一代”?京东云云海存储又凭什么能够代表“下一代存储”呢?
03
性能提升10倍,下一代存储为大模型铺路
如果将2020年之前,京东云存储的自研看做是上一代存储,那么下一代存储本质上会有哪些区别?。
京东云存储研发负责人陈靖说,“最直接的感受就是代码量翻了5倍,上一代存储是基于Go语言和Golang来实现的,下一代已经全部转为了高性能的C++,随之带来的工程难度也增加了一个数量级。”
第二个难点,在于大规模的场景实践。数字化时代,对于任何企业来说,数据资产都是核心价值,数据一旦损坏,对于企业数据资产就是巨大的损失。因而对存储系统的选择非常谨慎,如果没有经历过大规模生产级的场景验证下来的技术,是不值得信任的。
而京东恰好拥有最丰富的超大规模场景,涵盖零售、物流、金融、健康多个业务形态,从超千万自营在库SKU,数千个产业带商品的线上销售、超千亿元的金融服务,到超1000座仓库的物流周转,超300座城市用户的分钟级配送,还有每年618和11.11,数亿用户同时参与的极端流量场。这一系列复杂场景给了云海最好的验证场景。
第三个难点,云海是一种完全创新的架构,业内没有可以参考的模板,在这样的技术无人区,只能摸着石头过河。“对京东来说,它难不难?确实很难,到底有多难?我的同事形容为加班时生无可恋,解决后如释重负。”陈靖说。
云海存储技术架构图
云海的技术创新,京东云存储就像是寻找真理的孤独行者,在茫茫的夜空中,找寻下一代存储的那一缕光亮。
今天的京东云云海,为大模型时代“下一代”存储树立了一个极难超越的标准。
第一个标准是:性能强劲与延时更低,达到千万级IOPS、时延低于100微秒,满足金融级核心生产业务,以及大模型对高性能的要求。分布式存储的性能接近本地NVMe磁盘,通过技术手段优化长尾时延,百万IOPS时,时延低于100us,性能是商业化Ceph版本的5倍。
第二是可用性更高,即使出现两副本故障,京东云云海也能保障最后一副本数据100%正确,并支持秒级故障恢复,用户对故障无感,业务连续不受影响。
第三是存算分离技术,京东云云海解决传统存算一体架构的弊端,实现“存算分离架构”升级,可实现精准成本控制,各自按需独立扩展,独立优化升级,能够支撑EB级海量数据存储。
第四是极致降本,云海形成了低至1.1x副本的业内超高空间利用率EC存储技术,相较于传统三副本模式节省60%-70%的存储空间。
第五是,全国产化自研,历时10年,接近100%全自研技术,并全面支持鲲鹏、海光、飞腾等国产CPU架构服务器,完全可以满足金融、政企等行业的国产化替代需求,做到真替真用。
最后是存储引擎统一,云海全面支持块存储、对象存储、文件存储、并行文件存储、大数据存储,五大类型存储协议,实现统一架构统一管理。
陈靖表示,“下一代存储技术,完全是开放的,不存在壁垒,它的演进方向目前也是业界公认,但是难点在于场景实践和大规模的验证。”这就像是一块玉石,不经过无数次精细的雕琢,就不能够称之为“器”。也正是在这样大规模的场景打磨下,才有了云海突破重重难关,拨云见日。
京东物流,是整个京东服务体验的“门面”,大量的订单一旦发生拥塞,导致订单挤压,就会严重影响用户体验。所以京东物流业务内部对订单延迟有严格的监控,即便发生秒级的延迟,也会立刻告警。同时,物流会与京东云存储部门,立刻组建运维支持小组,第一时间对基础设施进行提升和改进。
同样,在刚刚过去的11.11,京东云作为京东集团零售业务的技术基石,以数智技术助力供应链降本增效,在每秒用户访问峰值同比提高170%的情况下,依靠云海的存算分离架构,为集团节省成本超30%,成为京东数智基础设施的坚实基础。
重剑虽无锋,但却能够胜过锋芒毕露的武器,靠的不是蛮力,而是长期实践积累的智慧和坚韧。对技术演进路线的前瞻洞察,并在大规模场景中,反复磨炼,这是京东云云海分布式存储的取胜之道。