2015-08-01 3 views
0

После сканирования 100 тыс. Надгробных камней cassandra выведет запрос из запроса, я попытался сделать крупное уплотнение на столе, но он не удаляет надгробные плиты его вторичного индекса. Запрос по-прежнему не может быть завершен.Как удалить надгробные плиты вторичного индекса в Кассандре

Я искал какое-то время, одно предложение - rebuild_index, но я думаю, что это приведет к сбою многих запросов при восстановлении, и у меня нет оценки того, сколько времени потребуется для восстановления индексов.

Любое предложение?

ответ

0

Измените gc_grace_seconds на 1 и запустите уплотнение на столе и увидите. Он должен немедленно очистить надгробные плиты. После этого сбросьте значение gc_grace_seconds до более низкого значения. Значение по умолчанию - 10 дней. Я думаю, вам нужно лучше моделировать свои данные.

+0

Я уже пробовал это, но он не очищает надгробные плиты по второстепенному указателю. По-прежнему блокировать запрос и жаловаться на сканирование более 100 тыс. Надгробных камней. –

1

Я не знаю, нашли ли вы свой ответ, но я надеюсь, что он может помочь кому-либо: Попробуйте перестроить вторичный индекс, я подозреваю, что обычная команда nodetool не «очищает» второй индекс должным образом.

# nodetool rebuild_index keyspace "CF" "CF".SecondayIndex 

Как Ananth сказал, вы, возможно, придется пересмотреть свою DataModel, чтобы избежать вторичного индекса будучи полон надгробий снова.

С уважением,