# PerfCE: Performance Debugging on Databases with Chaos Engineering-Enhanced Causality Analysis

**Authors:** Zhenlan Ji, Pingchuan Ma, Shuai Wang  
**arXiv:** [2207.08369](https://arxiv.org/abs/2207.08369)  
**Date:** 2022-07-18  
**Summary page:** https://www.summarizepaper.com/en/paper/2207.08369v1/

## Key points

- PerfCE is a framework that uses chaos engineering to diagnose performance issues in real-world databases.
- Debugging such issues can be difficult due to limited observability, but causal inference techniques enable root cause analysis.
- Chaos engineering has been used for testing software systems by injecting catastrophic events and testing if the system retains normal functionality.
- PerfCE comprises an offline phase and an online phase, where statistical models of the target database system are learned using both passive observations and proactive chaos experiments to constitute accurate causal graphs and structural equation models (SEMs).
- The online phase diagnoses the root cause of monitored performance anomalies on-the-fly using these models.
- Causal graphs enable qualitative root cause identification while SEMs enable quantitative counterfactual analysis.
- The framework was evaluated on common synthetic datasets and real-world databases MySQL and TiDB, where it outperformed prior works with high accuracy and moderate cost.
- PerfCE's innovative usage of chaos engineering for performance debugging in databases presents a promising solution to address practical challenges in causality analysis.

## Summary

PerfCE is a novel framework that utilizes chaos engineering to diagnose performance anomalies in real-world databases. Debugging such issues can be challenging due to limited observability, but causal inference techniques enable root cause analysis. Chaos engineering has been used to test complex software systems by injecting catastrophic events and testing if the system retains normal functionality. Despite its ubiquity in the industry, chaos engineering is mostly employed for software testing rather than performance debugging. PerfCE comprises an offline phase and an online phase. During the offline phase, statistical models of the target database system are learned using both passive observations and proactive chaos experiments to constitute accurate causal graphs and structural equation models (SEMs). The online phase diagnoses the root cause of monitored performance anomalies on-the-fly using these models. Causal graphs enable qualitative root cause identification while SEMs enable quantitative counterfactual analysis. The framework was evaluated on common synthetic datasets and real-world databases MySQL and TiDB, where it outperformed prior works with high accuracy and moderate cost. PerfCE's innovative usage of chaos engineering for performance debugging in databases presents a promising solution to address practical challenges in causality analysis.
