As part of our parent company HashedIn, we have been using Redis for serveral years. On several projects, we faced a common problem - we didn’t know what was stored within redis, and why it took up so much memory. It is common for developers to store more and more data in redis, and one fine day you start running into problems.
In 2012, we created redis-rdb-tools project, an open source memory profiling tool for redis that parses redis dump files (.rdb files) and generates a memory profile in a variety of formats. This tool gave us visibility into memory usage, and helped us solve several problems our customers was facing. At some point though, the tool was “good enough”, and we didn’t improve it much. Several other developers, and especially RedisLabs stepped in and contributed in a variety of ways.
Starting 2017, we started hosting redis related meetups and conferences. As we started speaking to people, we realized this tool was not enough. Although it provided the raw data, there was a lot more that could be done. People were looking for a user interface, a convenient way to access data within Redis. That was the seed for us to start working on a commercial product.
We created the first version of Rdbtools and launched it at RedisConf 2018. This version was an online SaaS version, but we realized pretty soon a self-hosted version was needed. And so we started distributing Rdbtools as a docker container.
Rdbtools has helped several customers save costs on redis. In our experience, developer assume they have lots of data. And so when redis starts consuming more memory, they try to add more hardware or move to redis cluster. If you spend a little time investigating, you will realize that with a few small tweaks to either the way you store data or your redis configuration, you can save a lot of memory and headaches of managing a larger redis server.