【问题标题】:Should I use EBS or S3 to store my database on?我应该使用 EBS 还是 S3 来存储我的数据库?
【发布时间】:2012-07-23 22:29:52
【问题描述】:

我想在 Amazon EC2 实例上托管一个网站,但出于可靠性考虑,我希望将底层数据库放在一些更永久的存储介质上。不会有任何文件上传或类似的事情,但我想确保数据库查询和更新快速进行。我应该为此使用 EBS 还是 S3?

如果您想了解更多信息,请发表评论

【问题讨论】:

    标签: database amazon-s3 amazon-web-services amazon-ebs


    【解决方案1】:

    您不能在 S3 上存储数据库。如果您打算将数据库存储在 EBS 或实例存储上的任何位置。

    【讨论】:

    • 啊。我没有意识到那不是一个选择。所以 S3 只是用来备份它之类的?
    • 没错。您可以在其上存储内容,但不能存储您可以随机访问的文件,这是数据库所必需的。
    • 好的,谢谢。所以我想更好的问题是在实例上运行数据库并将其备份到 s3 或在 ebs 上运行并将其备份到 s3 是否更明智。
    • 这可能不再是真的了。 ClouSE 似乎暗示他们有一个可以使用 S3 或 Google CS 的 MySQL 存储引擎:oblaksoft.com/documentation/faq 不知道它的工作情况如何,因为周围几乎没有其他信息
    【解决方案2】:

    只是为了构建其他非常好的答案,您可以将数据库存储为 s3 上的 .sql 文件。但是您的网站/应用程序无法查询此文件,因为 s3 没有 MySQL 程序(文件!=数据库)。

    Amazon RDS 将您的数据库备份以 .sql 文件(我假设)的形式存储到 s3 中,它们以编程方式访问并在 RDS 数据库实例发生故障时使用这些文件来恢复它。

    EBS 与 RDS 的优势在其他答案中有所说明,但要明确一点,RDS 的一个主要优势是 Amazon 会通过提供备份等方式来恢复失败的实例。

    我不确定数据库复制部分,因为这似乎是一个单独的概念,而且我读到这不是 RDS 的一个功能。更有经验的 DBA 似乎经常指出这一点是使用 RDS 的原因。有人可以澄清一下吗?

    【讨论】:

      【解决方案3】:

      就像@Femi 说的,您不能将 S3 用于 DB,但您可以使用这些实例存储/EBS/RDS 之一。更多信息如下:

      Instance store will disappear if your instance is crashed, + EBS volume got quite a good problem recently - though this is good over instance-store, I would suggest you to have a look at Amazon RDS, I had used it for one my project and it's super cool.

      Amazon RDS 有相当不错的优势:

      http://aws.amazon.com/rds/

      特点:

      • 自动备份
      • 数据库快照
      • 自动主机更换
      • 复制

      当您将 EBS 与 RDS 进行比较时,与 EBS 相比,在 RDS 上收取的额外费用很少,但它的价值。亚马逊负责一切,如果您的网站是流量驱动的,它有自动复制的解决方案。

      【讨论】:

      • RDS 是由 Amazon 管理并作为服务提供的 mysql 数据库。 EBS 是一个虚拟卷,可以像常规实例存储一样挂载和使用,具有稍高的可靠性和灵活性。
      猜你喜欢
      • 2019-05-16
      • 2011-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-25
      • 2017-01-06
      • 1970-01-01
      • 2020-05-18
      相关资源
      最近更新 更多