Amazon web services 完成特定3个AWS作业时触发事件

Amazon web services 完成特定3个AWS作业时触发事件,amazon-web-services,aws-batch,Amazon Web Services,Aws Batch,我在AWS批处理中并行提交了3个作业,我想在所有这3个作业完成后创建一个触发器 我应该能够指定3个作业ID,并且在完成所有3个作业后可以更新DB 我可以通过长时间池轻松完成这项任务,但我想基于事件做一些事情。 我需要您的帮助。最简单的方法是创建第四批作业,将其他三个作业指定为依赖项。此作业将处于挂起状态,直到其他三个作业成功,然后它将运行。在该作业中,您可以更新数据库或执行任何其他您想要的操作 这种方法的一个缺点是,如果其中一个作业失败,挂起的作业将自动进入失败状态而不运行。为什么不使用作业队列

我在AWS批处理中并行提交了3个作业,我想在所有这3个作业完成后创建一个触发器

我应该能够指定3个作业ID,并且在完成所有3个作业后可以更新DB

我可以通过长时间池轻松完成这项任务,但我想基于事件做一些事情。
我需要您的帮助。

最简单的方法是创建第四批作业,将其他三个作业指定为依赖项。此作业将处于挂起状态,直到其他三个作业成功,然后它将运行。在该作业中,您可以更新数据库或执行任何其他您想要的操作


这种方法的一个缺点是,如果其中一个作业失败,挂起的作业将自动进入失败状态而不运行。

为什么不使用作业队列并在结束时触发lambda函数?步骤函数将是一个不错的选择。另一种可能是将完成事件写入DynamoDB(例如,让一个DynamoDB项与一组给定的3个作业关联),并在完成时让每个作业将其ID附加到DynamoDB项上的列表属性,然后让DynamoDB流在每次更新项时调用Lambda。Lambda将计算已完成事件ID的数量,如果为3,则触发工作流的下一部分。