Flink AI Flow 是如何把实时推荐系统里面复杂的工作流,用一个完整的工作流描述出来?

Flink AI Flow 是如何把实时推荐系统里面复杂的工作流,用一个完整的工作流描述出来?

展开
收起
云上静思 2021-11-05 16:29:00 1241 分享
分享
版权
举报
1 条回答
写回答
取消 提交回答
  • 举例说明,如图示,假如有一个 DAG,它里面包含了模型的训练,模型的验证以及在线推理这三个作业。 首先,通过Scheduler模型训练的作业,提交上去之后,Scheduler会到Metadata Service里面去更新作业状态,变成一个待提交的状态。假设环境是K8SCluster,那么它会提交到Kubernetes上去跑这样一个训练作业;

    训练作业跑起来之后,可以通过作业状态监听器更新作业状态。假设是一个流式的训练作业,跑了一段时间后会生成一个模型,这个模型会注册到模型中心,注册之后模型中心会发出一个事件,表示有一个新的模型版本被注册了。这个事件会到Scheduler,Scheduler会监听这些事件。

    当收到这些事件后,Scheduler就会去看有没有一些条件被满足了,还需要做什么动作。模型生成的时候,Scheduler需要对这个模型进行验证,满足后拉起一个作业,也就是模型验证的作业。模型验证作业被拉起后,它会到模型中心找到最新被生成的模型版本,然后对它机型模型验证。如果验证通过,且这个模型验证是个批作业,那么它会告诉Model Center模型被Validated了,这个时候模型中心就会发送一条Model Validated Version Event给Scheduler,模型被更新后,Scheduler会去看Model Validated,触发拉起线上的推理服务,然后再到模型中心把里面刚被Validated过的模型拉过来做推理。

    假设推理服务也是一个流的作业,也是一直跑在那里。过了一段时间之后,线上的流的训练作业又生成了一个新的模型,刚才那条路又会再走一遍,它会有一个模型生成的一个 New Model Version Validated,它又会被 Scheduler 听到,Scheduler 又拉起一个Validated 作业,Job2 又会被拉起,拉起之后 Validated 作业又会去验证模型,有可能这个模型验证又通过了,又会发送一条模型 New Model Version Validated 给模型中心,模型中心会把这个 Event 又给到 Scheduler。这个时候,Scheduler 会看到推理作业其实已经起在那里了,可能就什么都不做。推理作业同时也在监听着 Model Version Validated 事件,当它收到这个事件的时候,会去做的一件事情就是到模型中心里面重新加载最新的被 Validated 过的事件。

    配图17.png

    资料来源:《实时数仓“王炸组合”-实时计算 Flink 版+Hologre》链接:https://developer.aliyun.com/topic/download?id=7944

    2021-11-05 22:27:19 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

收录在圈子:
实时计算 Flink 版(Alibaba Cloud Realtime Compute for Apache Flink,Powered by Ververica)是阿里云基于 Apache Flink 构建的企业级、高性能实时大数据处理系统,由 Apache Flink 创始团队官方出品,拥有全球统一商业化品牌,完全兼容开源 Flink API,提供丰富的企业级增值功能。
还有其他疑问?
咨询AI助理
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等