目标 :
在相同的硬件和软件环境下,比较voltdb3.0和redis存取的性能。
硬件环境:
800M内存,单核。
软件环境:
CentOS6.0 64位。
Voltdb:
运行voltdb中自带的例子程序voltkv来得到其性能数据。
redis:
运行redis中对应的benchmark来获取其性能数据。
voltdb性能测试结果:
--------------------------------------------------------------------------------
Command Line Configuration
--------------------------------------------------------------------------------
autotune = true
displayinterval = 5
duration = 120
entropy = 127
getputratio = 0.9
keysize = 32
latencytarget = 6
maxvaluesize = 1024
minvaluesize = 1024
poolsize = 100000
preload = true
ratelimit = 100000
servers = localhost
statsfile =
usecompression = false
warmup = 5
--------------------------------------------------------------------------------
Setup & Initialization
--------------------------------------------------------------------------------
Connecting to VoltDB...
Connected to VoltDB node at: localhost.
Preloading data store...
Preloading complete.
--------------------------------------------------------------------------------
Starting Benchmark
--------------------------------------------------------------------------------
Warming up...
Running benchmark...
00:00:05 Throughput 9540/s, Aborts/Failures 0/0, Avg/95% Latency 23.07/65ms
00:00:10 Throughput 10727/s, Aborts/Failures 0/0, Avg/95% Latency 15.71/32ms
00:00:15 Throughput 9664/s, Aborts/Failures 0/0, Avg/95% Latency 21.36/45ms
00:00:20 Throughput 9232/s, Aborts/Failures 0/0, Avg/95% Latency 16.12/32ms
00:00:25 Throughput 8876/s, Aborts/Failures 0/0, Avg/95% Latency 28.18/75ms
00:00:30 Throughput 12220/s, Aborts/Failures 0/0, Avg/95% Latency 15.83/31ms
00:00:35 Throughput 10703/s, Aborts/Failures 0/0, Avg/95% Latency 17.90/35ms
00:00:40 Throughput 11577/s, Aborts/Failures 0/0, Avg/95% Latency 16.75/32ms
00:00:45 Throughput 10844/s, Aborts/Failures 0/0, Avg/95% Latency 18.52/33ms
00:00:50 Throughput 11323/s, Aborts/Failures 0/0, Avg/95% Latency 16.32/32ms
00:00:55 Throughput 10703/s, Aborts/Failures 0/0, Avg/95% Latency 17.88/29ms
00:01:00 Throughput 12348/s, Aborts/Failures 0/0, Avg/95% Latency 15.42/31ms
00:01:05 Throughput 12166/s, Aborts/Failures 0/0, Avg/95% Latency 14.90/31ms
00:01:10 Throughput 10981/s, Aborts/Failures 0/0, Avg/95% Latency 19.38/34ms
00:01:15 Throughput 11377/s, Aborts/Failures 0/0, Avg/95% Latency 16.64/36ms
00:01:20 Throughput 10844/s, Aborts/Failures 0/0, Avg/95% Latency 18.71/30ms
00:01:25 Throughput 13214/s, Aborts/Failures 0/0, Avg/95% Latency 11.79/28ms
00:01:30 Throughput 9920/s, Aborts/Failures 0/0, Avg/95% Latency 19.10/36ms
00:01:35 Throughput 9042/s, Aborts/Failures 0/0, Avg/95% Latency 18.03/38ms
00:01:40 Throughput 11839/s, Aborts/Failures 0/0, Avg/95% Latency 13.35/27ms
00:01:45 Throughput 7761/s, Aborts/Failures 0/0, Avg/95% Latency 20.93/40ms
00:01:50 Throughput 11768/s, Aborts/Failures 0/0, Avg/95% Latency 13.88/34ms
00:01:55 Throughput 11363/s, Aborts/Failures 0/0, Avg/95% Latency 14.55/35ms
00:02:00 Throughput 10685/s, Aborts/Failures 0/0, Avg/95% Latency 20.81/35ms
--------------------------------------------------------------------------------
KV Store Results
--------------------------------------------------------------------------------
A total of 1,293,752 operations were posted...
- GETs: 1,163,698 Operations (0 Misses and 0 Failures)
1,136 MB in compressed store data
1,136 MB in uncompressed application data
Network Throughput: 0.076 Gbps*
- PUTs: 129,786 Operations (0 Failures)
126 MB in compressed store data
126 MB in uncompressed application data
Network Throughput: 0.074 Gbps*
- Total Network Throughput: 0.151 Gbps*
* Figure includes key & value traffic but not database protocol overhead.
--------------------------------------------------------------------------------
Client Workload Statistics
--------------------------------------------------------------------------------
Average throughput: 10,779 txns/sec
Average latency: 17.42 ms
95th percentile latency: 35 ms
99th percentile latency: 55 ms
--------------------------------------------------------------------------------
System Server Statistics
--------------------------------------------------------------------------------
Targeted Internal Avg Latency: 6 ms
Reported Internal Avg Latency: 6.18 ms
redis性能测试结果:
====== PING (inline) ======
10000 requests completed in 0.48 seconds
50 parallel clients
3 bytes payload
keep alive: 1
42.90% <= 1 milliseconds
85.71% <= 2 milliseconds
98.92% <= 3 milliseconds
99.82% <= 4 milliseconds
100.00% <= 4 milliseconds
20964.36 requests per second
====== PING ======
10000 requests completed in 0.47 seconds
50 parallel clients
3 bytes payload
keep alive: 1
42.76% <= 1 milliseconds
86.97% <= 2 milliseconds
99.40% <= 3 milliseconds
100.00% <= 3 milliseconds
21231.42 requests per second
====== MSET (10 keys) ======
10000 requests completed in 0.59 seconds
50 parallel clients
3 bytes payload
keep alive: 1
35.67% <= 1 milliseconds
71.49% <= 2 milliseconds
96.71% <= 3 milliseconds
99.15% <= 4 milliseconds
99.34% <= 5 milliseconds
99.53% <= 6 milliseconds
99.66% <= 20 milliseconds
99.82% <= 21 milliseconds
100.00% <= 21 milliseconds
17035.78 requests per second
====== SET ======
10000 requests completed in 0.50 seconds
50 parallel clients
3 bytes payload
keep alive: 1
40.50% <= 1 milliseconds
81.33% <= 2 milliseconds
98.45% <= 3 milliseconds
99.85% <= 4 milliseconds
99.99% <= 5 milliseconds
100.00% <= 5 milliseconds
20000.00 requests per second
====== GET ======
10000 requests completed in 0.49 seconds
50 parallel clients
3 bytes payload
keep alive: 1
41.81% <= 1 milliseconds
84.55% <= 2 milliseconds
98.77% <= 3 milliseconds
99.75% <= 4 milliseconds
100.00% <= 4 milliseconds
20449.90 requests per second
====== INCR ======
10000 requests completed in 0.49 seconds
50 parallel clients
3 bytes payload
keep alive: 1
42.31% <= 1 milliseconds
84.51% <= 2 milliseconds
98.72% <= 3 milliseconds
99.77% <= 4 milliseconds
99.97% <= 5 milliseconds
100.00% <= 5 milliseconds
20576.13 requests per second
====== LPUSH ======
10000 requests completed in 0.48 seconds
50 parallel clients
3 bytes payload
keep alive: 1
41.35% <= 1 milliseconds
83.84% <= 2 milliseconds
98.90% <= 3 milliseconds
99.62% <= 4 milliseconds
99.73% <= 5 milliseconds
99.80% <= 6 milliseconds
100.00% <= 6 milliseconds
20703.93 requests per second
====== LPOP ======
10000 requests completed in 0.49 seconds
50 parallel clients
3 bytes payload
keep alive: 1
41.39% <= 1 milliseconds
84.15% <= 2 milliseconds
98.48% <= 3 milliseconds
99.68% <= 4 milliseconds
99.89% <= 5 milliseconds
100.00% <= 5 milliseconds
20325.20 requests per second
====== SADD ======
10000 requests completed in 0.49 seconds
50 parallel clients
3 bytes payload
keep alive: 1
41.14% <= 1 milliseconds
83.54% <= 2 milliseconds
98.80% <= 3 milliseconds
100.00% <= 4 milliseconds
20618.56 requests per second
====== SPOP ======
10000 requests completed in 0.48 seconds
50 parallel clients
3 bytes payload
keep alive: 1
42.22% <= 1 milliseconds
85.33% <= 2 milliseconds
99.03% <= 3 milliseconds
99.76% <= 4 milliseconds
99.82% <= 5 milliseconds
99.85% <= 6 milliseconds
99.97% <= 7 milliseconds
100.00% <= 7 milliseconds
20661.16 requests per second
====== LPUSH (again, in order to bench LRANGE) ======
10000 requests completed in 0.50 seconds
50 parallel clients
3 bytes payload
keep alive: 1
41.27% <= 1 milliseconds
82.52% <= 2 milliseconds
98.45% <= 3 milliseconds
99.43% <= 4 milliseconds
99.88% <= 5 milliseconds
100.00% <= 5 milliseconds
20000.00 requests per second
====== LRANGE (first 100 elements) ======
10000 requests completed in 0.60 seconds
50 parallel clients
3 bytes payload
keep alive: 1
33.77% <= 1 milliseconds
68.06% <= 2 milliseconds
95.98% <= 3 milliseconds
99.84% <= 4 milliseconds
100.00% <= 5 milliseconds
16722.41 requests per second
====== LRANGE (first 300 elements) ======
10000 requests completed in 0.95 seconds
50 parallel clients
3 bytes payload
keep alive: 1
24.73% <= 1 milliseconds
51.01% <= 2 milliseconds
75.01% <= 3 milliseconds
94.82% <= 4 milliseconds
99.13% <= 5 milliseconds
99.75% <= 6 milliseconds
99.92% <= 7 milliseconds
100.00% <= 8 milliseconds
10570.83 requests per second
====== LRANGE (first 450 elements) ======
10000 requests completed in 1.12 seconds
50 parallel clients
3 bytes payload
keep alive: 1
20.74% <= 1 milliseconds
42.82% <= 2 milliseconds
64.65% <= 3 milliseconds
83.92% <= 4 milliseconds
97.35% <= 5 milliseconds
99.59% <= 6 milliseconds
99.96% <= 7 milliseconds
100.00% <= 7 milliseconds
8896.80 requests per second
====== LRANGE (first 600 elements) ======
10000 requests completed in 1.26 seconds
50 parallel clients
3 bytes payload
keep alive: 1
17.90% <= 1 milliseconds
37.25% <= 2 milliseconds
57.29% <= 3 milliseconds
75.23% <= 4 milliseconds
91.51% <= 5 milliseconds
98.24% <= 6 milliseconds
99.34% <= 7 milliseconds
99.64% <= 8 milliseconds
99.80% <= 9 milliseconds
99.88% <= 10 milliseconds
99.99% <= 11 milliseconds
100.00% <= 11 milliseconds
7942.81 requests per second