首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >表格行为的cassandra TTL

表格行为的cassandra TTL
EN

Stack Overflow用户
提问于 2017-01-09 07:20:36
回答 3查看 3.5K关注 0票数 4

假设我在第二-1处插入一列,在第二-2插入另一列。表的默认TTL设置为10秒,例如:

问题1:data1和data2是在10秒后删除还是数据1在10秒后被删除,数据2在11秒后被删除(就像插入在第二-2中一样)?

问题2:是否有可能在表级别上设置TTL,使表中的每个条目以FIFO的方式根据TTL过期?(数据-1将在第二-10和数据-2在第二-11)到期,而不指定TTL,同时插入每个数据点?(应该能够在表级别指定吗?)

谢谢你的帮助:)

编辑

c.html的页面上写着

为表设置TTL CQL表定义支持default_time_to_live属性,该属性将特定的TTL应用于表中的每一列。在default_time_to_live TTL值被超过之后,卡桑德拉墓碑整张表。使用CREATE或ALTER将此默认TTL应用于CQL中的表

他们说“整张桌子”这让我很困惑。

EN

回答 3

Stack Overflow用户

发布于 2017-01-09 09:04:53

表级别的TTL与值级别的TTL没有任何不同:它指定了每一行的默认TTL时间。

TTL指定在多少秒之后,这些值必须被视为过时并因此被删除。参考点是INSERT/UPDATE时间戳,所以如果您在09:53:01插入/更新一行:

  • 如果TTL为10秒,它将在09:53:11到期。
  • TTL为15秒,它将在09:53:16到期。
  • 如果TTL为0秒,它就不会过期。

可以通过在查询中指定USING TTL X子句来覆盖默认的TTL时间,其中X是新的TTl值。

请注意,明智地使用TTL 而不是可能会导致墓碑问题。还请注意,TTL的用法有一些古怪之处。关于更多细节,请看this最近的答案。

票数 3
EN

Stack Overflow用户

发布于 2017-01-09 08:56:02

问题1 Ans:data1将在10后删除,data2将在11秒后删除

问题2 Ans:Cassandra使用表的ttl插入每一列,因此每一列都将在插入时间+ ttl.时过期

票数 2
EN

Stack Overflow用户

发布于 2022-08-02 23:29:08

我读过这个话题和很多其他的,但是我仍然很困惑,因为在using/useExpire.html

他们就是这么说的:

如果任何列超过TTL,则整个表将被移除。

它们是什么意思?我知道,当只有一列超过default_time_to_live时,没有任何意义去墓碑上的所有列在表中,但他们写的正是这个!

UPD:我做了几次测试。default_time_to_live意味着在列级别上只是默认的TTL。当这个TTL到期时,只有那些有过期TTL的混凝土柱被用石头掩埋。

他们在那篇文章中使用了非常奇怪的句子。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41542865

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档