Developing an Orders Processing System | AWS Certified Developer - Associate Exam | Amazon

Storing Product Information | Implementation Steps | AWS DVA-C01 Exam

Prev Question Next Question

Question

You have to develop an Orders processing system.

The system needs to store the Product Information which contains the image for every product.

Which of the following implementation steps should be used when storing the Product related data? Choose 2 answers from the options given below.

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

Answer - A and D.

This is also mentioned in the AWS Documentation.

As mentioned above, you can also take advantage of Amazon Simple Storage Service (Amazon S3) to store large attribute values that cannot fit in a DynamoDB item.

You can store them as objects in Amazon S3 and then store the object identifier in your DynamoDB item.

You can also use the object metadata support in Amazon S3 to provide a link back to the parent item in DynamoDB.

Store the primary key value of the item as Amazon S3 metadata of the object in Amazon S3

Doing this often helps with the maintenance of the Amazon S3 objects.

Option B is incorrect since the Images should ideally be stored as an object in S3.

Option C is incorrect since the ID, and Name data should ideally be stored in a table.

For more information on best developer practices for DynamoDB, please refer to the below URL-

https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/best-practices.html

The correct answers are A and D.

A. Store the Product ID, Name, Price and the path of image stored in the S3 bucket in a DynamoDb table: This is a recommended approach. It involves creating a DynamoDB table with columns for Product ID, Name, Price, and the path of the image stored in the S3 bucket. By storing the image path in the DynamoDB table, it makes it easier to retrieve the image from the S3 bucket when needed.

B. Store the Product Image as an attribute in the same table: This is not a recommended approach. While it is possible to store images as attributes in DynamoDB, it is not recommended as it can cause issues with the size of the table and slow down queries.

C. Store the Product ID, Name and price in an S3 bucket: This is not a recommended approach. S3 is not a database, and while it is possible to store data in it, it is not designed for that purpose. It's better to use a database such as DynamoDB for storing structured data.

D. Store the Product Image in an S3 bucket: This is a recommended approach. S3 is designed for storing large objects such as images, videos, and other media files. By storing the image in an S3 bucket, it ensures that the images are easily accessible and can be easily retrieved when needed.