RedisTimeSeries and AOF

When I create the following container the timeseries module does not work:

docker run -d -p 6379:6379 -it -v redis_data:/data --name redistimeseries --restart=always redislabs/redistimeseries –appendonly yes

When I remove the –appendonly yes it works fine.

How would I persist the data to a volume mounted to the host, is it supported?

Your help will be much appreciated.

Kind Regars,

Van Zyl Kruger

Hi Van,
It is supported, can you provide the redis log output?

Not much that I can see:

1:C 02 Apr 2020 16:03:28.748 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo

1:C 02 Apr 2020 16:03:28.748 # Redis version=5.0.5, bits=64, commit=00000000, modified=0, pid=1, just started

1:C 02 Apr 2020 16:03:28.748 # Configuration loaded

_._

_.-``__ ''-._

_.-`` `. `_. ''-._ Redis 5.0.5 (00000000/0) 64 bit

.-`` .-```. ```\/ _.,_ ''-._

( ' , .-` | `, ) Running in standalone mode

>`-._`-...-` __...-.``-._|'` _.-'| Port: 6379

> `-._ `._ / _.-' | PID: 1

`-._ `-._ `-./ _.-' _.-'

>`-._`-._ `-.__.-' _.-'_.-'|

> `-._`-._ _.-'_.-' | http://redis.io

`-._ `-._`-.__.-'_.-' _.-'

>`-._`-._ `-.__.-' _.-'_.-'|

> `-._`-._ _.-'_.-' |

`-._ `-._`-.__.-'_.-' _.-'

`-._ `-.__.-' _.-'

`-._ _.-'

`-.__.-'

1:M 02 Apr 2020 16:03:28.750 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

1:M 02 Apr 2020 16:03:28.750 # Server initialized

1:M 02 Apr 2020 16:03:28.750 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.

1:M 02 Apr 2020 16:03:28.750 * Ready to accept connections

And when I remove the –appendonly yes:


1:C 02 Apr 2020 16:07:23.661 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo

1:C 02 Apr 2020 16:07:23.661 # Redis version=5.0.5, bits=64, commit=00000000, modified=0, pid=1, just started

1:C 02 Apr 2020 16:07:23.661 # Configuration loaded

_._

_.-``__ ''-._

_.-`` `. `_. ''-._ Redis 5.0.5 (00000000/0) 64 bit

.-`` .-```. ```\/ _.,_ ''-._

( ' , .-` | `, ) Running in standalone mode

>`-._`-...-` __...-.``-._|'` _.-'| Port: 6379

> `-._ `._ / _.-' | PID: 1

`-._ `-._ `-./ _.-' _.-'

>`-._`-._ `-.__.-' _.-'_.-'|

> `-._`-._ _.-'_.-' | http://redis.io

`-._ `-._`-.__.-'_.-' _.-'

>`-._`-._ `-.__.-' _.-'_.-'|

> `-._`-._ _.-'_.-' |

`-._ `-._`-.__.-'_.-' _.-'

`-._ `-.__.-' _.-'

`-._ _.-'

`-.__.-'

1:M 02 Apr 2020 16:07:23.663 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

1:M 02 Apr 2020 16:07:23.663 # Server initialized

1:M 02 Apr 2020 16:07:23.663 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.

1:M 02 Apr 2020 16:07:23.663 * Module 'timeseries' loaded from /usr/lib/redis/modules/redistimeseries.so

1:M 02 Apr 2020 16:07:23.663 * Ready to accept connections

What do you think? I love this module but without AOF persistence on Docker I cannot use it and will revert back to my previous sorted set solution. I work for a large mining company and we use it as our Edge’s persistence layer for Data Science and IIoT.

Hi Van,
Because you pass a different set of argument list to redis its overrides the load module argument, here how to pass both load module and AOF flags:
docker run -d -p 6379:6379 -it -v /tmp/redis_data:/data --name redistimeseries --restart=always redislabs/redistimeseries --loadmodule /usr/lib/redis/modules/redistimeseries.so --appendonly yes

Cheers,
Danni.

Thanks that’s great.

I previously used Redis Desktop Manager as a UI to show people what Redis is capable of. Do you know any Redis UIs that supports time series?

Kind Regards,

Van Zyl

RedisInsight has a nice time series view:

https://redislabs.com/redisinsight/