Redis 6: A high-speed database, cache, and message broker

Redis is a powerful blend of speed, resilience, scalability, and flexibility, and Redis Enterprise takes it even further.

1 2 Page 2
Page 2 of 2

Redis benchmarks

As you might expect from a RAM-based database that uses a simple key-value schema, Redis does very well in benchmark tests. The pleasant surprise is that it also does well in its Redis on Flash configuration; that also applies to Redis Enterprise Cloud configurations with Flash.

On an all-RAM Amazon EC2 test using 26 m4.16xlarge nodes, a 512-shard Redis Enterprise 5.0 database achieved 50 million operations per second with less than 1 millisecond latency. These tests also demonstrated near-linear scalability. An update for this benchmark to Redis 6.0 isn’t currently available.

For the Redis on Flash case, there are separate benchmarks under different conditions for Samsung NVMe SSDs and Intel NVMe SSDs (using Redis Enterprise 4.3). Again, updates for Redis 6.0 are not currently available.

For the Samsung NVMe test, using 20% RAM and 80% Flash, the result was over 2 million operations per second, over 1 GB disk throughput and over 1 Gbps network throughput over a single server, with latency under 1 millisecond. For the Intel NVMe test, using 10% RAM and 90% Flash, the result was an average of 3.25 million operations per second, with an average of 0.92 millisecond latency from a single server, while reading and writing over 1 GB of disk bandwidth.

Redis client support

Redis has client libraries for all the popular programming languages, and many that you probably have never learned. For many languages there is a plethora of choices — but the listing helpfully stars the recommended clients. If you’re working with Redis clusters, choose a client library that includes cluster support if you want the maximum flexibility.

To summarize, Redis is a high-speed database, cache, and message broker. While Redis started off purely as an in-memory cache, it is now able to persist to disk and, in Redis Enterprise, to combine RAM and Flash for its active store. 

Redis can scale horizontally using a leader-follower model, with eventual consistency. Redis Enterprise offers a shared-nothing cluster architecture that scales linearly, does automatic re-sharding and rebalancing while maintaining low latency and high throughput for transactional load, supports active-active installations, and can use conflict-free replicated data types to maintain better consistency and availability of data across geographically distributed clusters. Redis Enterprise can achieve hundreds of millions of operations per second with five nines (99.999%) uptime.

Both Redis and Redis Enterprise support a number of add-on modules. These effectively allow Redis to be a multi-model (key-value, graph, JSON, time series, and full-text search) database with shared data. The latest modules support programmability in Python and AI inference.

While Redis is free and Redis Enterprise has a per-shard cost, Redis Enterprise will often provide a better return on investment (thanks to Redis on Flash and easier cluster management) when you factor in the costs of hardware and operational support, especially for large databases.

— 

Cost: Redis: Free open source (BSD license). Redis Enterprise Software: 30-day free trial; priced per database shard after that. Redis Enterprise Cloud: Free (30 MB) to $32/hour (200 GB, 1,500 ops/sec). 

Platform: Redis open source: Linux, MacOS, OpenBSD, NetBSD, FreeBSD. Redis Enterprise Software: Linux/RHEL/CentOS/Amazon Linux; Kubernetes, Docker, or LXC; Pivotal Cloud Foundry; AWS and Azure marketplace. Redis Enterprise Cloud: AWS, Azure, GCP. 

At a Glance
  • Redis 6 is a in-memory data structure store with write-behind persistent storage. It can function as a database, cache, and message broker. Redis on Flash, a Redis Enterprise feature, extends RAM with Flash memory for cost-effective support of large databases.

    Pros

    • Sub-millisecond latency and high throughput
    • Widely supported among programming languages
    • Free open source version has many features
    • Enterprise version improves speed and eases clustering
    • Enterprise version supports Redis on Flash
    • Enterprise version implements Conflict-free Replicated Data Types (CRDTs)
    • Modules support many data models and functionality extensions

    Cons

    • Very little in the way of SQL support

Copyright © 2020 IDG Communications, Inc.

1 2 Page 2
Page 2 of 2