《Apache Flink 案例集(2022版)》——3.机器学习——Bilibili-Flink 在 B 站的多元化探索与实践(3)

简介: 《Apache Flink 案例集(2022版)》——3.机器学习——Bilibili-Flink 在 B 站的多元化探索与实践(3)

《Apache Flink 案例集(2022版)》——3.机器学习——Bilibili-Flink  在 B 站的多元化探索与实践(2) https://developer.aliyun.com/article/1228229



3. AI on Flink

image.png


传统的机器学习链路里数据的传输、特征的计算以及模型的训练,都是离线处理的,存在两个大的问题:第一个是时效性低,模型和特征的更新周期基本是 t+1 天或者 t+1 小时,在追求时效性的场景下体验并不好。第二个是计算训练的效率很低,必须等天或小时的分区数据全部准备好之后才能开始特征计算和训练。全量分区数据导致计算和训练的压力大。


image.png

在实时技术成熟后,大部分模型训练流程都切换到实时架构上,数据传输、特征计算和训练都可以做到几乎实时,从全量变成了短时的小批量增量进行,训练的压力也大大减轻。同时由于实时对离线的兼容性,在很多场景比如特征回补上,也可以尝试使用 Flink 的流批一体进行落地。


image.png


上图是B站典型的机器学习链路图。从图上可以看出,样本数据生产特征的计算、模型的训练和效果的评估都大量实时化,中间也夹杂着少量离线过程,比如一些超长周期的特征计算。  


同时也可以看出,完整的业务的模型训练链路长,需要管理和维护大量的实时任务和离线任务。出现故障的时候,具体问题的定位也异常艰难。如何在整个机器学习的链路中同时管理号这么多实时和离线任务,并且让任务之间的协同和调度有序进行、高效运维,是B站一直在思考的问题。


image.png


因此B站引入了 Flink 生态下的 AIFlow 系统。AIFlow本身的定位就是做机器学习链路的管理,核心的机器计算引擎是 Flink,这和B站的诉求不谋而合。这套系统有三个主要的特性符合B站的业务需求。  


第一,流批的混合调度。在B站实际的业务生产上,一套完整的实时链路都会夹杂着实时和离线两种类型的任务。AIFlow 支持流批的混合调度,支持数据依赖与控制依赖,能够很好地支持B站现有的业务形态,并且未来在 Flink 流批一体方面也会有更多的发挥空间;


第二,元数据的管理,AIFlow 对所有数据和模型都支持版本管理。有了版本管理,各种实验效果和实验参数就都可追溯;


第三,开放的通知机制。整个链路中存在很多的外部系统节点,难以归纳到平台内部,但是通过通知机制,可以打通 AIFlow 内部节点与外部节点的依赖。整套系统的部署分为三部分,notification service、 meta service 以及 scheduler,扩展性也很好,B站在内部化的过程中实现了很多自己的扩展。


image.png

AIFlow 的构建使用 Python 进行描述,运行时会有可视化的节点展示,可以很方便地追踪各个节点的状态,运维也可以做到节点级的管理,不需要做整个链路级别的运维。


未来规划

在平台建设方面,B站希望融合 Yarn session 模式与 application 模式做 session 的复用,解决任务上线的资源申请效率问题。同时希望大 state 任务也能够在 session 的基础上复用本地的 state,启动时无需重新下载 state。  


同时希望能统一目前的 SQL 和 JAR 包两种模式,统一任务构建方式,让用户以更低的成本更多复杂的操作,平台也更方便管理。  


在增量生产方面,B站希望构建一套标准的数据组织布局优化,并且基于历史查询自动对数据做重布局优化,使用Data Skipping等技术实现计算加速。同时希望对批流存储进行融合,并赋能AI数据的标准化。  


在机器学习方面,B站希望整个系统借助Flink的批流一体能力支持实时离线两套运行模式,方便回补历史数据。同时希望可以实现特征多版本管理,并支持Alink原生训练,打通外部训练系统,实现全链路拉起。

相关实践学习
基于Hologres+Flink搭建GitHub实时数据大屏
通过使用Flink、Hologres构建实时数仓,并通过Hologres对接BI分析工具(以DataV为例),实现海量数据实时分析.
实时计算 Flink 实战课程
如何使用实时计算 Flink 搞定数据处理难题?实时计算 Flink 极客训练营产品、技术专家齐上阵,从开源 Flink功能介绍到实时计算 Flink 优势详解,现场实操,5天即可上手! 欢迎开通实时计算 Flink 版: https://cn.aliyun.com/product/bigdata/sc Flink Forward Asia 介绍: Flink Forward 是由 Apache 官方授权,Apache Flink Community China 支持的会议,通过参会不仅可以了解到 Flink 社区的最新动态和发展计划,还可以了解到国内外一线大厂围绕 Flink 生态的生产实践经验,是 Flink 开发者和使用者不可错过的盛会。 去年经过品牌升级后的 Flink Forward Asia 吸引了超过2000人线下参与,一举成为国内最大的 Apache 顶级项目会议。结合2020年的特殊情况,Flink Forward Asia 2020 将在12月26日以线上峰会的形式与大家见面。
相关文章
|
存储 监控 数据挖掘
京东物流基于Flink & StarRocks的湖仓建设实践
本文整理自京东物流高级数据开发工程师梁宝彬在Flink Forward Asia 2024的分享,聚焦实时湖仓的探索与建设、应用实践、问题思考及未来展望。内容涵盖京东物流通过Flink和Paimon等技术构建实时湖仓体系的过程,解决复杂业务场景下的数据分析挑战,如多维OLAP分析、大屏监控等。同时,文章详细介绍了基于StarRocks的湖仓一体方案,优化存储成本并提升查询效率,以及存算分离的应用实践。最后,对未来数据服务的发展方向进行了展望,计划推广长周期数据存储服务和原生数据湖建设,进一步提升数据分析能力。
1473 1
京东物流基于Flink & StarRocks的湖仓建设实践
|
资源调度 Kubernetes 流计算
Flink在B站的大规模云原生实践
本文基于哔哩哔哩资深开发工程师丁国涛在Flink Forward Asia 2024云原生专场的分享,围绕Flink On K8S的实践展开。内容涵盖五个部分:背景介绍、功能及稳定性优化、性能优化、运维优化和未来展望。文章详细分析了从YARN迁移到K8S的优势与挑战,包括资源池统一、环境一致性改进及隔离性提升,并针对镜像优化、Pod异常处理、启动速度优化等问题提出解决方案。此外,还探讨了多机房容灾、负载均衡及潮汐混部等未来发展方向,为Flink云原生化提供了全面的技术参考。
771 9
Flink在B站的大规模云原生实践
|
SQL 存储 NoSQL
Flink x Paimon 在抖音集团生活服务的落地实践
本文整理自抖音集团数据工程师陆魏与流式计算工程冯向宇在Flink Forward Asia 2024的分享,聚焦抖音生活服务业务中的实时数仓技术演变及Paimon湖仓实践。文章分为三部分:背景及现状、Paimon湖仓实践与技术优化。通过引入Paimon,解决了传统实时数仓开发效率低、资源浪费、稳定性差等问题,显著提升了开发运维效率、节省资源并增强了任务稳定性。同时,文中详细探讨了Paimon在维表实践、宽表建设、标签变更检测等场景的应用,并介绍了其核心技术优化与未来规划。
1432 10
Flink x Paimon 在抖音集团生活服务的落地实践
|
资源调度 Kubernetes 调度
网易游戏 Flink 云原生实践
本文分享了网易游戏在Flink实时计算领域的资源管理与架构演进经验,从Yarn到K8s云原生,再到混合云的实践历程。文章详细解析了各阶段的技术挑战与解决方案,包括资源隔离、弹性伸缩、自动扩缩容及服务混部等关键能力的实现。通过混合云架构,网易游戏显著提升了资源利用率,降低了30%机器成本,小作业计算成本下降40%,并为未来性能优化、流批一体及智能运维奠定了基础。
842 9
网易游戏 Flink 云原生实践
|
存储 运维 BI
万字长文带你深入广告场景Paimon+Flink全链路探索与实践
本文将结合实时、离线数据研发痛点和当下Paimon的特性,以实例呈现低门槛、低成本、分钟级延迟的流批一体化方案,点击文章阅读详细内容~
|
机器学习/深度学习 存储 搜索推荐
利用机器学习算法改善电商推荐系统的效率
电商行业日益竞争激烈,提升用户体验成为关键。本文将探讨如何利用机器学习算法优化电商推荐系统,通过分析用户行为数据和商品信息,实现个性化推荐,从而提高推荐效率和准确性。
808 14
|
机器学习/深度学习 算法 数据可视化
实现机器学习算法时,特征选择是非常重要的一步,你有哪些推荐的方法?
实现机器学习算法时,特征选择是非常重要的一步,你有哪些推荐的方法?
788 1
|
机器学习/深度学习 算法 搜索推荐
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
|
机器学习/深度学习 数据采集 算法
解码癌症预测的密码:可解释性机器学习算法SHAP揭示XGBoost模型的预测机制
解码癌症预测的密码:可解释性机器学习算法SHAP揭示XGBoost模型的预测机制
1773 0
|
机器学习/深度学习 数据采集 监控
机器学习-特征选择:如何使用递归特征消除算法自动筛选出最优特征?
机器学习-特征选择:如何使用递归特征消除算法自动筛选出最优特征?
2666 0

相关产品

  • 实时计算 Flink版