【问题标题】:Do Amazon High I/O instance guarantee disk persistence?Amazon High I/O 实例是否保证磁盘持久性?
【发布时间】:2013-06-15 06:47:44
【问题描述】:

EC2 中的 High I/O 实例使用 SSD。如何在这样的实例上运行数据库同时保证数据的持久性?

根据我有限的理解,我想使用弹性块存储 (EBS),这样即使机器出现故障,磁盘上的数据也不会消失。另一方面,高 I/O 实例的实例存储 SSD 是短暂的,不能用于数据库存储,因为例如,如果机器断电,则数据映像不会保留。我的理解正确吗?

【问题讨论】:

    标签: amazon-web-services amazon-ec2 amazon-ebs


    【解决方案1】:

    第 1 点)如果您的工作负载需要用于 DB 的高 IO SSD,那么您应该设置主从设置。理想情况下,建议使用 1 个主设备和 2 个从设备分布在 3 个可用区。即使单个 AZ 出现中断,备用 AZ 也可以处理负载并满足您的高可用性需求。在主从之间,您可以根据您的数据库使用同步、半或异步复制。这种解决方案成本更高。

    第 2 点)通常,如果您的数据库本质上是 OLTP,那么 Amazon EBS PIOPS + EBS 优化可以为您提供一致的 IOPS。单个 EBS 卷可以提供 4000 IOPS,您可以 RAID 0 多个卷并获得 10k+ IOPS 以提高性能。许多客户在 AWS 中采用这条路线。即使您可能使用 EBS 进行持久性,仍然建议使用主从架构以获得高可用性。我已经在博客中写了关于这个主题的详细文章,请参阅它们以获取更多信息。

    【讨论】:

      【解决方案2】:

      和其他的临时存储一样,不保证持久性。持久性由实例之间的复制处理,其中至少有一个实例写入 EBS 卷。

      【讨论】:

        【解决方案3】:

        如果您希望数据保持不变,则需要使用 EBS。无论性能如何,在临时驱动器上构建数据库似乎都是一个可疑的设计选择。

        EBS 现在提供 4K IOPS 卷,根据您的数据库要求,这很可能绰绰有余。

        我的下一个问题真的是:您想托管/运行自己的数据库吗?

        RDS 和DynamoDB 等交钥匙产品可能足以满足您的需求。使用它们比设置和管理您自己的数据库要容易得多。 RDS 现在宣传“您现在可以为每个数据库实例配置高达 3TB 和 30,000 IOPS”。这对于很多很多问题集来说已经足够了。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-12-07
          • 2014-05-20
          • 2016-12-03
          • 1970-01-01
          • 2016-09-02
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多