Q52 — AWS SAA-C03 第13章

第 52/100 题 | ← 返回第13章

Q952. 一家公司使用 GPS 追踪器记录数千只海龟的迁徙模式。追踪器每 5 分钟检查一次,以查看海龟是否移动了超过 100 码(91.4 米)。如果海龟移动了,其追踪器会将新坐标发送到运行在一个 AWS 区域内多个可用区中的三个 Amazon EC2 实例上的 Web 应用程序。最近,Web 应用程序在处理意外数量的跟踪器数据时不堪重负。数据丢失,无法重播事件。解决方案架构师必须防止此问题再次发生,并且需要一种运营开销最小的解决方案。解决方案架构师应该做什么来满足这些要求?

正确答案: C. 创建 Amazon Simple Queue Service (Amazon SQS) 队列来存储传入数据。配置应用程序以轮询新消息进行处理

解析

防止数据丢失和最大限度减少运营开销的最佳解决方案是 C。创建一个 Amazon Simple Queue Service (Amazon SQS) 队列来存储传入数据。配置应用程序以轮询新消息进行处理。原因如下:解耦:SQS 充当消息队列,将数据生产者(GPS 跟踪器)与数据消费者(EC2 实例)解耦。这可以防止应用程序因突然爆发的数据而无法承受。可扩展性:SQS 是一种高度可扩展的服务,能够处理大量消息而不会降低性能。数据持久性:SQS 中的消息具有持久性,确保即使应用程序出现暂时故障,数据也不会丢失。轮询机制:应用程序可以以其能够有效处理的速率轮询 SQS 队列以获取新消息,从而防止数据丢失并确保最终处理所有数据。为什么其他选择不太合适:A. 创建 Amazon S3 存储桶来存储数据。配置应用程序以扫描存储桶中的新数据进行处理:虽然 S3 是一种很好的存储解决方案,但它并非为实时消息处理而设计。扫描新数据效率低下,并且可能会导致在高容量事件期间丢失数据。B. 创建 Amazon API Gateway 终端节点来处理传输的位置坐标。使用 AWS Lambda 函数同时处理每个项目:API Gateway 和 Lambda 非常适合处理 Web 请求,但它们可能不是处理来自 GPS 跟踪器的大量实时数据的理想解决方案。处理延迟可能是一个问题,应用程序在高峰期仍可能不堪重负。D. 创建 Amazon DynamoDB 表来存储传输的位置坐标。配置应用程序以查询表以获取要处理的新数据。使用 TTL 删除已处理的数据:DynamoDB 是一款出色的数据库,可用于处理大量数据,但它并非为实时消息队列而设计。不断查询表中的新数据可能会占用大量资源,并可能导致性能问题。总之:选项 C 为处理来自 GPS 追踪器的大量数据提供了最强大、最有效的解决方案。SQS 提供可靠、可扩展且持久的消息队列,允许应用程序按照自己的节奏处理数据,防止数据丢失并确保高效的数据处理。