[
https://issues.apache.org/jira/browse/CASSANDRA-9738?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14723917#comment-14723917
]
Ariel Weisberg commented on CASSANDRA-9738:
-------------------------------------------
I agree there is overlap in. The scope of what we need to make the key cache
work is smaller, but it might be game over for the key cache and large
partitions anyways even with Robert's improvements. Constantly loading and
unloading large partitions is never going to work. We are at least reaching
parity with the old key cache.
If we could map the entire partition index then you could point this code at
the mapping and it would work. It would not be ideal because what we are doing
is a basic translation of the object graph which is an array pointing to
variable size objects. Binary searches are going to result in access to two
pages for each comparison. Possibly still better than what we have today?
I think the trick right now is figuring out what we can do for 3.0, and what
the next intermediate step is. If Robert goes and makes this work off-heap then
the key cache can maybe go off heap for 3.0. Seems like removing the key cache
and reliably operating against a memory map is unlikely for 3.0, but maybe
shortly after.
What would the timeline be for 9754? That kind of determines what intermediate
steps make sense.
> Migrate key-cache to be fully off-heap
> --------------------------------------
>
> Key: CASSANDRA-9738
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9738
> Project: Cassandra
> Issue Type: Sub-task
> Reporter: Robert Stupp
> Assignee: Robert Stupp
> Fix For: 3.0 beta 2
>
>
> Key cache still uses a concurrent map on-heap. This could go to off-heap and
> feels doable now after CASSANDRA-8099.
> Evaluation should be done in advance based on a POC to prove that pure
> off-heap counter cache buys a performance and/or gc-pressure improvement.
> In theory, elimination of on-heap management of the map should buy us some
> benefit.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)