Появление на кластере 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)
→ Ссылка