Установите TTL (время жизни) для файлов CFS - PullRequest
0 голосов
/ 06 июня 2019

Я храню файлы в файловой системе cassandra (CFS), но количество файлов будет расти с течением времени. Нужно удалить старые файлы автоматически. Есть ли способ установить TTL на cfs на уровне файлов или на уровне ключей?

1 Ответ

0 голосов
/ 06 июня 2019

Можно определить только условие TTL только для уровня столбца или таблицы .Когда вы устанавливаете его, некоторые вещи, которые вам необходимо учитывать:

  • Пробел может быть освобожден, когда TTL и gc_grace_seconds прошло;значение по умолчанию для gc_grace_seconds составляет 10 дней.
  • Процесс, который освободит пространство, - это сжатие , которое имеет различные поведения в зависимости от стратегии сжатия, определенной для таблицы.Вы можете принудительно выполнить сжатие с помощью команды nodetool compact ;дополнительная информация о его выполнении доступна здесь .
  • После того, как вы изменили таблицу с предложением default_time_to_live , TTL будет применен к новым данным после того, как они будут изменены.определены;для существующих данных вам нужно будет заново все их вставить;При желании вы можете определить другое значение для ttl, но вам нужно учесть, что, поскольку Cassandra использует только добавление, у вас будет временное увеличение использования диска;из-за этого перед применением TTL может потребоваться оценить масштабирование кластера, если дисковое пространство уже является ограничением.
...