我们有PostgreSQL实例,每秒可处理数十个读写查询。

  • 实例类型:db.m3.2xlarge
  • 实例预配置IOPS(SSD):1000
  • 实例存储大小:100GB,数据库大小约为5-10GB。

  • 它通过读写查询为100个并发客户端提供服务。但是,当我们查看Cloudwatch Monitoring时,其IOPS范围为20-60。

    且阅读iOPS大约为0!

    这可能与100个连接和客户端一直在执行读/写查询的情况不对吗?
    Postgres配置是标准配置,我们没有关闭fsync。

    缓存是否如此有效,以至于IOPS并不是数据库大小为5GB的因素?
    还是AWS监控控制台错了?

    为此数据库实例支付1000 IOPS会额外花费300美元。
    您可以购买的最低IOPS为1000。

    我想知道如果没有IOPS就能做到吗?
  • 还是AWS监控不正确?
  • 如果我们拥有非IOPS服务器,那么我们现在拥有的20 IOPS会破坏服务器性能吗?
  • 还是5GB数据库,它最适合缓存,而IOPS并不是一个因素?
  • 最佳答案

    @CraigRinger是正确的。如果您的数据集足够小以完全容纳在内存中,则无需置备IOPS,因为插入/更新流量和日志是唯一消耗的IOPS。

    但是,如果有人找到了这个主题,那么当您用尽GP2积分时,CloudWatch就是这样。如您所见,“读写IOPS”图并不能告诉我们太多,但“读/写延迟”图显示出大量峰值。

    就上下文而言,这是用于分析的PostgreSQL只读副本的2周时间。从100GB GP2(300 Base IOPS,$ 11.50/mo)切换到100GB io1(1000 IOPS,$ 112.50/mo)发生在这些图表的约2/3方式(没有更多的延迟峰值)。较便宜的选择是仅增加GP2的存储量。预配置的IOPS定价过高,但是在这种情况下,在繁重的工作负载下可预测的行为是合理的。

    postgresql - 我们是否需要根据监视使用60 IOPS的RDS实例的Provisioned IOPS?-LMLPHP
    postgresql - 我们是否需要根据监视使用60 IOPS的RDS实例的Provisioned IOPS?-LMLPHP

    关于postgresql - 我们是否需要根据监视使用60 IOPS的RDS实例的Provisioned IOPS?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27558495/

    10-11 08:16