更新Cassandra数据库的表中现有行的TTL值

时间:2017-06-30 13:07:11

标签: database cassandra ttl nosql

我在Table中有很多记录,插入时TTL值设置为1年。现在我想以简单的方式将TTL值更新为5年。我知道我们可以通过UPDATE TABLE USING TTL <value> set column ='' where condition来完成,但我有百万条记录,所以我需要一个带有一个查询的解决方案。

1 个答案:

答案 0 :(得分:0)

您无法在单个查询中执行此操作。 TTL是用数据写的,所以要改变你必须重写所有内容的TTL。我建议使用Spark作业,A 1关闭脚本来读取和重写所有内容,或者编写自定义压缩工具来在压缩过程中重写所有内容(在3.x中更容易)。