使用元组计算非对称网格

云数据源类型: Oracle Essbase

非对称网格的元组计算允许 Oracle Smart View for Office 用户在网格或计算脚本中对特定成员选择范围执行计算,从而避免过度计算。

计算元组用来提供一个或多个稀疏维中成员的数据切片,以便在计算 FIX 语句中使用。

默认情况下,当不同维的多个成员存在于一个计算 FIX 语句中或者是 Smart View 中的网格 POV 的一部分时,计算范围是不同维的所有成员组合的所有可能组合(笛卡尔积)。这会导致在处理非对称网格时执行的计算超过所需的量。通过元组计算,计算范围会更加准确而有效。

管理员可以像为用户创建从 Smart View 运行的其他计算一样,根据用户的特定数据集和业务需求在 Essbase 中设置元组计算。

作为 Smart View 用户,您可以像运行任何其他计算一样为非对称网格运行元组计算。可能会要求您指定运行时提示,具体取决于您的管理员对元组计算的设置。

注:

  • Smart View 发行版 11.1.2.5.800 开始,您可以在非对称网格上运行元组计算。请检查您的 Essbase 数据源是否支持计算元组。

  • 管理员:使用元组计算功能,您可以将计算范围定义为非对称网格中的选定成员元组。FIX 语句中的特殊语法可帮助您指定要计算哪些元组。有关元组计算的详细信息,请参阅《使用 Oracle Essbase》中的“计算所选元组”。

Smart View 中,要在非对称网格上运行元组计算,请遵循“运行 Essbase 计算”中关于运行计算的说明。

选择为非对称网格上的元组计算编写的脚本。管理员可以告知您应当运行哪些脚本。

示例 8-3 在非对称网格上运行元组计算

此方案中的示例基于元组计算的示例库模板。在支持计算元组的 Essbase 版本中提供了库模板。

我们从下面所示的非对称网格开始。此网格是非对称的,因为在行维和列维中没有相同的成员层次。

图 8-11 起始非对称网格 - 所有数据值 = 1


具有不同的行维和列维成员的非对称网格。网格中的所有数据值都等于 1。

上面的非对称网格是此对称网格的一个切片,在此对称网格中,层次成员在行和列中是统一的。

图 8-12 起始对称网格 - 所有数据值 = 1


具有统一的行和列成员的对称网格。网格中的所有数据值都等于 1。

我们将展示在非对称网格上运行三个不同类型计算的结果,然后展示这些计算给对称网格造成的影响。

脚本配置为在每次运行脚本时都将数据单元格递增 1。每种类型的计算会在对称网格上产生不同的结果。

运行的第一个脚本将计算网格 POV 中的所有内容,而非仅计算下面的网格中显示的成员组合。在非对称网格中,在刷新后,所有数据单元格现在都等于 2。

图 8-13 运行默认计算后的非对称网格


对所有成员运行计算并刷新后的非对称网格。网格中的所有数据值都等于 2。

我们提交非对称网格中的单元格,然后转到对称网格并刷新它。请注意,在刷新时,会计算 Product/Market 组合的每个 Entity、Version、Scenario 和 Site,尽管它们不在非对称网格上。这是因为,默认情况下(不存在元组计算时),Essbase 将计算网格中显示的组合的笛卡尔积。结果是 POV 中的所有单元格都递增 1,因此您将看到对称网格中所有数据单元格中的值都是 2:

图 8-14 在非对称网格上运行默认计算并刷新后的对称网格


对所有成员运行计算并刷新后的对称网格。网格中的所有数据值都等于 2。

接下来,我们将在非对称网格上运行限制性更强的计算,将计算范围缩小为 Product 和 Market 网格元组,以便计算更少的交叉点。计算结果消息将显示此计算的范围:

图 8-15 针对所有 Product 和 Market 元组运行元组计算后的计算结果对话框


针对所有 Product 和 Market 元组运行元组计算后的计算结果对话框。读取的总块数为 7168 块;写入的总块数为 3584 块。

刷新,非对称网格中的所有数据单元格都递增为 3。提交网格上的数据。

图 8-16 针对所有 Product 和 Market 元组运行计算后的非对称网格


针对所有 Product 和 Market 元组运行计算后的非对称网格。网格中的所有数据值都等于 3。

在对称网格中,请注意,在刷新时仅会计算非对称网格上已包括的 Product/Market 元组,以及所有 Site/Version/Entity 组合。它们是第 5 行到第 10 行以及第 12 行中的所有列。这些单元格现在显示数据值 3。在对称网格中不会计算非对称网格中未显示的 Product/Market 元组,它们的数据单元格值仍然为 2。对于此计算,仅为元组指定了 Product 和 Market 组合。将计算元组和未指定的维(未在 FIX 语句中指定的那些维)的所有成员。

图 8-17 针对非对称网格上的所有 Product 和 Market 元组运行计算并刷新后的对称网格


针对所有 Product 和 Market 元组运行计算并刷新后的对称网格。与 Product 和 Market 元组相关的所有成员都等于 3;其余成员组合等于 2。

现在,运行最后一个计算,它编写为仅对非对称网格中显示的元组起作用。此元组计算指定应当仅计算非对称网格上指示的 Entity、Site、Market、Product、Version 组合。在运行计算后,计算结果对话框会显示更小的计算范围:

图 8-18 针对网格 Product 和 Market 元组运行计算后的计算结果对话框


针对网格 Product 和 Market 元组运行元组计算后的计算结果对话框。读取的总块数为 56 块;写入的总块数为 28 块。

非对称网格中所有单元格中的值都递增为 4。提交此网格上的数据。

图 8-19 针对网格 Product 和 Market 元组运行计算后的非对称网格


针对网格 Product 和 Market 元组运行计算后的非对称网格。网格中的所有数据值都等于 4。

移动到对称网格并刷新。请注意,此元组计算指定应当仅计算非对称网格上指示的 Entity、Site、Market、Product、Version 组合。在对称网格上,您可以看到只有第 5 行到第 10 行和第 12 行以及列 C 和 M 递增到 4。这些是与非对称网格中递增的数据对应的元组,并且在下方以黄色突出显示:

图 8-20 针对非对称网格上的网格 Product 和 Market 元组运行计算并刷新后的对称网格


针对网格 Product 和 Market 元组运行计算并刷新后的对称网格。与网格 Product 和 Market 元组相关的所有成员都等于 4;其余元组组合保持为 3,其余成员组合仍然保持为 2。

本节中的示例显示了三个计算对非对称网格和对称网格的影响。我们查看了每个计算在每种网格上的结果。同时,了解了通过选择元组,可以在活动 Smart View 网格中进行有针对性的计算,将计算范围限定于多维数据集中的特定数据切片。