cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benedict (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-11452) Cache implementation using LIRS eviction for in-process page cache
Date Sat, 16 Apr 2016 23:28:25 GMT


Benedict commented on CASSANDRA-11452:

One more variant for you: instead of random admission, with a similar (or slightly higher)
rate, walk an LRU order iterator one step and use the next key's frequency.  After each step,
reset the iterator with a 1% chance.

Basically it's the same as random admission but without its blindness.  Could have a bound
on frequency, but could be very low, perhaps just 3 to ignore 100% no doubt legit rejections.

Not suggesting you go and do it, just wanted to note it for posterity as I think it's approximately
optimal.  Only risk is if your finger gets referenced and bumped to MRU, which could be guarded

bq. Thanks a lot for all your help on this =)

My pleasure - this is my idea of fun.

> Cache implementation using LIRS eviction for in-process page cache
> ------------------------------------------------------------------
>                 Key: CASSANDRA-11452
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Local Write-Read Paths
>            Reporter: Branimir Lambov
>            Assignee: Branimir Lambov
> Following up from CASSANDRA-5863, to make best use of caching and to avoid having to
explicitly marking compaction accesses as non-cacheable, we need a cache implementation that
uses an eviction algorithm that can better handle non-recurring accesses.

This message was sent by Atlassian JIRA

View raw message