essbase calcuation order

本文深入解析了块级计算的过程及其顺序,包括如何基于块创建上层块进行多维聚合操作,以及不同维度下计算的详细流程。通过实验验证,揭示了计算流程中的关键点和常见误解,例如块的创建与计算顺序,以及不同维度下计算的复杂性。本文旨在帮助理解和优化多维数据集的聚合计算效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

firstly:

only "100-30"->California block exist after load

do agg(Market)

[Tue Feb 14 10:36:20 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100-30], [West], [Actual]

[Tue Feb 14 10:36:20 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100-30], [Market], [Actual]

[Tue Feb 14 10:36:20 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message:

Total Block Created: [2.0000e+00] Blocks
Sparse Calculations: [2.0000e+00] Writes and [2.0000e+00] Reads
Dense Calculations: [0.0000e+00] Writes and [0.0000e+00] Reads
Sparse Calculations: [2.1600e+02] Cells
Dense Calculations: [0.0000e+00] Cells

 

we can see West, Market for Sales, COGS, but not Margin ( Margin is stored
and need to be calculated) .

we also can see no dense calculation since this is aggregation of Market, which is a sparse dimension.

calc all:

[Tue Feb 14 10:40:08 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100-30], [California], [Actual]

[Tue Feb 14 10:40:08 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [Product], [California], [Actual]

[Tue Feb 14 10:40:08 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100-30], [West], [Actual]

[Tue Feb 14 10:40:08 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100], [West], [Actual]

[Tue Feb 14 10:40:08 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [Product], [West], [Actual]

[Tue Feb 14 10:40:08 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100-30], [Market], [Actual]

[Tue Feb 14 10:40:08 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100], [Market], [Actual]

[Tue Feb 14 10:40:08 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [Product], [Market], [Actual]

[Tue Feb 14 10:40:08 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message:

Total Block Created: [7.0000e+00] Blocks
Sparse Calculations: [7.0000e+00] Writes and [1.0000e+01] Reads
Dense Calculations: [1.0000e+00] Writes and [1.0000e+00] Reads
Sparse Calculations: [7.5600e+02] Cells
Dense Calculations: [2.4000e+01] Cells


you can see 7 new blocks are created:
Product->california, 100-30->West, 100->West,Product->West, 100-30->Market, 100->Market, Product->Market
and now can see Margin in all blocks.

for dense calculation cells, why 24 cells calculated for dense calculation? because besides Margin, Open Inventory is also not dynamically calculated. if change Open Inventory to dynamic, dense calculation will drop to 12

for dense calculation blocks, only 1 writes and 1 reads for dense calculation since there is only one lv0 node.

for sparse calculation cells, 756/7=108, this is because there are 9 stored member in Account dimension, and 9*12=108

for spare calculation blocks, 7 blocks got written.  got to read more blocks

to calculation?


This experiement proves: calculation is along the block sequences, it doesn't matter
the blocks exist or not, if not, create block and do dense calculation. the conclusion
that sparse calculation create new blocks after existing block calculation finish is wrong.

Another thing noticed is that: 100->California is not calculated, but the block is created:
now total upper blocks are 8, not 7. It look like since 100-10, 100-20 are missing, 100->California
is no need to be calculated

 

is calculation along this order? 

1) fully calculate all level 0 blocks

2) create upper level blocks based on the fully calculated lv0 blocks 

 

load 3 blocks: 100-30->california, 300-10->california, 300-10->Florida
those are all level 0 node

do calcall:

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012677)
Calculating in serial

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [300-10], [Florida], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [Product], [Florida], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [300-10], [East], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [300], [East], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [Product], [East], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100-30], [California], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [300-10], [California], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [Product], [California], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100-30], [West], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100], [West], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [300-10], [West], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [300], [West], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [Product], [West], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100-30], [Market], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [100], [Market], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [300-10], [Market], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [300], [Market], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message: Executing Block - [Product], [Market], [Actual]

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012672)
Calculator Information Message:

Total Block Created: [1.5000e+01] Blocks
Sparse Calculations: [1.5000e+01] Writes and [2.2000e+01] Reads
Dense Calculations: [3.0000e+00] Writes and [3.0000e+00] Reads
Sparse Calculations: [1.6200e+03] Cells
Dense Calculations: [7.2000e+01] Cells

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1012579)
Total Calc Elapsed Time for [testc.csc] : [0.05] seconds

[Thu Mar 15 10:53:17 2012]EssSvr64/Sample/Basic/admin/Info(1013274)
Calculation executed

 

here we can see calculation is still along the order of blocks, but lv0 blocks

do get calculated before the new, upper blocked get created and calculated.

 

here we can see 72 cell dense calculation: 3*24, there is 3 lv0 node and each

has 24 cell dense calc for Margin and Open Inventory.

For sparse calcuation cells: 1620/15=108

for dense calculation blocks: 3 lv0 node mean 3 read and 3 write

 

 

 


 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8583032/viewspace-716635/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/8583032/viewspace-716635/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值