sysbench 1.0: teaching old dog new tricks
summary
sysbench 1.0 (formal release Feb 2017 after a decade of informal branches) rewrites the Lua workload layer to use LuaJIT FFI and a bundled RNG, measures client overhead with a MySQL dry-run mode, and reports up to 3–6x lower client overhead and dramatically better multi-core scalability. It adds a new object‑oriented SQL API with result‑sets and multi‑connection per thread, pluggable error handlers, threaded prepare/commands, histogram export, and JSON/CSV custom reporting hooks.
AI-written summary · about
chapters (22)
- 0:00sysbench introduction
- 1:50Why sysbench needed refactor
- 6:54sysbench 1.0 improvements
- 7:57Performance gains LuaJIT
- 10:23Scalability enhancements
- 11:27Simplified CLI syntax
- 13:15Custom option validation
- 14:40FFI for system calls
- 16:04Redesigned SQL API
- 17:31High connection counts
- 17:52Result set processing
- 18:55Latency histograms
- 20:00Error handling clusters
- 21:24Custom commands
- 22:29Parallel data loading
- 23:14Machine-readable reports
- 25:20Future extensions
- 26:42sysbench-tune overview
- 28:28IPython reports
- 30:12Managing extensions
- 31:39Summary future features
- 31:59Q&A fixed-rate queries
related talks
20mAutomate Database Benchmarking with Xbench
31mDemanding the impossible rigorous database benchm
29mPerformance Archaeology - 20 years of improvements
22mIntroducing a Temporal Benchmark in Benchbase
37mContinuous Performance Benchmarking for Vitess
47mThe Road Towards an Open Database Performance Ranking
45mTuning Hardware and the Operating System: Benchmarking on PostgreSQL
39mMastering OpenSearch Benchmark: Advanced Techniques for Power Users
