Диагностика медленной записи в Yandex Data Streams
Если вы заметили, что скорость записи в Yandex Data Streams снизилась, то причиной чаще всего является достижение лимита на запись.
Есть два основных лимита, из-за которых может замедляться запись:
- Максимальная скорость записи данных в один сегмент по умолчанию составляет 1 МБ/с.
- Максимальный объем занимаемого топиком места — зависит от лимитов базы данных YDB.
Лимит на запись в сегмент
Диагностика
- В консоли управления
выберите каталог, в котором хотите изменить настройки потока данных. - Выберите сервис Data Streams.
- Выберите поток данных, по которому вы хотите проверить использование лимитов.
- Перейдите на вкладку Мониторинг.
- Выберите вкладку Quota Usage.
- Посмотрите на первый график — Partition write quota usage max.
Если видите на графике, что использование квоты записи приближается к 100%, значит поток данных ограничивается именно этим лимитом — система намеренно замедляет запись, чтобы не превышать максимальное разрешённое значение.
Решение
Увеличить лимит на запись в одном сегменте невозможно. Если вы достигли этого предела, решением будет увеличение количества сегментов в топике. В результате данные будут записываться параллельно в несколько сегментов, и общая пропускная способность возрастет.
Чтобы увеличить количество сегментов, следуйте шагам в инструкции по изменению потока данных.
Лимит на объем занимаемого места в базе YDB
Диагностика
- В консоли управления
выберите каталог, в котором хотите изменить настройки потока данных. - Выберите сервис Data Streams.
- Выберите поток данных, по которому вы хотите проверить использование лимитов.
- Перейдите на вкладку Мониторинг.
- Выберите вкладку Quota Usage.
- Посмотрите на второй график — Storage usage.
Если на графике занятое место близко к 100%, то запросы на запись скорее всего падают с ошибками из-за недостатка места.
Решение
Чтобы освободить место и восстановить возможность записывать данные, выполните одно из следующих действий:
- Удалите ненужные данные из базы YDB вручную.
- Уменьшите срок хранения сообщений в вашем дата-стриме — это приведет к автоматическому удалению старых данных;
- Увеличьте лимит на объем хранимых данных в YDB, чтобы расширить доступное пространство для записи. Для этого необходимо:
- В консоли управления
выберите каталог, в котором хотите изменить настройки потока данных. - Выберите сервис Data Streams.
- Выберите поток данных, по базе которого вы хотите увеличить лимит на объём хранимых данных.
- Перейдите на страницу Обзор потока данных.
- В разделе Доступ кликните на ссылку в поле База данных.
- Увеличьте объем по инструкции.
- В консоли управления