[ 
https://issues.apache.org/jira/browse/CASSANDRA-2988?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13175896#comment-13175896
 ] 

Hudson commented on CASSANDRA-2988:
-----------------------------------

Integrated in Cassandra #1269 (See 
[https://builds.apache.org/job/Cassandra/1269/])
    Optimize key count estimation when opening sstable on startup
patch by Melvin Wang and jbellis; reviewed by slebresne for CASSANDRA-2988

jbellis : 
http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1224679
Files : 
* /cassandra/trunk/CHANGES.txt
* /cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTable.java
* /cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableReader.java
* /cassandra/trunk/src/java/org/apache/cassandra/utils/EstimatedHistogram.java

                
> Improve SSTableReader.load() when loading index files
> -----------------------------------------------------
>
>                 Key: CASSANDRA-2988
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2988
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Melvin Wang
>            Assignee: Melvin Wang
>            Priority: Minor
>             Fix For: 1.0.0, 1.1
>
>         Attachments: 2988-2-cleaned.txt, 2988-2-v2.txt, 2988-parallel-v2.txt, 
> c2988-2-v2, c2988-modified-buffer.patch, c2988-parallel-load-sstables.patch
>
>
> * when we create BufferredRandomAccessFile, we pass skipCache=true. This 
> hurts the read performance because we always process the index files 
> sequentially. Simple fix would be set it to false.
> * multiple index files of a single column family can be loaded in parallel. 
> This buys a lot when you have multiple super large index files.
> * we may also change how we buffer. By using BufferredRandomAccessFile, for 
> every read, we need bunch of checking like
>   - do we need to rebuffer?
>   - isEOF()?
>   - assertions
>   These can be simplified to some extent.  We can blindly buffer the index 
> file by chunks and process the buffer until a key lies across boundary of a 
> chunk. Then we rebuffer and start from the beginning of the partially read 
> key. Conceptually, this is same as what BRAF does but w/o the overhead in the 
> read**() methods in BRAF.

--
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