【问题标题】:TTL field for a set of columns in CQL3 - CassandraCQL3 中一组列的 TTL 字段 - Cassandra
【发布时间】:2013-08-13 08:02:52
【问题描述】:

考虑下面的插入语句。

    INSERT INTO NerdMovies (movie, director, main_actor, year)
                    VALUES ('Serenity', 'Joss Whedon', 'Nathan Fillion', 2005)
    USING TTL 86400;

TTL 字段是指定特定主键的整个列集的生存时间,还是仅指定一个特定列的生存时间。因为我想为一整套列指定一个 TTL,这些列应该在 TTL 过期后被删除。

【问题讨论】:

    标签: cassandra cql cql3


    【解决方案1】:

    好的,我自己想通了。它为整组列设置 TTL。因此,一旦 TTL 过期,特定主键的所有列都将被删除。

    【讨论】:

      【解决方案2】:

      @sayed-jalil 更准确地说,它将为您在 INSERT/UPDATE 语句中提到的列设置 TTL。 因此,例如,如果在时间 t 你这样做了

      插入 NerdMovies(电影、导演、主要演员、年份) 价值观('Serenity'、'Joss Whedon'、'Nathan Fillion', 2005) 使用 TTL 86400;

      如果您随后在t + 10 执行以下操作

      更新使用 TTL 86400 NerdMovies SET 年份 = 2004;

      那么moviedirectormain_actor 列的 TTL 为 t+86400year 列的 TTL 为 t+10+86400

      希望这是有道理的。

      【讨论】:

        猜你喜欢
        • 2014-07-12
        • 2016-10-15
        • 2013-01-12
        • 1970-01-01
        • 2015-10-28
        • 2013-11-03
        • 2013-08-09
        • 1970-01-01
        • 2013-06-30
        相关资源
        最近更新 更多