Amazon web services 触发具有多个必需源的Lambda函数

Amazon web services 触发具有多个必需源的Lambda函数,amazon-web-services,aws-lambda,amazon-cloudformation,amazon-sns,amazon-rekognition,Amazon Web Services,Aws Lambda,Amazon Cloudformation,Amazon Sns,Amazon Rekognition,我目前正在运行一个CloudFormation堆栈,其中包含许多处理视频的元素,包括对Rekognion的调用。我有它的大部分工作,但有一个问题,正确地存储信息,因为我去。。。因此,我最终可以将视频的Rekognition数据写入DynamoDB表 下面是堆栈的相关部分,它们主要位于传递此输入事件的Step函数内部: 示例_事件={ “guid”:“1234”, “视频”:“video.mp4”, “水桶”:“我的水桶” } 当前设置: 通过主键“guid”将示例_事件写入DynamoDB表,并

我目前正在运行一个CloudFormation堆栈,其中包含许多处理视频的元素,包括对Rekognion的调用。我有它的大部分工作,但有一个问题,正确地存储信息,因为我去。。。因此,我最终可以将视频的Rekognition数据写入DynamoDB表

下面是堆栈的相关部分,它们主要位于传递此输入事件的Step函数内部:

示例_事件={ “guid”:“1234”, “视频”:“video.mp4”, “水桶”:“我的水桶” }

当前设置:

  • 通过主键“guid”将示例_事件写入DynamoDB表,并将该示例_事件传递到下一步
  • Rekgonion触发器Lambda:Lambda函数,在“我的桶”中的“video.mp4”上运行start\u label\u detection(),将通知通道设置为SNS主题
  • Rekognition Collect Lambda:由SNS主题触发的Lambda函数(位于Step函数之外)(例如,几分钟后),从SNS收集作业ID,在作业ID处运行get_label_detection()
  • 上述措施效果良好我想添加第4步:

  • 为“guid”=“1234”处的条目将rekognition响应写入我的DyanmoDB表,以便将我的dynamo项更新为
  • {“guid”:“1234”,“video”:“video.mp4”,“bucket”:“我的bucket”,“rek_数据”:“{”Labels:[…]}”

    所以在我看来,除了SNS主题,我基本上无法通过Rekognition传递任何其他数据。似乎在第二个lambda中,我不应该使用非主键(如JobID)进行查询

    有没有办法设置第二个lambda函数,使其由两个(并且只有正确的两个)SNS主题触发?例如一个发送“guid”,另一个发送重新命名数据

    或者使用两个Dynamo表(一个用于临时存储JobID和guid以供以后引用)是否有效?还是一个更好的方法来完成这一切

    谢谢