Когда наше потоковое приложение kafka пытается восстановить состояние из раздела изменений, каталог нашего хранилища состояний rockdb постоянно увеличивается (10 ГБ +), пока у нас не заканчивается свободное место на диске, и фактически никогда не восстанавливается.
Как я могу размножаться.
- Я запускаю наше приложение с новой темой журнала изменений.
- Я проталкиваю несколько сотен тысяч записей. Я отмечаю, что мой государственный магазин RocksDb составляет около 100 МБ.
- Я корректно закрыл приложение и перезапустил его.
- Я вижу, что потребители восстановления регистрируют и заявляют, что они восстанавливают хранилище состояний с самого начала. Затем я наблюдаю за увеличением размера каталога моего хранилища состояний RocksDb до тех пор, пока не закончатся дисковое пространство (10 с ГБ).
Как хранилище состояний RocksDB, которое находится в сотнях мегабайт, генерирует хранилище состояний RocksDb с неизвестным числом выше 10 Гбайт при восстановлении из раздела журнала изменений? Есть ли какое-либо сжатие / сжатие, которое происходит во время нормальной работы, а не во время восстановления? Моя тема журнала изменений не настроена должным образом (мы должны создать тему заранее из-за требований безопасности; cleanup.policy настроен на сжатие)?
Отмечу, что у нас относительно небольшое количество ключей, связанных с количеством записей, которые мы передаем в наше потоковое приложение. Большинство из них являются обновлениями существующих ключей.