Redis Profile

A Redis profile is used to read and write data in a Redis database and can be accessed by real-time workflows using Aggregation agents.

The Redis profile is loaded when you start a workflow that depends on it. Changes to the profile become effective when you restart the workflow.

The Redis profile has been verified on Redis Labs Enterprise Cluster (RLEC).

Note!

To ensure aggregation functions correctly with the Redis profile, you must have the Enterprise edition of Redis

Configuration

To create a new Redis profile, click the New Configuration button from Build View, and then select Redis Profile from the selection screen.

The contents of the buttons bar may change depending on which configuration type has been opened in the currently displayed tab. The Redis profile uses the standard menu items and buttons that are visible for all configurations, and these are described in Common Configuration Buttons.

The Edit button content is specific to the Redis profile configurations.

Item

Description

Item

Description

External References

Select this menu item to enable the use of External References in the Redis profile configuration. This can be used to configure the use of the following fields, and the respective external reference keys available:

  • Host

  • Port

  • Max Retries

  • Retry Interval

  • Operation Timeout

  • Password

For further information, see Using External Reference in Agent Profile Fields and External Reference Profile.


The Redis configuration contains two tabs: Connectivity and Advanced. 

Connectivity Tab

The Connectivity tab is displayed by default.

redis profile image.png
Redis profile - Connectivity tab

 The following settings are available in the Redis profile:

Setting

Description

Setting

Description

Host

Enter the IP address/DNS name of the cluster.

Port

Enter the listening port of the cluster.

Password

Enter the password of the cluster.

Operation Timeout (ms)

Enter the number of milliseconds after which Redis "CRUD" operations, i e create, read, update, and delete, should timeout. Setting a lower value than the default 1000 ms may have a positive impact on throughput performance. However, if the value is set too low, indicated by a large number of operation timeouts errors in the EC logs, a lower throughput can be expected.

Retry Interval Time (ms)

Enter the time interval, in milliseconds, that you want to wait before trying to read the cluster configuration again after a failed attempt. The default value is 5.

Max Number of Retries

Enter the maximum number of retries. The default value is 30.

Advanced Tab

The Advanced tab contains additional properties that you can use for performance tuning.

 

The property mz.redis.socket.timeout specifies how long the Redis client will try to open a socket connection before it times out, while the property mz.redis.connection.timeout determines the maximum amount of time that the Redis client waits to read data from the Redis server before it times out.

Idle connections will timeout after the time specified in mz.redis.connection.time.limit has expired. These connections will be returned to the pool and are considered unused. The profile will periodically remove (evict) unused connections to the Redis cluster. Use mz.redis.connection.time.limit to control the time between the eviction intervals. 

Connections in use are periodically and unconditionally reset. Use mz.redis.connection.time.limit to control the time between the reset intervals. In case of topology changes the connections are reset after a delay. Use mz.redis.topology.limit.time to set the length of this delay.