Open Source Projects:
Pricing
Chat
Contact
Back to top

Redis Open Source 4.0.11 vs Redis Labs Enterprise 5.2.0

Benchmark

Background

The purpose of the document is to compare Redis Open Source (ROSS) 4.0.11 against Redis Labs Enterprise (REE) 5.2.0. The comparison should answer the question, whether we can use Redis Open Source as a proxy for testing Redis Labs Enterprise, when trying to re-run the tests published in Redis Labs blog post. The reason why we cannot use Redis Labs Enterprise directly is that we don’t have a license that allows a desired number of shards, despite the fact we repeatedly asked Redis Labs to provide it.

Summary of Findings

Redis Open Source and Redis Labs Enterprise have the same performance, give or take a few percent variability on each test run, in all tested scenarios. As a conclusion, according to our tests, Redis Open Source is a valid proxy for testing to get an idea of the performance of Redis Labs Enterprise.

Benchmark

Hardware Configuration

Parameter Value
Server & client machines
  • EC2 instance of type m4.10xlarge: Intel E5 160GB RAM 10Gb Xeon E5-2676
  • TT RAM: 160GB of memory
  • TT Network: 10Gbps Ethernet

Number of server machines

1 – 2 (see “Shards configuration”)

Number of client machines

3

Cluster Configuration

Product Version

Redis Open Source

4.0.11

Redis Labs Enterprise

5.2.0

Jedis

2.9.0

Shards Configuration

The scenarios were scaled down in order to be comparable, because we don’t have more than 4 shards for REE. In order to investigate behavior when replication is turned on and off, we needed to setup the same number of master shards for both scenarios. That’s because of the way how Redis works – (by default) all operations go through to the master.

Scenario Number of Physical Boxes Shards Per Box

No replication

1

2

With replication

2

2 (1 master + 1 slave)

Benchmark Tool configuration

The scenarios were scaled down in order to be comparable, because we don’t have more than 4 shards for REE. That means that given the original test scenario had 96 shards and we have no more than 4 shards, we scaled number of objects by the factor of 1/24.

Parameter Value

Tool

RadarGun 3.0.0 with modifications to support Redis.

Number of threads per
client

16

Read:Write ratio

  • 100:0 (GET only)
  • TT 0:100 (PUT only)
  • TT 80:20 (mixed scenario)

Number of objects

166666

Key size

8 bytes

Value size

1 KB

Benchmark configuration
(Redis Open Source)

benchmark-redis-jedis.xml

Benchmark configuration
(Redis Labs Enterprise)

benchmark-redis-enterprise.xml

Command line used

dist.sh -c <benchmark_xml_above> -t -m <master_ip>:2103 client1 client2 client3

No replication

In this scenario, we had 4 shards of REE/ROSS on one physical box. Hover over the chart to see the description what scenario it is.

Redis Labs Enterprise
Redis Labs Enterprise No Replication
Redis Open Source
NoReplication_RedisOS_w1000px

From the above charts, we see that Redis Open Source and Redis Labs Enterprise perform approximately the same.

With replication

In this scenario, we had 4 shards in total, but spread across two machines. So one machine contained 1 master + 1 slave. Hover over the chart to see the description what scenario it is.

Redis Labs Enterprise
Redis Labs Enterprise with Replication
Redis Open Source
Redis Open Source with Replication

From the above charts, we see that Redis Open Source and Redis Labs Enterprise perform approximately the same.