我正在使用Datastax for Cassandra并且在CFS之上,Iam尝试使用Hive.Cassandra在列级别加载和更新TTL(生存时间)加载数据。我的问题是如何才能实现相同的TTL当我们使用Hive将数据加载到Column Family中时。有没有办法为ColumnFamily指定TTL或从hive加载?
示例(参考datastax网站): cqlsh:demodb的> INSERT INTO用户 (用户名密码) VALUES('cbrown','ch @ ngem4a')使用TTL 86400;
cqlsh:demodb的>更新用户使用TTL 432000 SET'密码'='ch @ ngem4a' WHERE user_name ='cbrown';
注意:要求是在一段时间后清除数据.Cassandra可以选择使用TTL执行此操作,但是我尝试使用Hive加载数据。因此,要查找在列族列级别指定TTL的选项或通过配置单元加载
答案 0 :(得分:1)
使用Hive从CF读取数据会排除过期列。将数据写回列族无法在HIVE中指定TTL,我们将很快添加此功能。
但你可以在Pig中通过在“cassandra.output.cql”中设置TTL在output_query或Hadoop中指定TTL来实现它