Kinesis Firehouse Stream Empty

时间:2017-07-07 11:48:00

标签: amazon-s3 amazon-ec2 aws-lambda amazon-kinesis-firehose

我在循环中多次从EC2实例触发AWS lambda,并将350MB数据集的子集传递给Lambda,后者处理传递给它的每个数据集。 Lambda将输出写入Kinesis Firehouse流,然后将其写入S3 Bucket。 缓冲区大小为50MB,而Kinesis Firehouse流的S3缓冲区间隔为350秒。所以我在6-7分钟后得到大约7个50 MB的文件。

我想触发一个Lambda,它结合了S3中包含JSON数据的所有文件,并在完成Kinesis Firehouse流将所有文件写入S3后创建了一个CSV文件。

挑战是如何知道所有Lambda都已完成其操作并且Kinesis Firehouse缓冲区为空,因为它已将所有文件写入S3,因此我可以触发此Lambda创建CSV文件来自S3中的所有JSON文件。

一个选项是我在循环之后等待350秒,然后在调用最后一个lambda之后触发CSV创建lambda。

有没有办法在写完所有Kinesis Firehouse流数据后触发lambda而不是使用计时器。

0 个答案:

没有答案