Details
-
Task
-
Resolution: Unresolved
-
Major
-
4.5.1, 5.0.0
Description
Couchstore files are essentially accessed in random order - the B-Tree is distributed throughout the file; and documents are scatted through it.
In DGM scenarios where the fsCache is a precious resource, it may be worthwhile to tell the OS to not prefetch blocks after the accessed range.
I suspect this it most likely to help during compaction (when reading the old file), as we want to minimise the amount of fscache we "steal" from other, still in existence files. It may also be advantageous for point-lookup accesses; as we don't want to pollute the fscache for adjacent blocks we never use.
Having said all this, the OS (Linux) may be smart enough to detect that we don't use much of the pre-fetched blocks, and hence won't keep for long in the active set of the fscache. As such, I think we need to perform some experiments to test if hinting is beneficial or not.