This article describes F-IVM, a unified approach for maintaining analytics over changing relational data. We exemplify its versatility in four disciplines: processing queries with group-by aggregates and joins; learning linear regression models using the covariance matrix of the input features; building Chow-Liu trees using pairwise mutual information of the input features; and matrix chain multiplication. F-IVM has three main ingredients: higher-order incremental view maintenance; factorized computation; and ring abstraction. F-IVM reduces the maintenance of a task to that of a hierarchy of simple views. Such views are functions mapping keys, which are tuples of input values, to payloads, which are elements from a ring. F-IVM also supports efficient factorized computation over keys, payloads, and updates. Finally, F-IVM treats uniformly seemingly disparate tasks. In the key space, all tasks require joins and variable marginalization. In the payload space, tasks differ in the definition of the sum and product ring operations. We implemented F-IVM on top of DBToaster and show that it can outperform classical first-order and fully recursive higher-order incremental view maintenance by orders of magnitude while using less memory.
翻译:本文描述了F-IVM,一种在变化的关系数据上维护分析的统一方法。我们通过四个领域展示了其通用性:处理含分组聚合与连接操作的查询;利用输入特征协方差矩阵学习线性回归模型;基于输入特征对互信息构建Chow-Liu树;以及矩阵链乘法。F-IVM包含三个核心要素:高阶增量视图维护、因子化计算和环抽象。F-IVM将任务维护简化为对层级简单视图的维护,这些视图是将键(输入值元组)映射到载荷(环中元素)的函数。同时支持对键、载荷和更新的高效因子化计算。此外,F-IVM统一处理看似不同的任务:在键空间,所有任务均需执行连接和变量边缘化;在载荷空间,任务差异体现在求和与乘积环运算的定义上。我们在DBToaster之上实现了F-IVM,实验表明其能以更低内存消耗,比经典一阶和全递归高阶增量视图维护方法快数个数量级。