Redis – in-memory data structure store

Redis is an open source, advanced key-value store in a similar vein to memcache but the dataset is non-volatile. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.

Redis is a TCP server using the client-server model and what is called a Request/Response protocol.

Redis offers many different ways to do one straightforward thing: store a value (“antirez”) to a key (“redis”).

Features include:

  • Easy to set up.
  • Native support for atomically manipulating and querying data structures such as lists and sets.
  • Very simple to use and configure master-slave replication that allows slave Redis servers to be exact copies of master servers.
  • Redis Virtual Memory which allows users to grow their dataset beyond RAM limitations.
  • Special encoding of small aggregate data types.
  • Loads and mantains the whole dataset into memory, but the dataset is persistent.
  • Supports setting timeouts to keys so that this key will be automatically removed when a given amount of time passes.
  • Multiple databases with commands to atomically move keys from one database to the other.
  • MULTI/EXEC family of commands.
  • Popping from a list in a blocking fashion.
  • Publish messages onto channels and subscribe to receive all messages that are published on channels.
  • Unix domain socket support.
  • Syslog support.

Support: Documentation
Developer: Salvatore Sanfilippo
License: BSD license

Redis is written in C. Learn C with our recommended free books and free tutorials.

Return to Caching Systems Home Page | Return to Document-Oriented Databases Home Page | Return to Key Value Stores Home Page

Read our complete collection of recommended free and open source software. The collection covers all categories of software.
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.