如何让dynamodb流在PK级别触发

问题描述 投票:0回答:1

我计划创建 3 列的 dynamoDB 表

索取ID 伊信 MKEY 日期
A1 111 U111 03/07/24
A1 222 U222 03/07/24
A2 333 U333 03/07/24

假设我今天同时加载这些记录。我想在这里触发 dynamodb 流两次 - 一次用于 A1,一次用于 A2,而不是针对每个记录插入。可以这样做吗? MKEY 是一种唯一密钥或 PK

据我所知,ddb 流捕获记录和属性级别更新。这就是 AWS 保持全局表同步的方式。不确定我指定的内容是否有效。

amazon-dynamodb
1个回答
0
投票

您永远无法确定您的物品是否会进入不同的分片。 DynamoDB 分区和 Lambda 消费者之间的映射如下:

DDB Partition -> Stream Shard -> Lambda invocation

虽然您正在寻找的情况最有可能发生,但不能保证一定会发生,原因有两个:

  1. 您的两个分区键
    A1
    A2
    都可以哈希到同一个物理分区,这意味着您将在同一个 Lambda 调用中看到
    A1
    A2
  2. 您的项目集合
    A1
    可能存储在多个分区中,这意味着它们最终会出现在不同的 lambda 消费者中。
© www.soinside.com 2019 - 2024. All rights reserved.