一家公司从运行在 Amazon EC2 上的应用程序中获取大量流数据。该应用程序将数据发送到配置了默认设置的 Amazon Kinesis Data Streams。每隔一天,应用程序会消费数据并将其写入 Amazon S3 存储桶以进行 BI 处理。公司发现 S3 没有收到发送到 Kinesis Data Streams 的所有数据。解决方案架构师应该怎么做来解决这个问题?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 通过修改数据保留期来更新 Kinesis Data Streams 的默认设置。.
为什么这是答案
Kinesis Data Streams 的默认数据保留期是 24 小时。如果应用程序每隔一天才消费数据,那么在消费时,前一天的数据可能已经被删除,导致数据丢失。通过将 Kinesis Data Streams 的数据保留期延长到至少 48 小时(或更长),可以确保在应用程序消费数据时,所有数据都可用。 其他选项: 使用 Kinesis Producer Library (KPL) 主要用于提高数据生产的效率和可靠性,但不能解决数据保留期不足导致的数据丢失问题。 增加 Kinesis 分片的数量是为了处理更高的吞吐量,而不是解决数据保留期问题。如果数据保留期不足,即使有更多的分片,数据仍会在到期后丢失。 开启 S3 Versioning 是为了在 S3 存储桶中保留对象的多个版本,与 Kinesis Data Streams 的数据保留期无关,也不能解决数据未成功传输到 S3 的问题。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡