AWS Kinesis Stream In Detail Review

时间:2018-01-16 09:59:55

标签: postgresql amazon-web-services amazon-s3 lambda amazon-kinesis

我是AWS新手。我已经使用java在aws中实现了一些功能。我的要求是一次向RDS PostgreSQL实例插入一个50MB的csv。

我尝试使用aws lmabda服务。但是5分钟后lambda会停止,所以我就这样掉了。(lambda函数的限制)

我接下来的第二步我编写了一个s3事件的java lambda代码,该代码将使用putrecord命令将ssv文件读入s3到kinesis流。根据我的理解,kinesis能够通过记录读取csv文件记录。这个kinesis流将调用第二个lambda函数,该函数将数据保存到postgreSQL。

一切都很好。但我的困惑是只插入了32000条记录。我的csv中有50000条记录。根据kinesis流,它会将每一行作为记录读取,所以每次它会分别调用lambda吗?那么为什么它不能完全保存?

我的kinesis流中还有一个问题,如下所示。 enter image description here

同样在我的lambda中,我将kinesis配置为

enter image description here

这是我的要求的正确配置吗?如果我将batchsize作为1,我的函数会插入完整的记录吗?请让我知道你对此的了解。提前谢谢你的帮助!!!!

1 个答案:

答案 0 :(得分:1)

您超出了单个分片的限制。

查看以下文件: Amazon Kinesis Data Streams Limits

确保您的代码正在检查每次AWS通话时的错误。