# Hi-RCA: A Hierarchy Anomaly Diagnosis Framework Based on Causality and Correlation Analysis
## 4 Experiment
### Comparisons  
Results of MicroDiag show the challenge of root cause localization. Different from Hi-RCA, which pinpoints the anomalous microservice first, MicroDiag directly finds the root cause metric from diverse components. It is difficult to construct complete and accurate causal relationships from the original time series data, owing to the following reasons. (1) Metric data are collected with the background noise. (2) The anomaly not only propagates to related metrics, but also dependent components, and hence, it is challenging to construct an accurate propagation graph under the interference both from affected microservices and metrics. Even given the anomalous microservice, MicroDiag-V1 cannot accurately pinpoint the root cause metric. The reason is that the relationships among metrics are complex, and consist of causal relationships and correlation relationships. If the length of anomaly data is a short window, such as 5 min, causal inference techniques are unable to construct an accurate metric causality graph for effective root cause localization. Results of Loud show inefficiencies in locating anomalies, because Loud constructs the metric graph among all metrics, but given various monitored metrics with complex relationships, only focusing on the causal relationship is insufficient, since there may not be causality between some metrics, but only correlation. The Granger causality test model used in Loud only analyzes the causal relationship between two metrics, ignoring the complete causal structure. Loud only constructs the metric-propagated graph by relying on \begin{table}
\begin{tabular}{c c c c c c c c c c} \hline \hline \multirow{2}{*}{**Method**} & \multicolumn{3}{c}{**Dataset A**} & \multicolumn{3}{c}{**Dataset B**} & \multicolumn{3}{c}{**Dataset C**} \\ \cline{2-10}  & **PR@1** & **PR@2** & **PR@3** & **PR@1** & **PR@2** & **PR@3** & **PR@1** & **PR@2** & **PR@3** \\ \hline RS & 0.03 & 0.08 & 0.19 & 0.14 & 0.14 & 0.18 & 0.05 & 0.15 & 0.18 \\ Loud & 0.29 & 0.34 & 0.39 & 0.18 & 0.34 & 0.38 & 0.31 & 0.36 & 0.38 \\ Cauchy & 0.15 & 0.2 & 0.24 & 0.14 & 0.16 & 0.18 & 0.11 & 0.16 & 0.24 \\ MicroDiag & 0.22 & 0.46 & 0.64 & 0.24 & 0.48 & 0.66 & 0.22 & 0.53 & 0.76 \\ MicroDiag-V1 & 0.27 & 0.54 & 0.71 & 0.22 & 0.38 & 0.6 & 0.22 & 0.45 & 0.84 \\
**Hi-RCA** & **0.75** & **0.85** & **0.88** & **0.86** & **0.89** & **0.98** & **0.76** & **0.8** & **0.89** \\ Hi-RCA-w/o-1 & 0.75 & 0.75 & 0.85 & 0.82 & 0.90 & 0.92 & 0.73 & 0.78 & 0.82 \\ Hi-RCA-w/o-2 & 0.07 & 0.25 & 0.32 & 0.2 & 0.32 & 0.38 & 0.11 & 0.25 & 0.29 \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Performance of Hi-RCA with baseline and ablation experiments. the Granger test result, which may add spurious causal relations among metrics, reducing its efficiency in root cause localization. Results of Cauchy show that directly pinpointing the root cause metric based on the metric value variation is ineffective, because Cauchy only detects the metrics' value variation, ignoring the metrics' inter-relationship. Owing to the dependent nature of microservices, the anomaly from the root cause metric will propagate to related metrics and dependent microservices, causing many anomalous metrics and microservices. One of the challenges of root cause localization is that there exist different symptoms for different anomaly types; hence, only depending on the metric value variation is one-sided, as it cannot pinpoint the root cause from diverse anomaly symptoms. **Ablation Study. ** We study the main modules of Hi-RCA by removing each of them or using a variant version. We compare Hi-RCA with its two ablation experiments as follows. * _Hi-RCA-w/o-1_: Hi-RCA algorithm without the causal inference, i.e., the anomaly knowledge graph is constructed as a static knowledge graph manually, not from the intervention recognition task used in Hi-RCA. Then, the reason for the anomaly is inferred based on the graph comparison between CPG and the static knowledge graph.