aledalgrande
aledalgrande

Reputation: 5227

Cache eviction on hashes on Redis

If I have several hashes on Redis, each with keys that expire in 24 hours, if memory runs out while using an eviction policy like allkeys-lru, will Redis remove an entire hash or single keys?

Upvotes: 5

Views: 2221

Answers (1)

Itamar Haber
Itamar Haber

Reputation: 50122

Redis only supports expiration at the key's level. Therefore, once set with a TTL, your key that contains a hashmap will be expired entirely (all child fields will be gone with it). The same goes for the other Redis data types (e.g. Sets and Lists).

If you use Hashes for storing key names that need to expire, simply set the TTL for each such key name individually instead of for the Hash's key.

Upvotes: 6

Related Questions