2017-08-08 34 views
1

在AWS的Kinesis流,这是什么this limit恰恰意味着:GetShardIterator每个开放分片每个帐户每秒5笔交易的限额是什么意思?

GetShardIterator每秒每开碎片5个交易每个账户的限制。

特别是,什么是“开放碎片”?具有尚未过期的分片迭代器的分片?这是否鼓励使用开放式迭代器,并且不鼓励同时打开同一个碎片的太多迭代器?

或者这是否意味着最多可以将5个GetRecords事务发送到每秒相同的分片迭代器?

回答

1
  1. 分片可以解释为一个虚拟队列,它将数据保存在蒸汽中。流中可能有多个分片,当1条记录被推送到流(通过PutRecord API调用)时,它将被放置在基于该记录的分区键的分片上。

  2. 打开的分片是可以接受新记录的分片。如果合并2个碎片,则它们将关闭。同样,当你分裂一个分片时,它就会关闭。合并/拆分的示例说明如下:How to decide total number of partition keys in AWS kinesis stream?

  3. 碎片迭代器有点不同,它是消费者应用程序中碎片的轮询速率。大多数情况下,应用程序不会打扰分片迭代器的工作方式(KCL:amazon-kinesis-client将在内部处理它)。 “limit of 5 transactions per second per account per open shard”表示轮询到分片的间隔是有限的,这在这里解释:Kinesis max shard reads/sec and multiple consumers

相关问题