【问题标题】:Amazon Web Services: Vertical DB scaling magic?Amazon Web Services:垂直数据库扩展魔法?
【发布时间】:2012-05-22 15:14:07
【问题描述】:

我的团队正在考虑使用 AWS 来托管我们的 Ruby on Rails 应用程序。该应用程序完成的大部分工作将在数据库中存储大量数据(现在我们假设它将是 PostgreSQL,因为 RDBMS 非常适合我们的需求),检索它,对其进行一些分析,然后显示结果在屏幕上显示给用户。

我们担心长期的可扩展性。我不认为 CPU 在任何时候都会成为问题(取决于我们决定在哪里进行处理,在数据库中进行处理可能是一个非常糟糕的主意),但我相信数据库本身将成为瓶颈。我了解水平扩展:获取更多数据库,对数据进行分片,完成。但是,我听说有人声称 AWS(或者在这种情况下是 S3?)是如此神奇,以至于您可能不需要水平扩展,至少暂时不需要。

但我没有看到魔法。我只能说,至少在垂直方面,你能做的最好的事情就是租用具有高 IO 优先级的 60gb RAM 实例之一。不仅您最终要多付一吨(与在问题上扔一打便宜的分片数据库实例相比),而且您仍然有一个瓶颈会被整个系统敲打。根据我的经验,拥有一台单独的数据库机器根本无法很好地扩展,但您可以在没有用户或仍在进行原型设计时一开始就摆脱它。

我是否正确理解了这一点,还是有更多的东西?

【问题讨论】:

    标签: database-design amazon-web-services scalability


    【解决方案1】:

    如果您使用基本上是运行数据库服务器的 EC2 实例的 Amazon RDS,则无法实现垂直扩展。
    选择非托管解决方案意味着您设置自己的解决方案并负责不同 EC2 实例上的集群。亚马逊云只是帮助您获得尽可能多的“实例”以进行扩展,但对软件本身没有帮助。
    其他选项是选择 Amazon DynamoDB,它确实为您做垂直扩展

    【讨论】:

      猜你喜欢
      • 2011-11-25
      • 2013-09-10
      • 1970-01-01
      • 1970-01-01
      • 2019-03-16
      • 2019-05-05
      • 1970-01-01
      • 1970-01-01
      • 2015-04-24
      相关资源
      最近更新 更多