FAQ

Caching is not key-value storage. When you use a cache, you accept that keys
may disappear for various reasons:

Keys may expire.

Keys may be overwritten when the cache is full.

Keys may be lost after shutdowns.

...

In another word, caches are volatile. This is not a problem, since the cached
data is usually stored safely somewhere else. The point of a cache is to provide
high-performance access to frequently needed data.

Key-value stores, on the other hand, are persistent. When you write a key to a
key-value store, you expect it to be there until you delete it. It would be a
disaster if data would silently disappear from a key-value store (or any other
kind of database).

Hence the two libraries fulfill two very different purposes, even if their
interfaces and implementations are often similar.