Skip to main content

Redis Eviction Policies

An eviction policy is a rule that Redis uses to evict keys to free up memory when its consumption reaches the set limit. For more information about eviction policies, see the Key eviction guide in the Redis documentation.

You can view the list of eviction policies.

You can select an eviction policy when creating a cluster or change it in an existing cluster.

Memory limit for key storage

The memory limit for storing keys is specified in the maxmemory parameter. The default maxmemory value is 75% of RAM on the cluster node. The remaining 25% is reserved for Redis internal mechanisms.

You can change the maxmemory value only in Redis version 8:

You can change this value within the range of 1% to 75%. If you set a value lower than 75%, the remaining memory can be used by Redis internal mechanisms.

List of eviction policies

noeviction

Does not evict keys when reaching the limit specified in maxmemory. New write operations will fail due to out-of-memory errors

volatile-lru

Evicts keys with an expiration set (TTL) that have not been accessed for a long time. Keys are evicted according to an approximated LRU algorithm

volatile-lfu

Evicts keys with a TTL that have been least frequently used since the TTL was set. Keys are evicted according to an approximated LFU algorithm

volatile-ttlEvicts keys with the shortest remaining TTL
volatile-randomEvicts random keys with TTL
allkeys-lru

Evicts any keys that have not been accessed for a long time. Keys are evicted according to an approximated LRU algorithm

allkeys-lfu

Evicts any keys that have been least frequently used since their creation. Keys are evicted according to an approximated LFU algorithm

allkeys-randomEvicts any random keys

Change the Eviction policy

For your information

We recommend changing the policy only if you are sure about the consequences — there is a possibility of partial data loss.

  1. In the control panel, in the top menu, click Products and select Cloud Databases.
  2. In the Databases section, open the Active tab.
  3. Open the cluster page → Settings tab.
  4. In the Eviction Policy block, click Edit.
  5. In the Maxmemory Policy field, select an eviction policy.
  6. Click Save.