December 28, 2009
A few years ago I started using Memcached. I fell in love with it and used it everywhere. The idea of setting a key and a value is so powerful and I’m surprised how many use cases can be solved just using Memcached. Alas, its lack of disk persistence was a real killer for using Memcached as a primary data store. This has been addressed by projects like MemcacheDB.
Redis was created earlier this year, taking the idea of Memcached, and adding rich data structures like Lists and Sets making an even more compelling product. Redis also allows you to persist to disk every X minutes or after X number of key changes. There is a new feature called append only file which will stream write operations to a file and fsync this file every command processed or every second. RethinkDB uses the same concept to improve their database performance.
Redis will soon have the ability to store more data than the ram available in the system, a locking mechanism, and transaction system. With these in place, Redis will become an even more serious replacement for the RDBMS.
2010 will be a great year. I can’t wait to see what new applications are powered by Redis.