AWS SAA 题库

点击卡片任意位置翻面查看正确答案与解析,也可以用键盘 切换题目。

第 818 / 1018 题单选题

一家公司的应用正在从多个数据源接收数据。数据的大小不同,并且预计随着时间的推移而增加。当前数据的最大大小为700 KB。随着添加更多的数据源,数据量和数据大小不断增长。 公司决定将Amazon DynamoDB作为应用程序的主要数据库。解决方案架构师需要确定一个处理大数据大小的解决方案。 哪种解决方案将以最高的运维效率满足这些需求?

  • A. 创建一个AWS Lambda函数来过滤超过DynamoDB项大小限制的数据。将更大的数据存储在Amazon DocumentDB(与MongoDB兼容)数据库中。
  • B. 将大数据存储为Amazon S3存储桶中的对象。在DynamoDB表中,创建一个具有指向数据的S3 URL的属性的项。
  • C. 将所有传入的大数据拆分为具有相同分区键的一组项。使用BatchWriteItem API操作将数据写入DynamoDB表中的单个操作。
  • D. 创建一个AWS Lambda函数,当大对象写入DynamoDB表时使用gzip压缩来压缩它们。
第 818 / 1018 题正确答案 B
  • B. 将大数据存储为Amazon S3存储桶中的对象。在DynamoDB表中,创建一个具有指向数据的S3 URL的属性的项。

解析

选项B提供了最佳的解决方案。由于DynamoDB有1 MB的项大小限制,无法直接存储大于该限制的数据。因此,将大数据存储为Amazon S3存储桶中的对象,并在DynamoDB表中创建一个属性指向该数据的S3 URL,可以以最高的运维效率满足需求。选项A中提到将更大的数据存储在Amazon DocumentDB中,但这增加了架构的复杂性。选项C中提到将大数据拆分为具有相同分区键的一组项,并使用BatchWriteItem API操作将数据写入DynamoDB表,但这种方式可能会增加复杂性,并且无法直接访问大数据。选项D中提到使用gzip压缩大对象,但这种方式只是减少了数据的存储空间,而没有解决DynamoDB项大小限制的问题。

AI 解析

Amazon DynamoDB对单个项的大小限制为400 KB。当应用需要处理超过此限制的大数据时,AWS最佳实践推荐将数据存储在Amazon S3,并在DynamoDB项中保存指向S3对象的引用链接。《Amazon DynamoDB开发人员指南》指出,针对大型对象或二进制数据,使用S3存储并通过DynamoDB维护元数据是标准解决方案。选项B通过S3存储实际数据并维护索引关系,避免了DynamoDB单条数据容量限制问题。选项A引入额外数据库系统会增加架构复杂性;选项C拆分数据可能导致事务一致性问题;选项D采用的压缩方法无法解决超出400 KB上限的场景。