cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benedict (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (CASSANDRA-5020) Time to switch back to byte[] internally?
Date Tue, 15 Apr 2014 12:42:16 GMT

     [ https://issues.apache.org/jira/browse/CASSANDRA-5020?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Benedict resolved CASSANDRA-5020.
---------------------------------

    Resolution: Not a Problem

This has most likely become "not a problem" as a result of movement towards off-heap memtables
+ cells, which bring the overheads down as low as we can go with a per-cell data structure.

> Time to switch back to byte[] internally?
> -----------------------------------------
>
>                 Key: CASSANDRA-5020
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5020
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Jonathan Ellis
>            Assignee: T Jake Luciani
>              Labels: performance
>             Fix For: 3.0
>
>
> We switched to ByteBuffer for column names and values back in 0.7, which gave us a short
term performance boost on mmap'd reads, but we gave that up when we switched to refcounted
sstables in 1.0.  (refcounting all the way up the read path would be too painful, so we copy
into an on-heap buffer when reading from an sstable, then release the reference.)
> A HeapByteBuffer wastes a lot of memory compared to a byte[] (5 more ints, a long, and
a boolean).
> The hard problem here is how to do the arena allocation we do on writes, which has been
very successful in reducing STW CMS from heap fragmentation.  ByteBuffer is a good fit there.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message