[
https://issues.apache.org/jira/browse/CASSANDRA-5863?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14192869#comment-14192869
]
Jonathan Ellis commented on CASSANDRA-5863:
-------------------------------------------
bq. The Tricky part is tracking the "hotness" of these chunks. It needs to
track the number of times the chunk was decompressed in the last X seconds.
Backing up a bit -- why not just take a LRU approach? When we uncompress a
chunk, we cache it. Add metrics so users can monitor cache churn and disable
if it's not useful. (But since our chunks are fairly large, and thus
decompressing is relatively expensive, I think we could tolerate relatively
high churn.)
> In process (uncompressed) page cache
> ------------------------------------
>
> Key: CASSANDRA-5863
> URL: https://issues.apache.org/jira/browse/CASSANDRA-5863
> Project: Cassandra
> Issue Type: New Feature
> Components: Core
> Reporter: T Jake Luciani
> Labels: performance
> Fix For: 3.0
>
>
> Currently, for every read, the CRAR reads each compressed chunk into a
> byte[], sends it to ICompressor, gets back another byte[] and verifies a
> checksum.
> This process is where the majority of time is spent in a read request.
> Before compression, we would have zero-copy of data and could respond
> directly from the page-cache.
> It would be useful to have some kind of Chunk cache that could speed up this
> process for hot data, possibly off heap.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)