【问题标题】:Set TTL (Time to live) on CFS files在 CFS 文件上设置 TTL(生存时间)
【发布时间】:2019-10-21 11:28:27
【问题描述】:

我将文件存储在 cassandra 文件系统 (CFS) 中,但文件数量会随着时间的推移而增加。需要自动删除旧文件。有没有办法在文件级别或键空间级别在 cfs 上设置 TTL?

【问题讨论】:

    标签: apache-spark cassandra cassandra-3.0


    【解决方案1】:

    您只能定义一个 TTL 子句only per column or table level。在设置它时,您需要考虑的一些事项是:

    • 一旦 TTLgc_grace_seconds 过去,空间可能会被回收; gc_grace_seconds 的默认值为 10 天。
    • 释放空间的进程是压缩,根据为表定义的压缩策略,它具有不同的行为。您可以使用命令 nodetool compact 强制压缩;有关其执行的更多信息,请访问here
    • 一旦您更改了表,使用 default_time_to_live 子句,TTL 将在指定后应用于新数据;对于现有数据,您需要重新插入所有数据;可选地,您可以为 ttl 定义不同的值,但您需要考虑到由于 Cassandra 具有仅附加方法,因此您将暂时增加磁盘使用量;因此,在应用 TTL 之前,如果磁盘空间已经受到限制,您可能需要评估是否扩大集群。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-24
      相关资源
      最近更新 更多