21 动态计算数据值

要提高块存储计算性能,可以对 Essbase 多维数据集中的选择值应用动态计算动态计算通过在检索时计算某些成员来提高效率。

在设计计算多维数据集的方式时,您可能会发现,在检索数据时更有效地计算某些成员组合,而不是在批处理数据库计算期间预先计算成员组合。

动态计算某些数据库值可以显著提高整体数据库计算的性能。

通过动态计算某些数据值,您可以通过以下方式减少资源使用:

  • 数据库的批处理计算时间更快,因为要计算的成员组合较少。

  • 磁盘使用量减少。由于需要存储的计算值越少,数据库和索引大小就越小。

  • 重组时间减少。在密集维中添加或删除 Dynamic Calc(动态计算)成员不会更改数据块大小,因此不需要重构。

  • 减少备份数据库所需的时间。由于数据库大小较小,因此执行备份所需的时间较少。

将成员标记为动态计算时, Essbase 不会在批处理计算期间(例如,在 CALC ALL 期间)计算其值。而是在查询时计算数据值(例如,当用户从 Smart View 中检索数据时)。动态计算的值不会存储,但会为每个检索重新计算。

如果检索从动态计算子成员计算的父值,则 Essbase 必须在计算父值之前动态计算子成员组合。

Essbase 动态计算的数据值可能需要较长时间才能检索。您可以估计动态计算成员的检索时间。

注意:

对于标准维, Dynamic Calc(动态计算)属性不适用于聚合存储 (ASO) 数据库。在 ASO 中,将动态计算所有父代成员和具有公式的所有成员。