Redis – Overview
Redis is an open source, advanced key-value store and an apt solution for building highperformance, scalable web applications.
Redis has three main peculiarities that sets it apart.
-
Redis holds its database entirely in the memory, using the disk only for persistence.
-
Redis has a relatively rich set of data types when compared to many key-value data stores.
-
Redis can replicate data to any number of slaves.
Redis Advantages
Following are certain advantages of Redis.
-
Exceptionally fast − Redis is very fast and can perform about 110000 SETs per second, about 81000 GETs per second.
-
Supports rich data types − Redis natively supports most of the datatypes that developers already know such as list, set, sorted set, and hashes. This makes it easy to solve a variety of problems as we know which problem can be handled better by which data type.
-
Operations are atomic − All Redis operations are atomic, which ensures that if two clients concurrently access, Redis server will receive the updated value.
-
Multi-utility tool − Redis is a multi-utility tool and can be used in a number of use cases such as caching, messaging-queues (Redis natively supports Publish/Subscribe), any short-lived data in your application, such as web application sessions, web page hit counts, etc.
Redis Versus Other Key-value Stores
-
Redis is a different evolution path in the key-value DBs, where values can contain more complex data types, with atomic operations defined on those data types.
-
Redis is an in-memory database but persistent on disk database, hence it represents a different trade off where very high write and read speed is achieved with the limitation of data sets that can”t be larger than the memory.
-
Another advantage of in-memory databases is that the memory representation of complex data structures is much simpler to manipulate compared to the same data structure on disk. Thus, Redis can do a lot with little internal complexity.