Q93 — AWS DVA-C02 第3章
第 93/100 题 | ← 返回第3章
开发人乡设计了伊个应用程序,将围入数哪作为JSON文件存储在Amazon S 3对象中。诺后,AWS Lambda 函数中的自定海悲务逻辑律醒子对象,小且Lambda 函数将数哪加载到Amazon DynamoDB 表中。最近,工作负载的流量发生了突诺且显着的变化。流向DynamoDB 表的数哪流正在甚到限制。开发人乡商要实施伊种解相远案来消除限制小将数哪更伊致地加载到DynamoDB 表中。据种解相远案可以满梦这些要求?
- A. 将Lambda 函数重构为两个函数。配置一项用于转换数据的函数和一项用于将数据加载到DynamoDB 表中的函数。在函数之间创建一个Amazon Simple Queue Service (Amazon SQS )队列,以将项目作为消息保存并调用第二个函数。
- B. 为DynamoDB 表打开自动缩放。使用Amazon CloudWatch 监控表的读取和写入容量指标并跟踪消耗的容量。
- C. 为Lambda 函数创建别名。配置供应用程序使用的预配置并发。
- D. 将Lambda 函数重构为两个函数。配置一个函数以将数据存储在DynamoDB 表中。配置第二个函数以在数据存储到DynamoDB 后处理数据并更新项目。创建DynamoDB 流以在存储数据后调用第二个函数。 ✓
正确答案: D. 将Lambda 函数重构为两个函数。配置一个函数以将数据存储在DynamoDB 表中。配置第二个函数以在数据存储到DynamoDB 后处理数据并更新项目。创建DynamoDB 流以在存储数据后调用第二个函数。
解析
Lambda函数重构为两个函数: 将Lambda函数分解为两个独立的函数有助于更好地管理和控制每个函数的职责和资源使用。第一个函数专注于将数据存储到DynamoDB表中,而第二个函数则负责在数据存储后执行进一步的处理和更新操作。 DynamoDB流: 创建DynamoDB流可以捕获表中数据的变化情况,例如新项目的插入、更新或删除。在这种情况下,它可以用来触发第二个Lambda函数,使其处理新插入的数据并执行相关的业务逻辑。这样可以确保数据更一致地加载到DynamoDB表中,并允许异步处理,从而减少对主动调用Lambda函数的依赖。 选项A的考虑: A. 将Lambda函数重构为两个函数。配置一项用于转换数据的函数和一项用于将数据加载到DynamoDB表中的函数。在函数之间创建一个Amazon SQS队列,以将项目作为消息保存并调用第二个函数。 虽然使用SQS队列可以实现解耦和异步处理,但在这种情况下,使用DynamoDB流更为直接和简单,因为它是专门为捕获表中数据变化而设计的,而且与DynamoDB表的集成更加紧密和自然。 综上所述,选项D是更合适的解决方案,因为它利用了Lambda函数分离和DynamoDB流的特性,可以有效消除现有的限制并更一致地加载数据到DynamoDB表中。