The document describes benchmarks comparing the performance of several NoSQL databases under different workloads. It outlines the Yahoo! Cloud Serving Benchmark (YCSB) framework used to test Cassandra, Couchbase, HBase, MongoDB, Riak and MySQL. Different workloads are tested including read-only, read-mostly, write-mostly and read-modify-write. Performance is measured based on average latency and throughput. The results show how each database performs under each type of workload.
2. People produce
• More than 144.8 billion Email a day.
• 340 million tweets a day.
• 2 million Google search queries a minute.
• Apple receives around 47000 app downloads a minute.
• Instagram photographers share 3,600 new photos a minute.
• People perform over 2,000 Foursquare check-ins a minute.
7. YCSB client architecture
YCSB Client
Workload
Executor
Client treads
Stats
DB
Interface
Layer
DB Cluster
Workload file
• Read/write mix
• Record size
• Popularity distribution
Command line properties
• DB to use
• Workload to use
• Target throughput
• Number of threads
8. Data
• Record: 1KB = 10 fields x 100 Bytes
• Amount: 100 million records
• Total: ~130GB (~35 per node)
9. Nodes configuration
CPU Cores 8
CPU frequency 1500 MHz
Disk Space 160 GB
Bandwidth 102400 Kbit/sec
RAM 14848 MB
OS Сentos-6
10. Cluster configurations
Database Configuration Access Points
Cassandra 1.2.5
Couchbase 2.1.0
HBase 0.94.6
MongoDB 2.4.4
Riak 1.3.2
MySQL 7.3.2
4 x 4
4 x 4
1 name + 4 data 1
2 m-s + 4 m-d 2
4 x 4
4 x 1
11. Load structure
Type Read Insert Update RMW Scan
A
B
C
D
E
F
G
50% 50%
95% 5%
100%
95% 5%
5% 95%
50% 50%
5% 95%