Project

General

Profile

Feature #20318

Updated by Tom Clegg 7 months ago

Add option Want to store cached blocks in local filesystem rather than RAM in order to take advantage as mmap regions so that we can have a very large amount of better performance data accessible but rely on kernel VFS cache instead of (typically SSD-backed) local disk relative our own cache to backend, and let the kernel decide what when data can be paged out. 

 Probably need to cache in RAM. 

 Optionally use mmap have blocks represented as io.ReaderAt interface instead of read to access cache files. just slices -- possibly depends on which mmap library for Go that we use. 

 Where reasonable, implement the same behavior as the Python SDK in laying out and managing the cache directory containing the files for each cached block. 

Back