关于块存储计算

Essbase 数据库(多维数据集)由其用户输入的值(称为输入数据)和从输入数据中推导(计算)的值组成。块存储计算可以根据成员合并和公式沿大纲进行,也可以通过运行批处理计算脚本来诱导。

作为输入数据与派生数据的示例,假设您为各种产品输入区域销售数字,并计算每个产品的总销售额。

您可以为多个地区的多个产品的销货成本输入预算和实际值。您可以计算每个区域中每个产品的预算值与实际值之间的差异。

多维数据集包含所有产品的区域销售数字和价格。如果将一个区域中的一个产品的价格增加 5%,则计算总利润会发生什么情况。

Essbase 提供了两种计算数据库的方法:

  • 大纲计算

  • 计算脚本计算

您选择的方法取决于要执行的计算类型。

注意:

由于操作系统数学库的差异,在不同平台上运行的计算之间,单元值的精确度可能会出现较小的差异。

大多数计算机以二进制形式表示数字,因此只能近似地表示实数。由于二进制计算机在小数点后不能容纳无限数量的位,因此三分之一 (0.3333...) 等数字小数不能用终止点表示为小数。分母为 2(例如 0.50)或 10(0.10) 的分数是唯一可以精确表示的实数。有关浮点表示,请参见 IEEE Standard 754 (IEEE,1985)。

大纲的计算

大纲计算是块存储多维数据集最简单的计算方法。Essbase 基于数据库大纲中成员之间的关系以及与大概要中成员关联的任何公式进行计算。

例如,下图显示了 Sample.Basic 数据库中 Market 维的成员之间的关系。将添加纽约、马萨诸塞州、佛罗里达、康涅狄格州和新罕布什尔州的值,以计算东部的值。向“东部”、“西部”、“南部”和“中心”添加值以计算“市场”的总值。

图 16-1 市场维度成员之间的关系


“市场”维度的层次结构说明了美国东部城市如何累计到东部地区,以及所有区域(东部、西部、南部和中部)如何累计到市场。

Market 的子成员添加以获得父值的原因是其成员合并运算符设置为 (+)。

下图显示了 Sample Basic 数据库中的 Scenario 维。“差异”和“差异百分比”成员是使用附加到它们的公式计算的。

图 16-2 差异和差异百分比的计算


方案维中的层次结构,其中差异已附加公式 @VAR(实际,预算),而差异百分比已附加公式 @VARPER(实际,预算)。

在检索数据时,而不是在常规数据库计算期间计算成员组合,计算某些成员组合可能更有效。可以使用动态计算在检索时计算数据。请参阅动态计算数据值

计算脚本计算

使用 Essbase 计算脚本,您可以准确选择如何计算块存储数据库。例如,可以计算多维数据集的一部分,或者在成员之间复制数据值。

计算脚本包含一系列计算命令、方程式和公式。例如,以下计算脚本将纽约地区的实际营销费用增加 5%。

FIX (Actual, “New York”)
   Marketing = Marketing *1.05;
ENDFIX;

请参阅开发块存储多维数据集的计算脚本