将EMR步骤作业的结果返回到AWS Step Function的下一个状态

时间:2020-07-25 06:53:06

标签: aws-step-functions

我想在EMR作业中设置一个变量,然后将其传递给步进功能的下一个状态。 我进行了很多搜索,但找不到任何方法。

完整的用例是从s3中读取文件,如果目录中没有文件,我将得到一个异常,并且在除了block之外,我将设置一个值,以便在AWS Step功能的下一个状态下可以选择状态决定,要么移到下一个Job,要么终止集群并退出。

try:
   spark.read.csv("path goes here")
except:
   ## set parameter here

一个解决方案是使用Lambda并检查目录中是否存在文件并设置一个值并返回,我将在选择状态中接收该值。但是我想直接做而不添加Lambda。

我也尝试过生成自定义异常并将其捕获到状态功能的“捕获块”中,但这也无法正常工作。

1 个答案:

答案 0 :(得分:0)

我找不到任何直接方法,因此我使用Lambda函数检查该文件是否存在于S3上,并相应地设置该值并将其传递给Choice状态。