我最近将我们的一个 RDS 实例的大小从 减小到r3.xlarge
了r3.large
。在正常负载下,这对于该实例来说完全没问题。但是,我们有一个运行的早间作业,它非常耗费 IO。
奇怪的是,自从减少实例的大小以来,我们发现磁盘 IO 和 CPU 利用率一直比以前低。
我预计当我们以降低的硬件规格运行相同的负载时这些指标会增加?
最明显的影响是,我们之前有一项工作大约需要 2 小时才能完成,现在却要运行 9 个小时以上。当然,我预计它会运行得更慢,但没想到会以如此快的速度运行,因为它现在似乎没有充分利用可用的资源?
有人知道为什么会出现这种行为吗?
非常感谢,
答案1
作为本页的表格明确指出,Amazon 确实会限制 EBS 子系统的绝对吞吐量以及实例可能对其执行的 IOPS 数量。他们没有列出所有可能的实例大小,但他们列出了足够多的内容,因此很明显,较小的 VM 可用的 IO 容量较少。
因此,当您将 IO 受限的作业移动到较小的 VM 时,它需要更多时间才能完成,这并不奇怪。