- Joined
- Feb 6, 2014
- Messages
- 5,112
Metadata for all datasets in the pool would be cached in L2ARC.- Metadata for the entire pool will be cashed in L2ARC (except the dataset called DataSetThatShouldBeCached)
- PoolName/DataSetThatShouldBeCached would use the L2ARC disk for data caching and not metadata(i.e. this dataset's metadata would only live on spinners)?
PoolName/DataSetThatShouldBeCached would leverage L2ARC for both data and metadata, as implied by the "all" value for secondarycache.
Basically, metadata is small enough that it's almost always worthwhile allowing it to live in L2ARC. You would just selectively enable data caching where you know it would benefit, and avoid it elsewhere - eg, don't cache your Plex video directory, as it's unlikely to be useful putting your most-recently-viewed 4K videos onto an SSD after a single viewing, but do cache your shared office files as they're both small and frequently hit and will benefit from the quick random-access speed of an SSD.
In all cases, the permanent copy of metadata lives on the pool vdevs; L2ARC only holds a copy of data that exists elsewhere in a permanent state, be that the actual records or metadata referring to them.