MemberMay 27, 2020 at 8:38 am
This is probably me again… but for the question below:
“A content management system (CMS) is hosted on a fleet of auto-scaled, On-Demand EC2 instances which use Amazon Aurora as its database. Currently, the system stores the file documents that the users uploaded in one of the attached EBS Volumes. Your manager noticed that the system performance is quite slow and he has instructed you to improve the architecture of the system.
In this scenario, what will you do to implement a scalable, high throughput POSIX-compliant file system?”
My understanding of this question is that the bottleneck was potentially with the writing of the files, assuming that with the auto-scaling and (separate) EBS volumes, we would not be trying to read them from the EBS volumes (spinning a new On-demand EC2 instance so you can access a file seems very far-fetched).
Again, this is most likely my interpretation… but I thought I’d put it out there.
AdministratorMay 27, 2020 at 12:05 pm
You have a valid point regarding the current architecture in the scenario. Storing data to the EBS volumes of the instances that are in an Auto Scaling group is not efficient. The data access is not centralized and it is difficult to determine which EBS volume has a specific file.
S3 is not POSIX-compliant and EBS is not suitable to be used as a shared and high-throughput storage file system that will be accessed by multiple EC2 instances.
The only storage type that can meet this requirement is EFS.
Log in to reply.