Stress Testing of Transactional Database Systems
Keywords: Stress Testing, Database, Testing Methodology, Transaction
AbstractTransactional database management systems (DBMS) have been successful at supporting traditionaltransaction processing workloads. However, web-based applications that tend to generate huge numbers of concurrentbusiness operations are pushing DBMS performance over their limits, thus threatening overall system availability. Then,a crucial question is how to test DBMS performance under heavy workload conditions. Answering this question requiresa testing methodology to set up non-biased conditions for pushing a particular DBMS over its normal performancelimits (i.e., to stress it). In this article, we present a stress testing methodology for DBMS to search for defects insupporting very heavy workloads. Our methodology leverages distributed testing techniques and takes into account thevarious biases that may a?ect the test results. It progressively increases the workload along with several tuning stepsup to a stress condition. We validate our methodology with empirical studies on two popular DBMS (one proprietary,one open-source) and detail the defects that have been found.