Экземпляр AWS RDS db.r5.large с томом GP2 объемом 100 ГБ ограничен примерно 40 операциями ввода-вывода в секунду при чтении

Экземпляр AWS RDS db.r5.large с томом GP2 объемом 100 ГБ ограничен примерно 40 операциями ввода-вывода в секунду при чтении

Мы только что восстановили снимок одной из наших баз данных Postgres в RDS. Экземпляр был db.t2.xlarge, и мы превратили его в db.r5.large. Он имеет том GP2 SSD объемом 100 ГБ.

Экземпляры r5.large должны быть «оптимизированы для EBS», однако у меня наблюдается удивительно низкий показатель IOPS при чтении, как показано на графике ниже.

График среднего значения READ IOPS, показывающий пик на 40

Это результат для SELECT COUNT(*)большой таблицы. Для того же запроса наш экземпляр t2.xlarge без проблем достигает 1250 IOPS. Похоже, что нигде больше нет узких мест: загрузка ЦП составляет примерно 0%, а памяти достаточно.

Более того, документация AWS, похоже, указывает на то, что я могу ожидать не менее 300 IOPS для тома такого размера:

GP2 разработан для обеспечения задержек в пределах единиц миллисекунд и обеспечения стабильной базовой производительности от 3 IOPS/ГБ (минимум 100 IOPS) до максимум 16 000 IOPS.

(видетьhttps://aws.amazon.com/ebs/features/)

Почему r5.large такой медленный?

решение1

Ну, похоже, IOPS вернулись к разумным значениям. Это может быть связано с кредитами IO или снимком, который все еще восстанавливается... не уверен.

Чтение IOPS вернулось к норме

решение2

IOPS зависит от размера диска: если увеличить размер диска, то и доступный IOPS увеличится.

Связанный контент