BW:报表优化(二次杂谈)

报表效率问题困扰了很久

 

我发现很大程度上是因为数据量比较大的DSO被挂在Infoset下面做Inner join,而这些DSO大多有相同的key,但是IO缺大相径庭

一般都取自R3的SD后台表,直接制作成数据源

 

我最初的解决方案为:

增强系统标准数据源,取消这些无用的DSO

可是问题就来了,总这么增强也不是个办法,而且维护起来很困难,理解起来更麻烦,而且每次都要增强两个数据源(合同一个,开票凭证一个),也够麻烦的,还要做初始化

 

后来咨询过大家后,得出结论:

原来这种把R3的后台表做成数据源的办法是靠谱的,可是怎么高效的利用起来呢

永平兄给出了一个方案,写开始例程,基本思路就是在DSO上再搭一层Infoprovider,然后在数据上载的时候,到这些源于后台表的DSO中select相关的字段,填充过去,属于在ETL的过程中,把Infoset的工作做了(Inner join)

 

可是这样搞也挺麻烦

 

然后自己又突发奇想:

那用APD把Infoset的数据提取到DSO里呢,也不简单,以上次使用APD的经验,这个DSO是直接写入的,每次都要被覆盖掉,所以上层还得再搭一层Infoprovider,这样看来,增强也不算是最麻烦的

 

不过BW终究是BW,不能全部问题都用程序员的思路来解决,真的是一个度的问题,看你怎么去理解它,怎么去综合它的优势

 

方案是不唯一的,要有魄力去选择

 

 

你可能感兴趣的:(BW:报表优化(二次杂谈))