保留期运动

Retention period kinesis

我使用 Spark-streaming+Kinesis 开发应用程序。 我在 2015 年 10 月 30 日启动了我的应用程序,它运行良好。我看见 今天(2015-11-02)我重新启动了应用程序,它开始处理2015-11-02。 为什么?保留期? 在文档中

"You can increase the retention period up to 168 hours using the IncreaseRetentionPeriod operation"

我尝试按照文档中的描述使用命令增加

aws kinesis increase-stream-retention-period --stream-name XXXX --retention-period-hours 160

但是

用法:aws [选项] [参数] aws:错误:参数操作:无效的选择,有效的选择是: 添加标签到流 |创建流 删除流 |描述流 获取记录 |获取分片迭代器 列表流 |列出流的标签 合并分片 |放记录 放记录 |从流中删除标签 分片 |等待 帮助

我应该怎么做才能增加保留期???

WBR,光荣

您需要更新您正在使用的 aws cli。您可能使用的是不知道新命令选项的旧版本。

@az3 的回答也值得研究,以了解您为什么选择目前的处理方式。 (他解释了这种行为,我倾向于同意 :))

  • 我认为这与保留期无关。如果您使用的是 Kinesis Client Library (KCL),您可能会将最后工作的位置持久保存到 DynamoDB。因此,如果您停止并启动您的应用程序,它将继续从最后一个已知位置开始工作。

http://docs.aws.amazon.com/kinesis/latest/dev/kinesis-record-processor-ddb.html

  • 如果要读取分片中所有之前的数据,则应将 DynamoDB 中的检查点更新为 "TRIM_HORIZON"。

http://docs.aws.amazon.com/kinesis/latest/dev/kinesis-record-processor-additional-considerations.html

  • 当应用程序看到 TRIM_HORIZON 时,它将读取 Kinesis Stream 中的第一个数据(大约 23 小时 55 分钟前)。您可以在此处找到有关保留的更多信息;

http://docs.aws.amazon.com/kinesis/latest/dev/kinesis-extended-retention.html