DynamoDB扫描操作成本我很新的AWS DynamoDB和看了我不是100%肯定的SCAN使用“限制”参数时,会发生什么成本计算的文档操作。与“限制”参数
据我所知,应该设计表,以便QUERY业务集中使用和一个SCAN会扫描整个表,从而消耗了大量的阅读能力。我也明白,FilterExpression并不会影响扫描整个表的成本,但会在之后过滤之后的所有扫描结果,并且如果扫描的项目总数超过了1 MB的最大数据集大小限制,则扫描停止并返回结果。
我不确定的是'限制'参数是一种FilterExpression,还是它停止整个扫描,从而降低了读取成本。
例如,如果我有一个排序关键字是日期字段(updatedAt)并且它有一百万行的活动表。如果我执行限值= 10的SCAN(为了获得最新的10个活动),我显然会得到10行,但是我会因阅读一百万行而被收费吗?成本是我最关心的问题。
感谢您的回复。这确实回答了这个问题,尽管我最近意识到扫描的顺序现在是随机的,而不是维护排序键的顺序。这意味着我无法通过updatedAt字段获得最新的10项活动。感谢您确认成本问题。 – elprl
@elprl但是如果'updatedAt'字段是你的排序键,你为什么要使用'scan'操作而不是'query'? –
在我的特殊情况下,表的散列键是一个hashTag字符串,排序键是updatedAt epoc数。 [“#cat”:1462812033,“#dog”:1462812073,...]。因此,为什么我需要''扫描''来获得自X时间起的所有hashtags。 – elprl