You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@bookkeeper.apache.org by GitBox <gi...@apache.org> on 2017/12/13 23:11:41 UTC

[GitHub] merlimat opened a new pull request #843: DbLedgerStorage -- ReadCache

merlimat opened a new pull request #843: DbLedgerStorage -- ReadCache
URL: https://github.com/apache/bookkeeper/pull/843
 
 
   Adds a `ReadCache` class to be used from LedgerStorage. 
   
   The read cache is used when doing read-ahead caching after reading one entry. 
   
   The idea is that entries for the same ledger as stored in order (for each flush cycle, eg: 1min). When reading 1 entry, we expect the client to read all subsequent entries. We can then skip the RocksDb `get()` to fetch the index of the entries, by just keep reading from the entryLog, and exploiting page cache and seqeuential reads. The entries are then added to this ReadCache, where they will looked when the request for next entry comes in. 
   
   This implementation is based on dividing the memory into multiple segments. Whenever the read cache is full, the oldest segment gets recycled and overwritten with new entries. 
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services