Apparently Reddit folks don't like Redis too much (private email exchange), but I'm practically sure that Redis could help them so much here...<p>There are two strategies to mitigate reddit problems using Redis IMHO, one is simple to plug, one is advanced.<p>Strategy #1: Use Redis as a cache that does not need to be recomputed, instead of memcached.<p>To do this what they should do is things like, for all the recent "hot" news, to take everything inside Redis and update the Redis side when they write to the database.<p>For instance they could use a Redis hash for every news to store all the comments of a given news, indexed by comment id for easy update, so every time there is to render the comment page just a Redis call HGETALL is needed to fetch everything, like in a cache, but still with the ability to update single items easily (including vote counters if needed, using HICNRBY).<p>The same for firendship relations and so forth. Every place can be reimplemented using an updatable cache, starting from the slower parts.<p>Strategy #2: Use Redis directly as the data store, killing the need of a cache.<p>This needs a major redesign, but probably it can be done incrementally starting from #1, because when using Redis as a smart cache you write both the code to read and update the cache, so eventually killing the code that updates the "real" database will make Redis the only store, or it is possible to still retain the code updating the old data store just to have another copy of the whole dataset where it is easy to run complex queries for data mining and so forth, that is something an SQL database does well but Redis does not.<p>I think that David King evaluated Redis in contrast to Cassandra, and he did not liked the lack of cluster solution with failover, resharding and so forth (what we are tying to do with redis cluster), but I think he missed part of the point that Redis can be used in many different ways, more as a flexible tool than a pre-cooked solution, and in their case the "smart cache" is probably the best approach.<p>If Reddis will reconsider the issue giving Redis a chance I'm here to help.