feldera-buffer-cache
feldera-buffer-cache provides thread-safe in-memory caches used by Feldera's storage layer:
S3FifoCache wraps quick_cache's SOSP'23 S3-FIFO implementation behind a
Feldera-oriented API:
https://dl.acm.org/doi/10.1145/3600006.3613147
LruCache provides a mutex-protected LRU backend with the same
high-level API.
BufferCacheBuilder constructs the foreground/background cache layout used by
DBSP circuits.
API sketch
use ;
;
let cache = new;
cache.insert;
let page = cache.get.expect;
assert_eq!;
assert_eq!;
Benchmarks
The throughput benchmark comparing LruCache and S3FifoCache lives under the
dbsp bench targets: