AWS Certified Solutions Architect - Professional (#201)

A Solutions Architect is designing the storage layer for a data warehousing application. The data files are large, but they have statically placed metadata at the beginning of each file that describes the size and placement of the file’s index. The data files are read in by a fleet of Amazon EC2 instances that store the index size, index location, and other category information about the data file in a database. That database is used by Amazon EMR to group files together for deeper analysis. What would be the MOST cost-effective, high availability storage solution for this workflow?

Store the data files in Amazon S3 and use Range GET for each file’s metadata, then index the relevant data.
Store the data files in Amazon EFS mounted by the EC2 fleet and EMR nodes.
Store the data files on Amazon EBS volumes and allow the EC2 fleet and EMR to mount and unmount the volumes where they are needed.
Store the content of the data files in Amazon DynamoDB tables with the metadata, index, and data as their own keys.