Final version of optimised Redis released
NoSQL database Redis 2.2 has been released. Described as "a monument to how much Redis 2.0 sucked" by its creator, Salvatore Sanfillippo, the new version works as a drop-in replacement for the BSD licensed key/value store. The revised version focuses on optimisation of the database. It uses "an order of magnitude less memory" for storing lists and sets and has rewritten networking internals with some commands up to ten times faster. The virtual memory introduced in version 2.0 and the database's top level dictionary have also been optimised for memory efficiency.
Other enhancements include non-blocking replication so slaves can serve data while resyncing with database masters, new list functions, and an ability to use strings as arrays with SETBIT/GETBIT/SETRANGE/GETRANGE commands. More details of the changes are available in the release notes and the new version can be downloaded from the Redis.io web site.
Redis development is sponsored by Sanfillipo's employer, VMWare. Sanfillippo's fellow developer on Redis, Pieter Noordhuis, talked about the changes in 2.2 at the Redis London conference last October; video of his talk is available (part 1,part 2). At the same event, Sanfillipo presented Redis Cluster development plans (video part 1, part 2), a more distributed variant of Redis which will be the basis of Redis 3.0; a release candidate of Redis Cluster is not due until June 2011.