On Aug 10, 2013, at 6:15 PM, "Alan M. Carroll" <a...@network-geographics.com> 
wrote:

> All;
> 
> I have added a new section to the documentation, 'arch', for "Architecture". 
> Currently it contains just my writings on the cache implementation but others 
> are of course STRONGLY encouraged to contribute. This should not be API level 
> stuff but design / architecture stuff that explores the concepts, designs, 
> and interactions of components of ATS. I think it is also a good place for 
> writing up design suggestions for future implementation.

Very cool. A few questions on the cache tiering:


1) Is the quality the same as a "tier level" ? If so, 4,294,967,296 different 
tiers seems incredibly excessive.

2) The Oracle logic doesn't seem to include a feature to evict from one tier 
when the object gets "promoted" to a higher tier. I don't know if this is 
required, but it seems reasonable to think that if I have RAM + SSD + Disk, 
once an object gets stored in the RAM cache, it's enough to keep it in 
rotational disk for the time being.

3) How are the different cache tiers implemented? Are they all using existing 
disk cache layouts (except for RAM cache)? I guess if that's the case, #2 above 
might not make a whole lot of sense (it'll churn out anyways in the cyclone).

4) It feels like we should redo the existing RAM + disk cache such that the 
default is two tiers and the promotion algorithms between the two tiers maps to 
our LRU or CFLUS implementations (but using this concept of tiers). That would 
imply that a cache tier can choose between at least 3 different types cache 
layouts.


Cheers,

-- Leif

Reply via email to