Open Riak how we gained from leaning on the BEAM
summary
Migrated 20k lines of C++ to Erlang and redesigns give measurable wins: a 150M-object cluster on eight modest EC2 nodes (~$4k/month) stays stable at 100% CPU and tolerates a killed node with at most ~12.5% throughput loss while repairing 60M objects. Object size rises from 8KB to 80KB cut throughput only ~20%, and large-object throughput roughly doubles. Performance hunting uses eprof, eqwaliser, QuickCheck; most NIFs are removed (one zstd wrapper remains); fixes center on short‑lived processes, heap copying, and OTP upgrades. Release 3.4 RC targets spring, GA by Autumn 2025.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:02What Riak is
- 3:51High availability goals
- 11:15Riak’s evolution needs
- 14:26Backend move to Erlang
- 15:07Memory efficiency
- 22:29CPU profiling
- 28:06Performance outcomes
- 32:20Riak’s future
- 34:04Open Riak community
- 36:43Q&A
related talks
40mPerformance Improvements
19mErlang/OTP Update
39mUsing Erlang, Riak and the ORSWOT CRDT at bet365 (...)
48mGetting to Know the Erlang Virtual Machine, the BEAM
52mOn the Scalability of the Erlang Virtual Machine and its Term Storage
43mThe River
42mThe Soul of Erlang and Elixir
46mEvents Analysis with Riak, Perl and Erlang at Booking.com
