DBPFSEApr 17, 2020

Automated System Performance Testing at MongoDB

arXiv:2004.08425v122 citationsHas Code
AI Analysis

This addresses the need for reliable and automated performance testing in distributed systems, particularly for MongoDB's CI environment, though it is incremental as it builds on existing testing practices.

MongoDB developed an automated system performance testing framework called DSI that runs nearly 200 benchmarks daily in CI, enabling timely detection and fixing of regressions, such as catching all but one major regression before the 4.2.0 release and identifying 17 new improvements.

Distributed Systems Infrastructure (DSI) is MongoDB's framework for running fully automated system performance tests in our Continuous Integration (CI) environment. To run in CI it needs to automate everything end-to-end: provisioning and deploying multi-node clusters, executing tests, tuning the system for repeatable results, and collecting and analyzing the results. Today DSI is MongoDB's most used and most useful performance testing tool. It runs almost 200 different benchmarks in daily CI, and we also use it for manual performance investigations. As we can alert the responsible engineer in a timely fashion, all but one of the major regressions were fixed before the 4.2.0 release. We are also able to catch net new improvements, of which DSI caught 17. We open sourced DSI in March 2020.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes