[
https://issues.apache.org/jira/browse/CASSANDRA-6689?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13923561#comment-13923561
]
Jonathan Ellis commented on CASSANDRA-6689:
-------------------------------------------
It seems like we have a pretty broad consensus (Pavel + Sylvain + Aleksey;
Marcus?) that we should break this up more. How about something like this?
# Trading some performance for much bigger memtables is useful, so introduce
off-heap memtables as an option, default to off. No GC, just free after flush.
One native Buffer each for name and value. Copy onto heap when reading.
# Add NativeCell a la 6694 to reduce at-rest on-heap overhead. Still copying
into an on-heap Cell for reads. Still no GC.
# Add the simplest possible GC to avoid copying into on-heap Cells. If we
still have to flush for overwrite-heavy workloads that's okay.
# Full GC that doesn't need to flush unless we really have used up our memory
in live Cells.
# Get rid of on-heap memtables.
I'm waving my hands a bit b/c I'm not sure what 3 looks like but I think/hope
we can probably come up with something simpler than what we have today as an
intermediate step. And maybe 5 comes after 3. But I think 1 and 2 make sense
for 2.1b2 with the others for 3.0.
> Partially Off Heap Memtables
> ----------------------------
>
> Key: CASSANDRA-6689
> URL: https://issues.apache.org/jira/browse/CASSANDRA-6689
> Project: Cassandra
> Issue Type: New Feature
> Components: Core
> Reporter: Benedict
> Assignee: Benedict
> Fix For: 2.1 beta2
>
> Attachments: CASSANDRA-6689-small-changes.patch
>
>
> Move the contents of ByteBuffers off-heap for records written to a memtable.
> (See comments for details)
--
This message was sent by Atlassian JIRA
(v6.2#6252)