壹佰网|ERP100 - 企业信息化知识门户

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2172|回复: 2

Hyperion Essbase 性能调优Tips

[复制链接]
发表于 2011/3/25 16:50:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622  。

您需要 登录 才可以下载或查看,没有帐号?注册

x
下面列出一些Essbase性能调整的Tips,还需要不断的提高:

1. 控制数据块的大小和数据块的密度,合适的Block size 应该在8到100K之间,我们可以通过调整Dense和Sparse维度的配置控制数据块的大小,同时保证很好的块数据密度。
2. 排列Outline中Dimension的结构:Dense Dimension应该在Sparse Dimension的前面,Sparse Dimension的排序方式应该是:按照member的数量从少到多。在ESSCMD中使用GETDBSTATS命令可以很方面查询数据库维度的统计数据:下面是ESSCMD返回的结果实例:
-------Statistics of test:test-------

Dimension Name Type Declared Size Actual Size
===================================================================
Accounts DENSE 131 94
Time Periods DENSE 23 14
Data Type DENSE 6 5
Entities SPARSE 2460 1279
Object SPARSE 268 265
Years SPARSE 7 7
Scenarios SPARSE 10 10
Versions SPARSE 11 11
Currencies SPARSE 8 8
Market SPARSE 12 12
HSP_Rates SPARSE 20 20
Entity-Attr SPARSE 9 9
Function SPARSE 9 9
User Category SPARSE 3 3
Prod Group SPARSE 8 8
Product/Svc SPARSE 4 4
Sub-Function SPARSE 61 61
Product Group SPARSE 10 10

Number of dimensions : 18
Declared Block Size : 18078
Actual Block Size : 6580
Declared Maximum Blocks : 974679552000
Actual Maximum Blocks : 501081504000
Number of Non Missing Leaf Blocks : 1
Number of Non Missing Non Leaf Blocks : 71
Number of Total Blocks : 72
Index Type : B+ TREE
Average Block Density : 0.5927052
Average Sparse Density : 1.436892E-008
Block Compression Ratio : 0.02291698
Average Clustering Ratio : 0.9421046
Average Fragmentation Quotient : 50.20838

3. 增量加载数据:数据增量加载,从而可以增量的创建数据块,利用Intelligent Calculation,这样不需要每次计算所有数据块,每次只要计算新增加的数据块就可以了。
4. Flat Dimension:指那种有很多member,但是很少层次关系,Hierarchy的结构是一个很扁平的结构。这种结构对Performance有着负面的影响。对于这种结构,可以考虑增加他的层次结构,或者在calc script中增加SET CALCHASHTBL命令行利用Hash表的能力。
5. 使用并行执行,需要指出的是:1)Essbase默认的是Serial Calculation.如果需要并行执行,需要在essbase.cfg里面配置或者在calcu-script里面。 2)并不是指定了并行执行Essbase就会真的并行运算,Essbase会首先判断这个语句能否并行,如果不满足要求,Essbase还是会串行执行他。
6. 一些公式会强迫Essbase年进行串行执行,而不能进行并行执行,这些公式包括:1)对作为并行种子的维度存在依赖关系的Dense 维度上的公式。 2)含有@VAR, @ARRAY, or @XREF的公式。 3)有循环依赖关系的公式:比如A引用了B, B引用了C, C又引用了A。
7. 使用Dynamic Calcu: 动态计算项在Essbase计算的时候并不会计算,而是在访问数据的时候实时计算,同时dense dimension上一些项设置成Dynamic, 可以使数据块变小,加速计算过程。
8. 使用Essbase的consolidation(+, -, *, /)是运算效率最高的计算方式。
9. 使用Fix严格控制计算的范围为最小的需要计算的数据块。
10. 如果可能,在dense dimension上创建公式。
11. 当你使用cross-dimension在dense dimension上创建公式时,如果满足下面两个条件,Essbase将不会自动创建数据块:1)等式右边是Dense Dimension, 等式左边是Sparse Dimension,你的计算不会返回结果,同时还会变得很慢:比如下面的情况:[url=]sales[/url] 和 expense是dense 维度的成员,budget和actual是sparse维度的成员。那么可以用Datacopy先生成数据块,然后再计算:

DATACOPY Sales -> Actual TO Sales -> Budget;
DATACOPY Expenses -> Actual TO Expenses -> Budget;
FIX(Budget)
(Sales = Sales->Actual * 1.1;
Expenses = Expenses->Actual * .95
ENDFIX

下面这种计算将不会产生数据块和计算结果:
FIX(Budget)
(Sales = Sales -> Actual * 1.1;
Expenses = Expenses -> Actual * .95
ENDFIX
发表于 2012/3/29 21:03:23 | 显示全部楼层
好资料,谢谢分享........
发表于 2012/4/19 09:45:17 | 显示全部楼层
谢谢分享。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|壹佰网 ERP100 ( 京ICP备19053597号-2 )

Copyright © 2005-2012 北京海之大网络技术有限责任公司 服务器托管由互联互通
手机:13911575376
网站技术点击发送消息给对方83569622   广告&合作 点击发送消息给对方27675401   点击发送消息给对方634043306   咨询及人才点击发送消息给对方138011526

GMT+8, 2025/11/29 07:32 , Processed in 0.018045 second(s), 14 queries , File On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表