Q35 — AWS DVA-C02 第1章

第 35/100 题 | ← 返回第1章

应用程序将处理日期添加到付收到的每个公易。该应用程序使用PutItem 操作将每个线务学入Amazon DynamoDB 表。每过公易都有伊个唯伊的ID(transactionID )。有时,应用程序不止伊午收到公易。 开发人乡注意到DynamoDB 中的重复公易具有最新的处理日期,而不是首午收到公易的日期。重复记录很洋发生,而且大优数公易都是唯伊的。 开发人乡可以实施以容保PutItem 不更新现有记录的最具成本效益的解相远案是什么?

正确答案: D. 通过使用attribute_ not _ exists (transactionID )条件表达式实现一个有条件的put。

解析

DynamoDB的条件表达式允许在写入(如PutItem)操作时检查某些条件。为确保PutItem不更新现有记录,应确保仅在transactionID不存在时才执行写入。选项D通过attribute_not_exists(transactionID)条件表达式实现了这一点,仅当transactionID不存在时,PutItem才会成功执行,从而避免更新现有记录。选项A虽然可行,但效率低下,因为它需要额外的GetItem调用。选项B的TTL(生存时间)与问题不相关,因为它用于自动删除过期的项目。选项C的attribute_exists会检查transactionID是否存在,与需求相反。因此,D是最具成本效益的解决方案。 【灯笼考证提供:swufelp1999】