I'm aware of the differences between a cachepool
and cachevol
.
Cachepool
separates the cache data and metadata into two separate volumes, whereas a Cachevol
uses a single volume for both.
My question is, what is the benefit of using a cachepool
instead of just using a cachevol
? The only scenario I can think of that it would make the most sense would be if you wanted to dedicate a single device (or single set of devices) to the cache's metadata, and a separate device (or set of devices) for the actual cache data. But that seems like a very specific scenario, and it also doesn't address the question of Why?
Why do most people default to using a cachepool
instead of a cachevol
, esp. when one device is used for caching?
What is the motivation/pros-cons to using a cachepool
vs cachevol
?
EDIT For context, the motivation behind this question comes from an assumption that cachepool
is used in conservative setups (like home servers and desktops) simply because the guides and tutorials that people follow have trickled down from Enterprise use-cases.
Outside of tooling support, and based solely on the merits of cachepool
vs cachevol
, is there any concrete reason (performance, implementation, etc...) that motivates people to advocate for cachepool
instead? Or is it simply a victim of an Enterprise trickle-down phenomenon?
If the latter is true, it may justify more conservative setups considering cachevol
instead of cachepool
if they don't need the flexibility and complexity of a cachepool
setup.
--cachepool
option says cachepool has slightly better performance when using dmcache. man.archlinux.org/man/lvmcache.7