You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Jonathan Gray (JIRA)" <ji...@apache.org> on 2009/02/09 19:12:59 UTC

[jira] Updated: (HBASE-1186) Memory-aware Maps with LRU eviction for Cell Cache

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

Jonathan Gray updated HBASE-1186:
---------------------------------

    Assignee: Jonathan Gray  (was: Erik Holstad)
     Summary: Memory-aware Maps with LRU eviction for Cell Cache  (was: Memory-aware Maps with LRU eviction)

There's a discussion that needs to happen around how we'll implement block caching.  I'm going to create a new issue for that, this one will be about the LruHashMap used for the cell cache.

> Memory-aware Maps with LRU eviction for Cell Cache
> --------------------------------------------------
>
>                 Key: HBASE-1186
>                 URL: https://issues.apache.org/jira/browse/HBASE-1186
>             Project: Hadoop HBase
>          Issue Type: New Feature
>            Reporter: Jonathan Gray
>            Assignee: Jonathan Gray
>            Priority: Critical
>             Fix For: 0.20.0
>
>         Attachments: HeapSize.java, LruHashMap.java, LruHashMap.java
>
>
> Caching is key for 0.20.  We need a set of memory-aware data structures to manage our caches.
> I propose two initial classes:  LruHashMap and LruBlockMap
> *LruHashMap* is currently being used over in HBASE-80 for the Cell cache.  Erik Holstad has done extensive testing and benchmarking and will post results over in this issue.
> - Memory-aware
> - Fixed size
> - LRU eviction
> *LruBlockMap* can be used for the block caching of the new file format in HBASE-61.  It should try to use all available memory, but must contend with Memcaches so is resizable to deal with heap pressure.  Adding high priority blocks (evicted last) gives us in-memory functionality as described in bigtable paper.
> - Memory-aware
> - Fully resizable
> - LRU eviction (with some additions)
> - High priority blocks
> - _Optional: Scan resistant algorithm_
> Part of this issue is also solving how we will determine the size of cached objects.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.