当前位置: 首页 > 知识库问答 >
问题:

AWS Lambda函数跳过DynamoDB记录

史经业
2023-03-14


我正在使用在AWS Lambda中创建的函数来触发和处理插入到DynamoDB表中的每条记录。

但我最近注意到很多记录丢失并且没有被处理。例如,每插入50,000条记录,可能会处理大约2000-3000条记录。:(

我还注意到,在一段时间内,这个正在处理的数字每5分钟左右缓慢增加大约100-200条记录。我使用aws命令行检查了这一点:
aws Dynamodb扫描--table-name myDynamoTable--select"COUNT"

如果有帮助,我正在使用默认设置来创建Lambda函数。

这是Lambda函数的问题还是MY Lambda函数的配置?
我是否可以更改任何属性/设置以改进其功能?
最后,如果最坏的情况出现,我可以使用什么作为Lambda函数的替代方案(可靠的)?我可以自己构建一个吗?

TIA。

共有1个答案

欧浩淼
2023-03-14

DynamoDB扫描只返回前1MB的数据。您需要使用LastEvalatedKey值进行迭代。

 类似资料:
  • 问题内容: 您能否指出我跳过JavaScript中可选参数的好方法。 例如,我想在这里丢弃所有参数: 问题答案: 解: 您应该使用而不是要跳过的可选参数,因为这100%会模拟JavaScript中可选参数的默认值。 小例子: 强烈建议 :如果您有很多参数,请使用JSON,并且可以在参数列表的中间包含可选参数。看看这是如何在jQuery中完成的。

  • 问题内容: 遍历一系列数字并跳过一个值的有效方法是什么?例如,范围是从0到100,而我想跳过50。 编辑:这是我正在使用的代码 问题答案: 您可以使用以下任何一种:

  • 问题内容: 如何在数据库中选择一些记录,从而跳过MS Access中的行数。在MySQL中是。火鸟是等。 在Google上根本没有运气=( 问题答案: 如果您知道要跳过多少条记录,则可以执行以下操作: 然后,您可以排除不需要的记录。 如果您随后知道要返回的记录总数,则可以执行以下操作:

  • 问题内容: 我想做一个查询,从中选择一堆数据,但是我希望能够通过仅选择每三个记录,甚至每个百分之一的记录来降低数据的分辨率。任何。 有什么简单的方法可以用ActiveRecord做到这一点吗? 问题答案: 在Oracle中,我将其编写如下: 这样做的好处是,过滤器发生在数据库中,因此不会检索所有内容。 在PostgreSQL中,这称为(实际上是SQL标准)。在MySQL中,不支持此功能。 在mys

  • 更新:spark avro软件包已更新以支持此场景。https://github.com/databricks/spark-avro/releases/tag/v3.1.0 我有一个AVRO文件,它是由我无法控制的第三方创建的,我需要使用spark进行处理。AVRO模式是一个记录,其中一个字段是混合联合类型: 这是不支持的火花avro阅读器: 除了上面列出的类型之外,它还支持读取三种类型的联合类型

  • 是否存在防止DynamoDB流在每次DynamoDB更改时触发λ的方法? 这些数字并不准确,但是假设step函数将连续运行10次,那么它将更新DynamoDB 3次。在step函数触发lambda之前,这是调用lambda的30倍。有什么方法可以阻止这些lambda调用吗?