FASTER icon indicating copy to clipboard operation
FASTER copied to clipboard

[C++] Read cache (port from C#)

Open badrishc opened this issue 6 years ago • 0 comments

We would like to support a separate read cache in FASTER C++. The basic idea is to have a separate instance of the hybrid log that acts as the read cache and sits between the hash table and the main hybrid log.

  • The index points to records in either the read cache or the log.
  • Entries in the read cache point to their previous record, either on the read cache or the main log.
  • Main log entries never point to the read cache
  • The read cache has two regions in memory, identical to the main log. Reads of records in the "immutable" region cause them to be copied over to the tail, serving as the cache policy.
  • When pages expire from the read cache head address, expiring records need to be evicted, i.e., their previous pointers have to be updated.
  • Checkpoint & recovery needs to handle the presence of a read cache

Read more about the read cache in the C# PR here: https://github.com/microsoft/FASTER/pull/92

badrishc avatar Sep 13 '19 19:09 badrishc