立方体计算的策略是什么?

有以下用于有效计算数据立方体的通用优化技术,如下所示 -

  • 排序、散列和分组- 排序、散列和分组操作应该用于维度属性以重新排序和聚类关联的元组。在多维数据集计算中,聚合是在共享一组相似维度值的元组(或单元格)上实现的。因此,探索排序、散列和分组服务以访问和分组此类数据以促进此类聚合的计算至关重要。

    例如,它可以按分支、天和项目评估总销售额,按分支对元组或单元格进行排序,从而按天排序,然后根据项目名称对它们进行分组更有效。数据库研究界已经广泛计算了在巨大数据集中有效实现此类操作的方法。这样的实现可以计算到数据立方体的计算。

  • 同时聚合和缓存中间结果- 在多维数据集计算中,从先前计算的低级聚合而不是从基本事实表计算高级聚合就足够了。此外,来自缓存的中间计算结果的同时聚合可以减少昂贵的磁盘 I/O 操作。

    例如,它可以按分行计算销售额,也可以使用从较低级别长方体的计算中改变的中间结果,包括分行和日期的销售额。该方法可以扩展为实现分摊扫描(即,同时计算尽可能多的长方体以分摊磁盘读取)。

  • 当存在多个子长方体时,从最小的孩子聚合- 当存在多个子长方体时,从最小的、以前计算的子长方体评估所需的父方(即,更广义的)方体通常更有效。

    例如,它可以计算一个销售长方体 C Branch,当存在两个先前计算的长方体 C {Branch, Year}和 C {Branch, Item} 时,从前者计算 C Branch比从后者计算效率更高如果有几个不同的项目多于不同的年份。

  • 可以探索 Apriori 剪枝方法来有效地计算冰山立方体- 数据立方体上下文中的 Apriori 属性声明如下:如果给定的单元格不满足最小支持度,则没有后代(即,更多功能或更准确的版本)单元格也将满足最小支持度。此属性可用于显着减少冰山立方体的计算。

    冰山立方体的规范包括冰山条件,这是对要实现的单元格的约束。一个常见的冰山条件是单元格应满足最小支持阈值,包括最小计数或总和。在这种情况下,Apriori 属性可用于缩短对单元格后代的探索。