Flink在新浪微博的在线机器学习和实时数据分析(回复 flink 获取Flink Forward 2020  PPT。)

本文介绍了微博的机器学习平台WML,包括其多层架构和内部开发的WeiLearn、WeiFlow框架。Flink在微博的实时计算和在线模型训练中扮演关键角色,用于样本生成、多流联接,支持高效处理无序事件。未来,微博计划使用Flink构建统一的数据仓库,简化批处理和流处理作业。
摘要由CSDN通过智能技术生成

1 什么是微博

微博是中国最大,最受欢迎的社交媒体网络平台。该网站是一个微博客平台(类似于 Twitter 或 Reddit),其功能包括消息传递,对文章进行评论,重新发布以及基于上下文浏览等的视频和图片推荐。2019 年,微博的每日活跃用户(DAU)超过 2.2 亿,每月活跃用户(MAU)达到 5.16 亿。基于人们的社交活动(例如,在世界范围内发布和共享新闻等),微博团队开发了一个社交网络,该社交网络可以将用户连接起来,并根据他们的活动和兴趣将内容分发到个人。

图片

2 微博的机器学习平台(WML)

如下图所示,微博的机器学习平台(WML)由多层体系结构组成,从集群和资源管理一直到建模和推理训练组件。作为平台的核心,我们的集群部署由在线,离线和高性能计算集群组成,运行我们的应用程序和管道。

图片

集群层之上是我们平台的调度层,该层由两个内部开发的框架(WeiBox 和 WeiFlow)组成,用于以统一的方式将作业提交给不同的集群。我们还利用YARN和Kubernetes用于资源管理。机器学习平台的第三层包含计算层,该层与我们内部开发的 WeiLearn 框架一起提供(在本文的以下各节中进行了详细说明),该框架使我们平台的用户可以定义自己的算法并构造自己的算法 UDF 以及多个集成的数据处理框架,例如 Hadoop,Flink,Storm 和 TensorFlow。我们架构的模型训练和在线预测层位于最顶层,可为公司提供不同的应用场景,包括特征生成,样本生成,在线模型训练和在线推断等。

为了更深入地了解微博中机器学习的执行方式,让我们介绍一下我们自己内部开发的两个用于微博机器学习的框架:WeiLearn 和 WeiFlow。

WeiLearn(在下面的图 3 左侧进行了说明)是在 Weibo 上建立的,它是我们的开发人员编写和插入自己的 UDF 的框架,它通过三个主要步骤进行操作:用于离线数据处理作业的 Input,Process 和 Output 和 Source,Process 和 Sink 处理我们的实时数据处理工作。另一方面,WeiFlow 是使用 Cron 表达式处理任务依赖性和计划的工具,例如从特定任务重新运行或在特定时间段回填多天的数据。

经过几次成功的迭代后,微博的机器学习平台现在在模型训练中支持超过 1000 亿个参数,每秒支持超过 100 万个查询(QPS),同时在早期的版本中我们成功的将迭代周期从每周的节减少到 10 分钟。

3 Apache Flink 在微博用于机器学习

Flink 在微博的机器学习平台中以及在我们平台的实时计算中均扮演着重要角色。实时计算平台的基础架构层由Apache Flink、Apache Storm集群构成,同时包含用于度量和监控的 Grafana 。Apache Flume and the ELK stack (ElasticSearch + Logstash + Kibana) 作为我们的日志记录系统。

使用 Flink 独特的抽象集及其统一的 API,我们能够在微博上强化我们的机器学习pipeline。我们之前有用于在线和离线模型以及推理训练的单独管道,每个管道使用不同的计算引擎,包括 Storm,Flink,Spark Streaming,Hive 和 MapReduce。最重要的是,我们有多个应用程序开发框架要使用和实现&#

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值