REDIS is in-memory key value store. The data types can be manipulated with atomic operations to push/pop elements, add/remove elements, perform server side union, intersection, difference between sets, and so forth. It supports different kind of sorting abilities. It also supports persistence and replication and there is a clear description of how to implement a Distributed Lock Manager on top of RedisRedis is by far the better choice for a news feed. It is similar to memcached but the dataset is not volatile, but also lists, sets, and ordered sets. Hence, the most common storage engine for news feeds is by far Redis which is fast in-memory and easy to operate. Due to it’s persistence capabilities, it can be used as a datastore and not just a cache.
What is unique or different about REDIS::
– Redis has a rich concept of sets, and makes set operations simple and fast (union, intersection, etc)
– Sorted sets make sorting items by relative scores easy. Rankings of elements in a set are simple. There are very many uses for this
– It is easy to use Redis pub/sub to set up a fast and reliable messaging queue between processes
– Bit operations (BITOP, BITCOUNT, etc).
Redis keys can contain values which accept bit operations (and, or, xor — 00110111 & 00111111 — etc). Very fast comparisons of bit keys is available to you, with a world of uses, especially for logging and other forms of tracking.
– Using Redis primitives it’s really simple to implement a real-time tracking filtering system or a spam filtering system.