[ 
https://issues.apache.org/jira/browse/CASSANDRA-13561?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16077291#comment-16077291
 ] 

Andrew Whang commented on CASSANDRA-13561:
------------------------------------------

Correct me if I'm wrong, but the limitations I see with CASSANDRA-13418 are:
1. It's tied to a compaction strategy, and currently only supported in TWCS.
2. It helps cleanup sstables, but only when all items in the sstable have 
expired. 

The approach I'm proposing would support dropping individual (expired) cells 
within the sstable, without having to wait for all other items  to expire.

> Purge TTL on expiration
> -----------------------
>
>                 Key: CASSANDRA-13561
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13561
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Andrew Whang
>            Assignee: Andrew Whang
>            Priority: Minor
>             Fix For: 4.0
>
>
> Tables with mostly TTL columns tend to suffer from high droppable tombstone 
> ratio, which results in higher read latency, cpu utilization, and disk usage. 
> Expired TTL data become tombstones, and the nature of purging tombstones 
> during compaction (due to checking for overlapping SSTables) make them 
> susceptible to surviving much longer than expected. A table option to purge 
> TTL on expiration would address this issue, by preventing them from becoming 
> tombstones. A boolean purge_ttl_on_expiration table setting would allow users 
> to easily turn the feature on or off. 
> Being more aggressive with gc_grace could also address the problem of long 
> lasting tombstones, but that would affect tombstones from deletes as well. 
> Even if a purged [expired] cell is revived via repair from a node that hasn't 
> yet compacted away the cell, it would be revived as an expiring cell with the 
> same localDeletionTime, so reads should properly handle them. As well, it 
> would be purged in the next compaction. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to