AWS Kinesis从过去读过

时间:2016-06-27 21:34:13

标签: amazon-web-services amazon-kinesis

我们如何及时阅读AWS Kinesis流? 使用AWS Kinesis流,可以发送事件流,而消费者应用程序可以读取事件。 Kinesis Stream工作程序获取记录并将它们从最后一个检查点传递给 IRecordProcessor#processRecords
但是,如果我需要及时读取记录,例如从2小时前开始处理记录,我该如何配置我的kinesis worker来获取这些记录?

1 个答案:

答案 0 :(得分:2)

您可以使用有关Shard迭代器的不同设置再次(或不同的)启动您的kinesis使用者。 见GetShardIterator 通常的设置是LATEST或TRIM_HORIZON(最旧):

{
   "ShardId": "ShardId",
   "ShardIteratorType": "LATEST",
   "StreamName": "StreamName",
}

但您可以将其更改为特定时间(从过去24小时开始)

{
   "ShardId": "ShardId",
   "ShardIteratorType": "AT_TIMESTAMP",
   "StreamName": "StreamName",
   "Timestamp": 2016-06-29T19:58:46.480-00:00
}

请记住,kinesis使用者通常会将其检查点保存在dynamodb表中,因此如果您使用相同的kinesis应用程序,则需要先删除这些检查点。