I'm new to Redis, but lately they've started to promote the idea of using Redis as a general purpose persistent db, instead of mainly for cache. I think this would be a good fit for an app I want to write.
The issue is: I need more memory (let's say 3Gb) than what I'll have available in RAM (say, 2Gb). Redis runs entirely in RAM if I'm not mistaken ("data sets can't be larger than memory"). However, most of the data will only need to be seldomly accessed. I need all data to persist, but I'd need >1Gb present all time, the rest could be evicted.
Question: Only using Redis, is it possible to have a larger data set persist as disk storage, but only load a subset of keys to RAM and evict less-frequently-used keys as needed to make space for new less-frequenly-used keys? I don't want to evict keys and then have them deleted or not stored in disk storage.
Apparently, there used to be a swap or virtual memory option, but it's now deprecated.