【问题标题】:Will Kinesis Client Library DynamoDB Adaptor Lose DataKinesis 客户端库 DynamoDB 适配器会丢失数据吗
【发布时间】:2016-06-03 19:00:13
【问题描述】:

DynamoDB Streams Kinesis Adaptor published on github here 具有以下 cmets 的此功能:

Kinesis 模型提供一个相邻的父分片 ID,以防发生 父分片合并。由于 DynamoDB Streams 不支持合并,因此 总是返回 null。

我对此感到担忧,我将使用 7 个分片的示例来描述我的担忧,为简单起见,我们将它们命名为 06

0 的父级由于保留策略不再可用,1,2,3,4,5 由于 DynamoDB 表上的高流量是兄弟姐妹,它们都以 0 作为其父级,并且 6 是当前打开的分片,并且是由于 DynamoDB 表上的流量峰值下降而合并的结果。我还会假设它只有一个父级,所以它的父级随机地是 3

那么,这是否意味着如果我们使用此适配器针对具有上述状态的 DynamoDB 流启动一个 Worker,它只会开始处理分片 03 和 6??

【问题讨论】:

    标签: amazon-dynamodb amazon-kinesis amazon-dynamodb-streams amazon-kcl


    【解决方案1】:

    我了解到 DynamoDB Stream 分片从不合并。即使在表的流量减少之后,每个(并行)分片的吞吐量也会降低。我在问题中描述的情况不会发生。

    好像也是

    一个 DynamoDB Stream 分片最多可以有 1 个父分片和最多 2 个子分片。

    我从这个问题中学到的底线是:

    Kinesis 客户端库 + DynamoDB Streams Kinesis Adapter 保证所有分片都将按顺序处理,除非您在处理分片时落后,因此在处理之前对其进行修整。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-05
      • 2017-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-15
      • 1970-01-01
      相关资源
      最近更新 更多