开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

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

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

展开
收起
云上静思 2021-11-05 16:29:00 1222 0
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
    赞同 展开评论 打赏

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

相关产品

  • 实时计算 Flink版
  • 热门讨论

    热门文章

    相关电子书

    更多
    释放算力潜能加速应用构建Serverless为AI创新提速 立即下载
    智算时代,基于 Kubernetes 落地云原生 AI 立即下载
    AI让数据库的路走的“更快更远” 立即下载