Может ли Cassandra обнаруживать поврежденные данные, которые редко используются?
Есть ли что-то вроде DataBlockScanner HDFS для Cassandra, т.е. автоматический механизм проверки поврежденных данных, которые не читаются часто?
2 ответа
Нет.
Cassandra не делает этого автоматически - она может гарантировать согласованность при чтении или записи через ConsistencyLevel для каждого запроса и может выполнять активное (AntiEntropy) исправление. Но активный ремонт должен быть запланирован (человеком или cron или сторонним сценарием, таким как http://cassandra-reaper.io/), и, чтобы быть педантичным, ремонт только исправляет проблему согласованности, есть некоторая работа, которая должна быть сделана, чтобы должным образом решить / поддержка исправления поврежденных реплик (например, восстановление МОЖЕТ отправить небольшую переворот с одного узла на все остальные)
Большие данные как мусорное ведро. Здорово.
Лучше всего использовать nodetool verify
сравнить хеш sstable с содержимым. Особенно с nodetool verify -e
ходить по отдельным клеткам.
https://docs.datastax.com/en/cassandra/3.0/cassandra/tools/toolsVerify.html