  Aggregated time series are generated effortlessly everywhere, e.g., "total
confirmed covid-19 cases since 2019" and "total liquor sales over time."
Understanding "how" and "why" these key performance indicators (KPI) evolve
over time is critical to making data-informed decisions. Existing explanation
engines focus on explaining one aggregated value or the difference between two
relations. However, this falls short of explaining KPIs' continuous changes
over time. Motivated by this, we propose TSEXPLAIN, a system that explains
aggregated time series by surfacing the underlying evolving top contributors.
Under the hood, we leverage prior works on two-relations diff as a building
block and formulate a K-Segmentation problem to segment the time series such
that each segment after segmentation shares consistent explanations, i.e.,
contributors. To quantify consistency in each segment, we propose a novel
within-segment variance design that is explanation-aware; to derive the optimal
K-Segmentation scheme, we develop an efficient dynamic programming algorithm.
Experiments on synthetic and real-world datasets show that our
explanation-aware segmentation can effectively identify evolving explanations
for aggregated time series and outperform explanation-agnostic segmentation.
Further, we proposed an optimal selection strategy of K and several
optimizations to speed up TSEXPLAIN for interactive user experience, achieving
up to 13X efficiency improvement.
