Как убрать надгробия из вторичного указателя в Кассандре
После сканирования 100 тыс. Надгробий Кассандра выдаст ошибку в запросе, я попытался выполнить значительное сжатие таблицы, но он не удаляет надгробия из своего вторичного индекса. Запрос по-прежнему не может быть завершен.
Некоторое время я искал, одно предложение - rebuild_index, но я думаю, что это приведет к сбою многих запросов при перестроении, и у меня нет оценки того, сколько времени потребуется для перестроения индексов.
Любое предложение?
2 ответа
Я не знаю, нашли ли вы свой ответ, но надеюсь, что он кому-нибудь поможет: попробуйте перестроить к вторичному индексу, я подозреваю, что обычная команда nodetool не "чистит" индекс второго дня должным образом.
# nodetool rebuild_index keyspace "CF" "CF".SecondayIndex
Как сказала Анант, вам, возможно, придется переосмыслить свою модель данных, чтобы избежать повторного заполнения вторичного индекса надгробиями.
С Уважением,
Измените gc_grace_seconds на 1 и запустите сжатие таблицы и посмотрите. Надо немедленно очистить надгробия. После этого сбросьте gc_grace_seconds на более низкое значение. По умолчанию 10 дней. Я думаю, вам нужно лучше смоделировать ваши данные.