Kinesis 分片迭代器解释
Kinesis shard iterator explanation
我正在尝试从 Kinesis 碎片获取记录。我循环获取分片迭代器,然后获取迭代器中的记录。我似乎得到了无穷无尽的迭代器,none 包含任何记录。
我的问题涉及迭代器的生命周期。鉴于 Kinesis 仅将数据保存 24 小时,而迭代器应该有 5 分钟的生命周期,我不应该在任何时间点只看到最多 288 个迭代器吗?
没有固定数量的分片迭代器,因为分片迭代器只是独特的位置 在给定的 碎片 中,给定的 记录 .
分片迭代器只是分片中某点给定记录的序列号。
根据文档here:
A sequence number is the identifier associated with every record ingested in the stream, and is assigned when a record is put into the stream. Each stream has one or more shards
A shard iterator specifies the shard position from which to start reading data records sequentially.
所以从上面我相信分片迭代器实际上是一个基于时间戳的任意 ID。
The position is specified using the sequence number of a data record in a shard.
所以迭代器的数量实际上与给定分片中的记录数量更密切相关。
我正在尝试从 Kinesis 碎片获取记录。我循环获取分片迭代器,然后获取迭代器中的记录。我似乎得到了无穷无尽的迭代器,none 包含任何记录。
我的问题涉及迭代器的生命周期。鉴于 Kinesis 仅将数据保存 24 小时,而迭代器应该有 5 分钟的生命周期,我不应该在任何时间点只看到最多 288 个迭代器吗?
没有固定数量的分片迭代器,因为分片迭代器只是独特的位置 在给定的 碎片 中,给定的 记录 .
分片迭代器只是分片中某点给定记录的序列号。
根据文档here:
A sequence number is the identifier associated with every record ingested in the stream, and is assigned when a record is put into the stream. Each stream has one or more shards
A shard iterator specifies the shard position from which to start reading data records sequentially.
所以从上面我相信分片迭代器实际上是一个基于时间戳的任意 ID。
The position is specified using the sequence number of a data record in a shard.
所以迭代器的数量实际上与给定分片中的记录数量更密切相关。