Many tools empower analysts and data scientists to consume analysis results in a visual interface, such as a dashboard. When the underlying data changes, these results need to be updated, but this update can take a long time -- all while the user continues to explore the results. In this context, tools can either (i) hide away results that haven't been updated, hindering exploration; (ii) make the updated results immediately available to the user (on the same screen as old results), leading to confusion and incorrect insights; or (iii) present old -- and therefore stale -- results to the user during the update. To help users reason about these options and others, and make appropriate trade-offs, we introduce Transactional Panorama, a formal framework that adopts transactions to jointly model the system refreshing the analysis results and the user interacting with them. We introduce three key properties that are important for user perception in this context, visibility (allowing users to continuously explore results), consistency (ensuring that results resented are from the same version of the data), and monotonicity (making sure that results don't "go back in time"). Within transactional panorama, we characterize all of the feasible property combinations, design new mechanisms (that we call lenses) for presenting analysis results to the user while preserving a given property combination, formally prove their relative orderings for various performance criteria and discuss their use cases. We propose novel algorithms to preserve each property combination and efficiently present fresh analysis results. We implement our transactional panorama framework in a popular, open-source BI tool, illustrate the relative performance implications of different lenses, demonstrate the benefits of the novel lenses, and outline the performance improvement by our optimizations.
翻译:许多工具使分析师和数据科学家能够通过可视化界面(如仪表板)消费分析结果。当底层数据发生变化时,这些结果需要更新,但更新可能耗时较长——而用户在此期间仍会继续探索结果。在这种情境下,工具可以选择:(i) 隐藏尚未更新的结果,从而阻碍探索;(ii) 将更新后的结果立即提供给用户(与旧结果显示在同一屏幕上),导致混淆和错误洞察;或 (iii) 在更新过程中向用户呈现旧(即过期)结果。为帮助用户对这些选项及其他可能性进行推理并做出适当权衡,我们引入事务性全景(Transactional Panorama),这是一个采用事务来联合建模系统刷新分析结果与用户交互过程的正式框架。我们提出在此背景下对用户感知至关重要的三个关键属性:可见性(允许用户持续探索结果)、一致性(确保呈现的结果源自同一数据版本)以及单调性(确保结果不会“回溯时间”)。在事务性全景框架内,我们刻画了所有可行的属性组合,设计了新的机制(称为透镜)用于在保留给定属性组合的同时向用户呈现分析结果,形式上证明了这些机制在多种性能标准上的相对排序,并讨论了其应用场景。我们提出了新颖的算法来保留每种属性组合并高效展示新鲜的分析结果。我们在一个流行的开源商业智能工具中实现了事务性全景框架,展示了不同透镜的相对性能影响,验证了新透镜的优势,并概述了优化带来的性能提升。