有一个 DynamoDB 表Entity
,其中有一个散列键id
和 GSI 在另一个属性上:cardId
。GSI 只有范围键,没有任何排序键。
每当我们收到一批创建/更新请求时,我们首先使用 GSI 读取现有数据,然后写入主表,最终也会更新 GSI 表。在此期间,我们可能还会处理来自 GSI 的一些并行读取请求。
我们看到了一个问题,在此期间主表和 GSI 表的延迟从 200 毫秒增加到 10-15 秒(批量写入 + 读取)。我无法在表中的连续读取和写入之间建立关联。该表设置为使用按需容量并且没有限制。“SuccessfulRequestLatency”仅约为 300-400 毫秒。
它是 DDB 客户端方法,具有以秒为单位的延迟。它不做任何数据转换,只是将数据库数据原样返回给上层。还有什么我应该监控的以找出根本原因吗?
谢谢!