Почему AWS RDS по-прежнему показывает пакетный баланс 0 при размере диска 2 ТБ gp2?

Согласно тому, что я знаю о gp2 из документов AWS (ссылка), диски gp2 быстро разрываются, когда их размер меньше 1000 ГБ. После того, как диск станет больше 1000 ГБ, базовая производительность превысит 3000 IOPS, поэтому термин «взрыв» не может применяться.

Однако, как я вижу в моей текущей базе данных prod с хранилищем gp2 объемом 2 ТБ, пакетный баланс все еще каким-то образом применим ко мне, и хранилище работает значительно быстрее, а пакетный баланс больше 0.

Судя по всему, есть изменения в термине AWS Burst. Кто-нибудь знает современные термины, чтобы я мог соответствующим образом спланировать свое оборудование?

Если вы проверяете непосредственно в CloudWatch Metrics, а не в консоли RDS, отображается ли то же самое?

Marcin 14.12.2020 13:14

Сама метрика @Marcin не имеет большого значения. Важно то, что ясно видно, что скорость ввода-вывода в базе данных ухудшается, когда баланс становится равным 0. Это означает, что баланс действительно имеет значение.

snowindy 14.12.2020 13:27

Какой экземпляр БД вы используете?

Marcin 14.12.2020 13:46

@Marcin db.m5.2xlarge

snowindy 14.12.2020 13:55
db.m5 - экземпляр на основе Nitro. Метрика взрыва вообще не должна сообщаться для вас. Это сбивает с толку. Я думаю, что если вы не получите удовлетворительного ответа на SO, возможно, вам придется обратиться в службу поддержки AWS, чтобы разобраться в этом.
Marcin 14.12.2020 14:06

@Marcin Дело в том, что поддержка AWS составляет 7% от ежемесячного счета, а это означает, что мне придется потратить около 2 тысяч долларов США, чтобы спросить о том, что на самом деле должно быть описано в их документах. Поэтому я дал шанс ТАК сначала :)

snowindy 14.12.2020 14:13
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
11
6
5 282
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Я столкнулся с этой проблемой при работе с EFS: предоставление достаточной емкости (хранилище и пропускная способность) — это одно, а обеспечение максимальной емкости — совсем другое. В этом случае кажется, что вы столкнулись с той же проблемой. Превышение вашей взрывной мощности. Если у вас есть приложение с большим количеством операций чтения, рассмотрите возможность использования реплики или схемы кэширования. В качестве альтернативы вы можете увеличить свой диск с 2 ТБ до 4 ТБ или изучить подготовленное решение iops.

Для gp2 более 1 ТБ пропускная способность не имеет значения. Как вы можете «превзойти» его? У вас есть дополнительная информация или ссылки на это?

Marcin 15.12.2020 00:36

Максимальное количество операций ввода-вывода в секунду для GP2 составляет 16000. Если вы превысите это значение, вы столкнетесь с ограничениями пропускной способности. io1 облегчит это. aws.amazon.com/blogs/database/…

Michael Quale 15.12.2020 15:36

@MichaelQuale Согласно вашей ссылке и моей ссылке в вопросе «Функция пакетной передачи ограничена объемами, равными или меньшими, чем 1 ТиБ хранилища». Однако мое хранилище составляет 2 ТБ, и я все еще вижу некоторое влияние взрыва. Я не должен ощущать этого воздействия, согласно статье. Поэтому я задаю свой вопрос, чтобы прояснить это.

snowindy 16.12.2020 20:25

На снимке экрана я вижу, что AWS уже обеспечивает производительность, которую они обещали для вашего экземпляра (6K IOPS, постоянно).

Таким образом, остается вопрос: почему до сих пор существует взрывная производительность, которая позволяет увеличить производительность до > 11 000 операций ввода-вывода в секунду (с 7:00 до 9:00) в течение ограниченного времени.

Я предполагаю, что ограничение на пакетную передачу 3K IOPS предназначено только для экземпляров с объемом менее 1 ТБ. Например, для большего размера вы можете увеличить «Базовую производительность + 3 000 операций ввода-вывода в секунду» (около 9 000 в вашем случае), пока не закончится кредит ввода-вывода. Я не видел ни одного документа по этому поводу, хотя

Верно. Конечно, хорошо, что есть какой-то "неожиданный всплеск", но то, что он недокументирован и противоречит текущей документации - не круто, ведь правила должны быть понятны всем.

snowindy 21.12.2020 09:28
Ответ принят как подходящий

Я сделал запрос в поддержку AWS по этому поводу. Это была длинная ветка, в которой я узнал несколько важных фактов. Я сохранил свою беседу по этой ссылке, чтобы она не потерялась для сообщества.

Ответ: баланс burts может по-прежнему применяться для хранилища объемом более 1 ТБ, поскольку может быть несколько томов для обслуживания хранилища. Если объем меньше 1 ТБ, для этого тома используется пакетный баланс.

Другие факты, которые были неясны для меня:

  • база данных может выглядеть так, как будто она ограничена ограничениями IOPS (из-за внутренней операции погружения IOPS), но на самом деле она может быть ограничена пропускной способностью сети.
  • пропускная способность сети гарантируется EBS-Optimized. В документах RDS вы не найдете явных таблиц о том, как инстансы связаны с пропускной способностью, но они есть в документах EBS
  • Для некоторых экземпляров на основе нитрометана EBS-Optimized позволяет работать с максимальной производительностью для класса в течение 30 минут каждые 24 часа. Для небольших экземпляров это означает, что в течение 30 минут производительность базы данных может резко возрасти по сравнению с плохим базовым уровнем.

Спасибо, что проследили и обновили это. Когда я впервые прочитал это, я сравнил взрывной кредит с некоторыми предыдущими боевыми шрамами AWS.

Michael Quale 28.01.2021 05:17

Другие вопросы по теме