2016-06-06 1 views
0

В настоящее время я нахожусь в качестве базы данных Cassandra, использующей структуру YCSB. За это время я регулярно (в пакетном режиме) вставлял и удалял данные. Я использую команду Truncate команда для удаления строк в строке. Тем не менее, я замечаю, что мой каталог данных Cassandra раздувается как эксперименты.Каталог данных Cassandra не обновляется с удалением

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

ответ

0

Когда вы используете Truncate, cassandra создаст снимки ваших данных.

Чтобы отключить его, вам необходимо установить auto_snapshot: false в файл cassandra.yaml.

Если вы используете Delete, то cassandra используйте надгробную плиту, то есть ваши данные не будут удалены немедленно. Данные будут удалены после выполнения уплотнения.

Для удаления предыдущих снимков можно использовать команду nodetool snapshot.

+0

Спасибо! Это сработало. – Jayant

+0

Данные физически удаляются при запуске уплотнения И только после GCGraceSeconds после метки надгробия (логическое удаление). Подробнее здесь https://wiki.apache.org/cassandra/DistributedDeletes – Andrew