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

Jonathan Ellis updated CASSANDRA-3743:
--------------------------------------

    Attachment: 3743-trunk-trim.txt

Slight update attached to use positions.trimToSize instead of leaving an 
"orphan" arraylist around.  As mentioned above, the size difference is 
negligible.

Question: is the getKeySamples transform still necessary, or can we just cast 
the keys collection?

Or could we just make it a List of DK in the first place instead of RP?
                
> Lower memory consumption used by index sampling
> -----------------------------------------------
>
>                 Key: CASSANDRA-3743
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3743
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>    Affects Versions: 1.0.0
>            Reporter: Radim Kolar
>            Assignee: Radim Kolar
>              Labels: optimization
>             Fix For: 1.1
>
>         Attachments: 3743-trunk-trim.txt, 3743-trunk.txt, 
> cassandra-3743-codestyle.txt
>
>
> currently j.o.a.c.io.sstable.indexsummary is implemented as ArrayList of 
> KeyPosition (RowPosition key, long offset)i propose to change it to:
> RowPosition keys[]
> long offsets[]
> and use standard binary search on it. This will lower number of java objects 
> used per entry from 2 (KeyPosition + RowPosition) to 1 (RowPosition).
> For building these arrays convenient ArrayList class can be used and then 
> call to .toArray() on it.
> This is very important because index sampling uses a lot of memory on nodes 
> with billions rows

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to