Mount the S3 pricing file with Mountpoint for Amazon S3 to eliminate stale pricing
Short answer
C Mount the S3 bucket with Mountpoint for Amazon S3 on the AMI and point the ticketing service at the mount path.
Question
Key Takeaways
Mountpoint for Amazon S3 presents the bucket as a local file system backed by S3's strong consistency, so the ticketing service always reads the current object from S3 without any local copy, no download step at launch, and no refresh job.
A ticketing service on Linux EC2 instances downloads a pricing file from S3 at instance launch, so instances that have been running for a while serve outdated prices. A third party updates the file every one to fifteen minutes and the file has several thousand line items.
Common mistake: Replicating the pricing data into DynamoDB or EFS. Both require a Lambda function or the ticketing service itself to be modified to read from the new store, which is application change work, whereas Mountpoint is a mount with the file still in S3.
Expert Analysis
Why the Answer Is Correct
Mountpoint for Amazon S3 makes the S3 bucket appear as a directory on the instance, and because Amazon S3 offers strong read-after-write consistency, every read returns the current version of the pricing object. The ticketing service points at the mount path and immediately sees updates pushed by the third party every one to fifteen minutes, so stale pricing disappears without any refresh logic. Mountpoint is a mount rather than a copy, so nothing needs to be downloaded at instance launch, and there is no Lambda function, database table, or application change to maintain. It is also available for Linux, which is the stated operating system.
Why the Other Options Are Wrong
A: A DynamoDB table would hold a copy of the prices, which means updating the ticketing service to read from a key-value store instead of a file, and the per-read cost of a database lookup for thousands of line items on every pricing check is higher than S3 reads. B: An EFS file share would also work as a shared file system, but it requires a Lambda function to refresh the content on every update, adding a moving part that Mountpoint does not need. D: An EBS Multi-Attach volume is attached to running instances, so a newly launched instance does not automatically see the pricing file that another instance wrote, and updating it on launch is exactly the mechanism that already causes the staleness.
Community Comment Notes
The community voted 61 to 39 for C over A. The arguments for C cited S3 strong consistency and the fact that Mountpoint requires no code change to the file read path, while a commenter pointing to the documentation also noted the Linux-only availability matches the stated fleet. The dissenting votes for A argued on cost, but they require modifying the ticketing service to query a database.
Official Reference
https://docs.aws.amazon.com/AmazonS3/latest/userguide/mountpoint.html
This link opens the official vendor documentation in a new tab.
Community Votes
61% of anonymous learners picked answer C. Votes are pick records left by other test-takers — they are not the verified answer.
Discussion 13 contributions
Compiled from public community threads and reader submissions, lightly edited for clarity. Handles and vote tallies are shown as recorded, and comments reflect the views of individual contributors.
From public community threads 13
-
awsaz 👍 7 Answered CMountpoint for Amazon S3: This solution allows the EC2 instances to directly access the S3 bucket as if it were a local file system. This ensures that the instances always access the latest version of the pricing file without having to download it each time. Cost-Effective: This approach avoids the need to constantly download and store the file on each instance, which can save on both S3 GET requests and local storage costs. Simplicity: By mounting the S3 bucket, you ensure that all instances are using the most current file without additional logic or processes to manage file updates.
-
mifune 👍 5 Answered ADynamoDB in this scenario looks cheaper than EFS. Answer A
-
DS2023 👍 4 Answered AOption A is the correct answer.
-
0b43291 👍 2 Answered CBy leveraging the strong consistency guarantees, cost-effectiveness, and simplicity of Mountpoint for Amazon S3, Option C provides the most appropriate and cost-effective solution for ensuring the EC2 instances in the Auto Scaling group always have access to the latest pricing information, resolving the outdated pricing data problem. The other options have drawbacks or are less cost-effective: Option A: Using DynamoDB may not be cost-effective for storing and accessing a large, frequently updated pricing file with several thousand line items. Option B: While Amazon EFS is viable, it introduces additional infrastructure and potential costs compared to directly accessing the pricing file from the S3 bucket using Mountpoint for Amazon S3. Option D: Using an Amazon EBS volume with Multi-Attach would require updating the pricing file on the volume whenever a new instance launches, which is less efficient and more prone to errors than directly accessing the file from the S3 bucket.
-
JoeTromundo 👍 2 Answered CMountpoint for Amazon S3 allows EC2 instances to treat an S3 bucket like a file system. This solution ensures that the EC2 instances always have access to the latest version of the pricing file, as the file is directly accessed from S3. You avoid downloading the file every time and reduce the risk of using outdated pricing data. S3 Consistency: Amazon S3 provides strong read-after-write consistency, so any update to the pricing file in S3 will be immediately visible to all EC2 instances accessing the file via the mount point. Cost Efficiency: By using Mountpoint for Amazon S3, you leverage S3's cost-effective storage and avoid additional infrastructure like DynamoDB or Elastic File System (EFS). This solution does not require copying data to another storage system, minimizing overhead.
Show 8 more comments
-
liuliangzhou 👍 2 Answered AA. DynamoDB provides fast data access and query capabilities, suitable for frequently read but infrequently updated data. B. EFS may not be suitable for frequent small file updates, and its cost may be higher than using DynamoDB. C. This solution can directly read pricing files from S3, but it does not solve the problem of outdated pricing data being used by old instances even after the pricing files are updated. D. EBS is not good at Multi Attach to multiple EC2 instances, and it can increase complexity and cost.
-
nimbus_00 👍 2 Answered C"Mountpoint for Amazon S3 is available only for Linux operating systems. You can use Mountpoint to access S3 objects in all storage classes except S3 Glacier Flexible Retrieval, S3 Glacier Deep Archive, S3 Intelligent-Tiering Archive Access Tier, and S3 Intelligent-Tiering Deep Archive Access Tier." https://docs.aws.amazon.com/AmazonS3/latest/userguide/mountpoint.html
-
wbedair 👍 2 Answered Cthe question is asking about cost effectiveness so why choose A to add additional service like Dynamodb . I will go for option C
-
mns0173 👍 2There is no need to move away from S3
-
eesa 👍 1 Answered COption C (Mountpoint for S3) (best solution): Mountpoint for Amazon S3 allows the EC2 instances to directly access the latest version of the pricing file stored in S3 without repeatedly downloading it. Each EC2 instance will always read the most up-to-date file directly from S3, eliminating the risk of outdated information. This solution is cost-effective as it involves minimal overhead, does not incur unnecessary data transfer or operational complexity, and requires minimal application modification.
-
chris_spencer 👍 1none of them makes sense... if an S3 object is uploaded it is strongly consist since end 2020, eventual consistency is a matter of the past. So it doesn't matter if the lambda function get the trigger after upload and transfer the information to dynamodb (A) or EFS(b), or the ec2 instance get the object via blocklevel file access (C) or EBS (D). The consistency is being provided by the source system which is S3, so nothing helps here. From the cost perspective is C the cheapest
-
Danm86 👍 1Option C is most cost effective, but the question has ambiguity where it tells customer could be wrongly charged, more details should be provided on the same to understand if wrong charging is critical or not. If wrong charging is critical and needs low latency and more reliability on the queried data then its option A
-
pk0619 👍 1 Answered Cmost cost effective
Reader comments & corrections
No reader corrections yet — spotted an error or have a note? Share it below.
Related Analysis
Practice All SAP-C02 Questions
Access 85 questions with complete answers and detailed explanations.
View Full SAP-C02 Practice Test →