AWS EFS、EBS和S3之间有什么区别?它们应该在什么情况下使用?

401

根据这个问题的标题,AWS EFS、EBS和S3之间的实际区别是什么?

我对每个的理解:

  • S3是一个可以在任何地方访问的存储设施
  • EBS是您可以挂载到EC2上的设备
  • EFS是您可以挂载到EC2上的文件系统

那么为什么要使用EBS而不是EFS?它们似乎具有相同的用例,但只存在一些语义差异?尽管EFS在各个可用区之间进行了复制,而EBS只是一个挂载的设备。我想我的EBS的了解不够,因此无法区分。

为什么选择S3而不是EFS?它们都存储文件,可以扩展并且可以复制。我想使用S3时必须使用SDK,而使用EFS作为文件系统时,您可以使用所选编程语言的标准I/O方法来创建文件。但这是唯一的真正区别吗?


6
EFS类似于NFS。EBS本质上是一种SAN。S3有点像WebDav。Glacier很可能是蓝光DVD。 - Neil McGuigan
13个回答

0

Amazon EBS提供块级存储 - 用于在其上创建文件系统并存储文件。 Amazon EFS - 它是类似NAS / SAN的共享存储系统。您需要将其挂载到Unix服务器并使用它。 Amazon S3 - 它是基于对象的存储,其中每个项目都带有http URL。

其中一个区别是 - EBS一次只能连接到1个实例,而EFS可以连接到多个实例,这就是为什么是共享存储。 S2纯对象存储无法挂载。


0

这个问题已经被其他人回答得很好了,我只想强调在决定使用 AWS 中的任何服务时,需要理解每个服务的用例,并根据 Well-Architected Framework 看到该服务提供的解决方案,例如是否需要高可用性、容错性和成本优化。这将有助于决定使用哪种类型的服务。


0

EFS和S3有相同的目的,您可以存储任何类型的对象或文件。

但对我来说,唯一的区别是EFS允许您在VM(EC2)云中拥有传统的文件系统,并具有更多的灵活性,例如您可以连接到多个实例。

另一方面,S3是一个独立的灵活和弹性服务器,用于存储您的对象。它可用于静态文件、图像、视频甚至托管静态应用程序(js)。

EBS显然是用于块存储,您可以安装操作系统或与操作系统相关的任何内容。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接