通过事件连接工作流
现实世界的生产系统不是孤立的。它们通常与周围环境紧密连接,实时对变化做出反应。使用本节中描述的事件触发模式,您可以使Metaflow流基于外部事件自动启动。或者,您可以通过事件将多个流连接在一起,通过使用工作流作为构建模块来构建任意复杂的系统。
事件触发是使用
@schedule 装饰器 的时间基础调度的替代方法。
流不是在特定的日期和时间开始,而是在发送特定的事件到生产调度器时触发。该图示说明了这个概念:

外部系统如数据仓库、ETL管道或微服务可以创建特殊的 事件,从而触发在 生产调度器上 部署的流程的执行。
已部署的流程还可以自动触发其他流程。在这种情况下,
SecondFlow被配置为在FirstFlow完成时自动启动。
事件定义了工作流之间的清晰接口,这些工作流可以独立开发和操作,使多个人在构建和操作更大系统时能够无摩擦地协作。有关事件触发的更多背景信息,请参阅公告博客文章。
通过阅读接下来的三个部分开始使用事件触发。第四部分与更高级的用例相关,这些用例利用 the @project 装饰器 部署多个并发的事件触发流变体。
info
截至今天,事件触发仅在 Argo Workflows上支持。 如果您希望看到其他生产调度器的支持,请在Metaflow community Slack上告诉我们。