Redis is an open source, in-memory data structure store, used as a NoSQL database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, etc. Redis has built-in replication, Lua scripting, transactions and different levels of on-disk persistence, and provides high availability and automatic partitioning.