Появление на кластере Cassandra dropped read message и dropped mutation message
У нас есть кластер/кольцо Cassandra, состоящее из 6 улов(rhel 7.8). На двух узлах нашей СУБД возникают dropped read message и dropped mutation message
Проверку выполняем с помощью tpstats.
Пробовали сменять механизм GC на g1 с mark sweep compact Увеличивали таймауты
Кто сталкивался с подобной проблемой и как ее вылечить?
Ответы (1 шт):
Автор решения: Alex Ott
→ Ссылка
Обычно такое происходит в нескольких случаях, но тут надо смотреть более детально с логами и т.п.:
- Модель данных не очень правильная - соответственно имеется перекос, и некоторые ноды получают гораздо больше трафика чем другие
- Выполняются запросы с QUORUM/LOCAL_QUORUM, что приводит к ожиданию ответа от других нод
- для drop mutations - может быть блокировка на flush, из-за того что слишком мало flush writers
- на чтение может влиять даже read ahead size в Линуксе
я бы посоветовал сделать следующее:
- настроить постоянный мониторинг, чтобы видеть изменение поведения во времени (рекомендуемые метрики можно найти вот тут) - например можно взять вот эту тулзу
- пройтись по вот этой документации - проверить системные настройки, модель данных и т.п. Эта документация, выжимка из кучи отчетов которые были написаны архитекторами из DataStax для клиентов
- собрать диагностику со всех нод кластера, и проанализировать логи и т.п., например, с помощью sperf (разработан поддержкой DataStax)