accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Josh Elser (JIRA)" <>
Subject [jira] [Commented] (ACCUMULO-3982) Add LRU mechanism to address memory concerns and possibly pre-fetch Tablet Locations.
Date Tue, 01 Sep 2015 20:40:46 GMT


Josh Elser commented on ACCUMULO-3982:

bq. Re-implementing caches also has a bad smell.

Valid point, but perhaps less so since we're comparing a hypothetical "solve our problems"
cache and one that only meets part of our wants and desires.

bq. We would be adding a third: Range-based look-ups. It is not ideal, since there is considerable
overlap with the hash table. But it is less error prone than writing our own cache, documenting
the implementation, and allowing it to be configurable.

Yeah, I understand where you're coming from. This is just one of those very clear-cut internal
pieces that is well separated. Actually lends itself to thoughtful design, implementation
and testing. I was hoping to encourage that :) (and hopefully not be belligerent)

bq. marco polo is experimenting on a very large deployed cluster that just removes the hourly
invalidation. I imagine this is the implementation we will use and all of this cache optimization
will be dropped. I'll report back on his experience.

Understood, empirical evidence is wonderful.

> Add LRU mechanism to address memory concerns and possibly pre-fetch Tablet Locations.
> -------------------------------------------------------------------------------------
>                 Key: ACCUMULO-3982
>                 URL:
>             Project: Accumulo
>          Issue Type: New Feature
>          Components: client, tserver
>    Affects Versions: 1.6.3, 1.7.0, 1.8.0
>            Reporter: marco polo
>            Assignee: Eric Newton
>             Fix For: 1.8.0
> On larger systems, especially those of which may split frequently, I've seen churn in
the TabletLocator caches. Could we possibly pre-fetch entries for a table so that we don't
constantly access the metadata table for tablet locations. 
> Additionally, instead of clearing the cache in the case of a miss or failure, could we
simply update those entries in the cache? If we do this we may minimize cache misses overall
and the need to scan the meta data table. If need be, we could have a threshold before clearing
the cache entirely if people see the need for that.
> It would also be helpful to add an LRU cache ( or maybe even priority based LRU cache
). In ACCUMULO-3549, we added a cache clear to TabletServer to avoid overwhelming memory.
An LRU cache might address this concern and make the clear cache call unnecessary.

This message was sent by Atlassian JIRA

View raw message