检查Cassandra中收集列的当前TTL

时间:2014-03-05 14:45:26

标签: cql3 cassandra-2.0

假设我有一个具有以下模式的列族:

CREATE TABLE users (
    user_id timeuuid,
    name varchar,
    last_name varchar,
    children list,
    phone_numbers map,
    PRIMARY KEY(user_id)
);

然后我用“USING TTL 60000”在这个CF中插入一行。当我想验证这些列是否仍然有TTL设置时,我得到错误:“不能在集合上使用选择函数ttl”。

我的问题是:如何获取定义为集合的列元素的TTL?

干杯!

1 个答案:

答案 0 :(得分:0)

我重现了你的问题 - 自然得到了相同的结果。问题是集合中的(1)TTL是元素方面的(集合中每个条目一个TTL)和(2)我发现无法从地图或列表中获取条目。 当然我可以删除一个元素 - 但选择它或它的TTL是不可能的。甚至Datastax的CQL驱动程序v2也没有提供元数据。 因此,您可以更改数据结构。如果这只是'仅仅'用于测试目的,你必须相信Cassandra做得这么好。