EBS is simple - block level storage which can be attached to an instance from same AZ, and can survive irrespective of instance life.
However, interesting difference is between EFS and S3, and to identify proper use cases for it.
Cost: EFS is approximately 10 times costly than S3.
Usecases:
- Whenever we have thousands of instances who needs to process file simultaneously EFS is recommended over S3.
- Also note that S3 is object based storage while EFS is file based it implies that whenever we have requirement that files are updated continuously (refreshed) we should use EFS.
- S3 is eventually consistent while EFS is strong consistent. In case you can't afford eventual consistency, you should use EFS