Riak at Wooga_Riak Meetup Sept 2013
-
Upload
wooga -
Category
Technology
-
view
1.749 -
download
0
Transcript of Riak at Wooga_Riak Meetup Sept 2013
Riak & Wooga
by Guillermo Álvarez @guillermooo
Wooga
API Key Value Store + extras
Security Auth
Sinatra
Chef + Amazon
Riak
eLevelDB
5 nodes x m1.xlarge 15 GB, 2 cores, 2 units
Ring Size 1024
Benchmark
5 MDAU = 225K rpm
( CPU )
HA/PROXY APP SERVERS
RIAK + MEMCACHED
MEMCACHED
95% PUTS 5% GETS
99% HITS
Benchmark Again
Launch week
Now
Monitoring
Alerting
Problems we have
Riak Ring Size
OOM cluster death
1 Node dies 0 people realize
Summary
● You should take care with your ring size
● You must do monitoring
● Reliable
Riak for Pearl’s Peril
Daniel Doubleday http://de.linkedin.com/pub/daniel-doubleday/1/115/195/
Pearl Who?
Architecture
Riak 1
Riak n
App Server 1
HA
Pro
xy
App Server n
HA
Pro
xy
Load Balancer
1
Load Balancer
n
Data Model
User stored as one JSON-CLOB ✘ Every client request needs to read / write
average 4k data ✘ Needs concurrency control
✔ Ensures data consistency ✔ Reduces round trips ✔ Reduces number of keys
Data Set Total : ~ 15M
Keys New : ~ 50k /
Day Updates : ~ 100M / Day
Requests : 100 - 200k rpm Per Server : ~ 75k rpm RW-Ratio : 50% / 50%
Data Size : ~ 20GB / Node
Cluster Info
Hardware Bare Metal, 32GB 6 x 8-core AMD Opteron 2.6GHz 2 x 12-core Intel Xeon 2.0GHz
Riak Version : 1.3.2 Storage : Bitcask
Storage Backend
Bitcask
● Higher Throughput ● Predictable Read
and Write Performance
LevelDB
● Compression ● Supports large
number of keys
The Good
A Typical Day
Adding a Node
The Bad
Performance Degradation
Nodes doing … things
The Ugly
Cluster Failures
Conclusions
● It works ...
● … most of the time
● NoSQL is becoming commodity
● There’s no shame in using mysql