OLAP报表:欲追求完美自由

31 views
Skip to first unread message

代 严

unread,
Jan 6, 2009, 12:09:05 PM1/6/09
to tt...@googlegroups.com

在BI行业中的OLAP Reports应用中,默认(常见)的都是有若干同类指标(度量)和若干维度(指标所对应的关注角度)构成一张报表。


在一个相关应用年代已久的公司,这些报表都有不同的业务用户属主(业务公司或业务部门),报表相关的定义和变更均由该属主决定。随着时间的流逝,不同报表(甚至是不同属主)之间可能出现类似名称的报表和相同或极度相似名称的指标——报表和指标对业务以其名称做标识——而这些报表的用户包含若干部门若干层级的若干个体,假如譬如"指标字典"一样的辅助支持不到位,则用户面对这些不同报表中的同名指标将无比困惑,无法做出选择。


于是,业务用户开始了冥思苦想,问题到底出在哪里?除"指标字典"一类的辅助支持需要完善、指标定义(含体系)需要清理(整理)外,他们还发现令他们兴奋无比的一点——根本原因:现有的开发是以报表为中心开发的,业务需要一个指标数据则必须到某个报表中取。并判断这正是一切问题的根源!所以,根本解决之道就需要将开发架构修改为"以指标为中心",业务用户"任意"选择指标和维度后点击一个按钮再生成所需报表,自由组合、自由定制、自由分析!


我宁愿将这种愿景称作OLAP报表追求的"自由",喔,这里又出现了"报表"二字——按照业务方的"构想",在他们选择好自己喜欢的指标和维度之前并按下按钮之前,并不存在任何"报表"一类的概念。


如果为这种"自由"加一个"限度",那什么样的限度才是核心的呢?可能大家都会想:定义主题,在一个适当粒度的主题范围内实现这种自由。这含于DW的理论与实践中,似乎有了支撑,目前我也只能这么去琢磨。


但是,如果这个粒度定义得非常大——这正是业务用户所强烈要求的,暂且不管其理性与否——产出品能否实现这种自由组合将首先面临IT技术上的门槛,譬如如果维度较多却某些维度使得数据难于有效汇总,则基于ROLAP实现在效率上将是个悲剧,因为很多一个指标(现有报表中的指标)的一段时间(几个月到一年,再长时间都只能拆开)内的事实数据都是千万甚至轻易就过亿级;如果居于MOLAP,给用户提供多维立方体(CUBE)供其随意展现,这个CUBE的扩展性是被首先质疑的,同时,大数据量带来的生成CUBE的效率和CUBE文件的大小也将是噩梦。


如果,这个粒度定义得比较细,恐怕就成为现有的报表了,甚至连外面的皮都不用换,那还不如就清理清理报表和指标的定义什么的即可——就不存在业务领导所要看到的将"以报表为中心"修改为"以指标为中心"的"颠覆性"(业务所需)的变化了,项目的意义也将不存在。


需要给这样的愿景加一些定义条件,使得项目可行。在大型数据仓库或者数据集市项目设计方面经验比较丰富的同行前辈们愿不愿意给出一些点拨?本人在此感激不尽。


--
---------------------------------------------------------------
---DAI YAN    BEST WISHES!

笨笨

unread,
Jan 6, 2009, 9:33:49 PM1/6/09
to ttnn BI 观点

"所以,根本解决之道就需要将开发-架构修改为"以指标为中心",业务用户"任意"选择指标和维度后点击一个按钮再生成所需报表,自由组合、自由定制、
自由分析! "

这个早就实现了~~

On Jan 7, 1:09 am, "代 严" <daiyani...@gmail.com> wrote:
> 在BI行业中的OLAP Reports应用中,默认(常见)的都是有若干同类指标(度量)和若干维度(指标所对应的关注角度)构成一张报表。
>

> 在一个相关应用年代已久的公司,这些报表都有不同的业务用户属主(业务公司或业务部门),报表相关的定义和变更均由该属主决定。随着时间的流逝,不同报表(甚至-是不同属主)之间可能出现类似名称的报表和相同或极度相似名称的指标----报表和指标对业务以其名称做标识----而这些报表的用户包含若干部门若干层级的若干个体,-假如譬如"指标字典"一样的辅助支持不到位,则用户面对这些不同报表中的同名指标将无比困惑,无法做出选择。
>
> 于是,业务用户开始了冥思苦想,问题到底出在哪里?除"指标字典"一类的辅助支持需要完善、指标定义(含体系)需要清理(整理)外,他们还发现令他们兴奋无比的-一点----根本原因:现有的开发是以报表为中心开发的,业务需要一个指标数据则必须到某个报表中取。并判断这正是一切问题的根源!所以,根本解决之道就需要将开发-架构修改为"以指标为中心",业务用户"任意"选择指标和维度后点击一个按钮再生成所需报表,自由组合、自由定制、自由分析!
>
> 我宁愿将这种愿景称作OLAP报表追求的"自由",喔,这里又出现了"报表"二字----按照业务方的"构想",在他们选择好自己喜欢的指标和维度之前并按下按钮之-前,并不存在任何"报表"一类的概念。
>
> 如果为这种"自由"加一个"限度",那什么样的限度才是核心的呢?可能大家都会想:定义主题,在一个适当粒度的主题范围内实现这种自由。这含于DW的理论与实践-中,似乎有了支撑,目前我也只能这么去琢磨。
>
> 但是,如果这个粒度定义得非常大----这正是业务用户所强烈要求的,暂且不管其理性与否----产出品能否实现这种自由组合将首先面临IT技术上的门槛,譬如如果维度-较多却某些维度使得数据难于有效汇总,则基于ROLAP实现在效率上将是个悲剧,因为很多一个指标(现有报表中的指标)的一段时间(几个月到一年,再长时间都只-能拆开)内的事实数据都是千万甚至轻易就过亿级;如果居于MOLAP,给用户提供多维立方体(CUBE)供其随意展现,这个CUBE的扩展性是被首先质疑的,同-时,大数据量带来的生成CUBE的效率和CUBE文件的大小也将是噩梦。
>
> 如果,这个粒度定义得比较细,恐怕就成为现有的报表了,甚至连外面的皮都不用换,那还不如就清理清理报表和指标的定义什么的即可----就不存在业务领导所要看到的-将"以报表为中心"修改为"以指标为中心"的"颠覆性"(业务所需)的变化了,项目的意义也将不存在。

Qing

unread,
Jan 7, 2009, 2:15:47 AM1/7/09
to tt...@googlegroups.com
你这是想要探讨什么事情,没怎么看明白。

2009/1/7 代 严 <daiya...@gmail.com>

...

需要给这样的愿景加一些定义条件,使得项目可行。...

interstage

unread,
Jan 7, 2009, 4:17:21 AM1/7/09
to ttnn BI 观点
呵呵,Qing怎么又回到这个话题,首先"OLAP Report"本身就没有被定义,倒是有一个有名网站叫olapreport.com,这个网站的
宗旨是"help buyers make the most of their OLAP tool selection and
implementation projects. " 显然看Qing的描述"OLAP Report",不是olapreport.com的东西,
仅仅是基于Olap工具后的展现报表,该报表的"自由"+"限度"的平衡点就是BIER最难把握的东西. 我在"OLAP工具毁了BI"一文中已经讲
过, OLAP最基本的概念其实只有三个:多维观察、数据钻取、CUBE运算。如果从OLAP这3个角度着力点去开发报表(因为BI分析的载体一定是报
表,图形只是报表的变异而已),Olap就一定会毁掉报表的价值,甚至BI的价值本身(就是分析). 所以,OLAP 如果在另外3点着力,可能会绕过
这个问题,那就是1,随部门不同的业务术语的快速变化(有点元数据管理的感觉);2,ad hoc分析报表计算的新要求快速实现(有点象CUBE计算的
快速实现);3,新视角(维)随业务环境变化(其实是分析思路的变化)不断的被沉没或被唤醒. (有点OLAP的多维角度变化游离出IT人员进入业务人
员手上的感觉). 我一直认为,OLAP这3点着力点上太少,就是有点工具有,也只是面向IT人员,这也是被限制. 这也是我一直对BI关注的重点,
因为分析本身是无极限的.如果基于分析载体的报表受限了,分析也就受限了."减少分析的受限"其实可能是"OLAP Report" 追求的真谛.

daiyan

unread,
Jan 7, 2009, 10:41:36 AM1/7/09
to ttnn BI 观点
业务的这个需求不是很好描述,这里补充一下:一个支持业务分析检测的系统提供了各业务系列计千张报表,支持Interstage所总结的OLAP的三点
概念“多维观察、数据钻取、CUBE运算”。每张报表有若干自己的的指标和若干自己的维度。
用户觉得这样“以报表为展示单位”“导致了很多问题”,不好,于是要求升级为“以指标为展示中心”,用户访问系统见到的将不是一张张报表,而是一个个可
选指标和可选维度,用户只有选择一个或多个指标维度然后点个按钮生成所想要的报表。

虽然不一定要有一个点击按钮的过程,但是我理解用户所要的其实就是想以标准化规范化的指标来替换报表,并直接与指标交互。因为各报表之间被割裂开的独立
性使得出现混乱的同名指标,或者类似口径含义的指标在不同报表间不具有可比性,等等。所以想先标准化指标,达到消除冗余指标、明确区分类似指标、准确充
分定义指标含义逻辑口径等目的,然后以指标为基本单位改造现有的报表。

应该说,标准化指标并不一定彻底改变IT开发基础,也不见得就要“消灭”报表。但是业务把此列为最核心的项目目标。没得回旋余地。

现实的OLAP开发总是要基于一些平台,如Oracle、Cognos等,在这些平台或者是其它平台上,不知道有没成熟的解决方案能够实现用户这种“想
象”。

(可能还有描述不全面的地方,现在时间不充裕,往后再续)

daiyan

unread,
Jan 7, 2009, 10:48:35 AM1/7/09
to ttnn BI 观点
对你这个回答很干兴趣,能否烦请稍微详细解释一下?谢谢:)

我这里所要描述的是打破一张报表限制的自由组合和定制分析,并能由业务用户随意保存定制结果(类似于Cognos 8里面的各种Stdio组件自定义一
个报表后保存,这个开发过程要求不需要IT直接介入,IT一旦直接介入就要求这种定制被提起设计并固定下来)。


On 1月7日, 上午10时33分, 笨笨 <caozhen...@gmail.com> wrote:
> "所以,根本解决之道就需要将开发-架构修改为"以指标为中心",业务用户"任意"选择指标和维度后点击一个按钮再生成所需报表,自由组合、自由定制、
> 自由分析! "
>
> 这个早就实现了~~
>
> On Jan 7, 1:09 am, "代 严" <daiyani...@gmail.com> wrote:
>
>
>
> > 在BI行业中的OLAP Reports应用中,默认(常见)的都是有若干同类指标(度量)和若干维度(指标所对应的关注角度)构成一张报表。
>

> > 在一个相关应用年代已久的公司,这些报表都有不同的业务用户属主(业务公司或业务部门),报表相关的定义和变更均由该属主决定。随着时间的流逝,不同报表(甚至--是不同属主)之间可能出现类似名称的报表和相同或极度相似名称的指标----报表和指标对业务以其名称做标识----而这些报表的用户包含若干部门若干层级的-若干个体,-假如譬如"指标字典"一样的辅助支持不到位,则用户面对这些不同报表中的同名指标将无比困惑,无法做出选择。
>
> > 于是,业务用户开始了冥思苦想,问题到底出在哪里?除"指标字典"一类的辅助支持需要完善、指标定义(含体系)需要清理(整理)外,他们还发现令他们兴奋无比的--一点----根本原因:现有的开发是以报表为中心开发的,业务需要一个指标数据则必须到某个报表中取。并判断这正是一切问题的根源!所以,根本解决之道就需要-将开发-架构修改为"以指标为中心",业务用户"任意"选择指标和维度后点击一个按钮再生成所需报表,自由组合、自由定制、自由分析!
>
> > 我宁愿将这种愿景称作OLAP报表追求的"自由",喔,这里又出现了"报表"二字----按照业务方的"构想",在他们选择好自己喜欢的指标和维度之前并按下按-钮之-前,并不存在任何"报表"一类的概念。
>
> > 如果为这种"自由"加一个"限度",那什么样的限度才是核心的呢?可能大家都会想:定义主题,在一个适当粒度的主题范围内实现这种自由。这含于DW的理论与实践--中,似乎有了支撑,目前我也只能这么去琢磨。
>
> > 但是,如果这个粒度定义得非常大----这正是业务用户所强烈要求的,暂且不管其理性与否----产出品能否实现这种自由组合将首先面临IT技术上的门槛,譬如-如果维度-较多却某些维度使得数据难于有效汇总,则基于ROLAP实现在效率上将是个悲剧,因为很多一个指标(现有报表中的指标)的一段时间(几个月到一年,再-长时间都只-能拆开)内的事实数据都是千万甚至轻易就过亿级;如果居于MOLAP,给用户提供多维立方体(CUBE)供其随意展现,这个CUBE的扩展性是被首-先质疑的,同-时,大数据量带来的生成CUBE的效率和CUBE文件的大小也将是噩梦。
>
> > 如果,这个粒度定义得比较细,恐怕就成为现有的报表了,甚至连外面的皮都不用换,那还不如就清理清理报表和指标的定义什么的即可----就不存在业务领导所要看-到的-将"以报表为中心"修改为"以指标为中心"的"颠覆性"(业务所需)的变化了,项目的意义也将不存在。


>
> > 需要给这样的愿景加一些定义条件,使得项目可行。在大型数据仓库或者数据集市项目设计方面经验比较丰富的同行前辈们愿不愿意给出一些点拨?本人在此感激不尽。
>
> > --
> > ---------------------------------------------------------------

> > ---DAI YAN BEST WISHES!- 隐藏被引用文字 -
>
> - 显示引用的文字 -

Qing

unread,
Jan 8, 2009, 12:43:13 AM1/8/09
to tt...@googlegroups.com
哦,稍微明白了点。

用户觉得以报表为中心的感觉不好,要以指标为中心。你的意思是如何满足这个需求,是不是?

如果谈这个,我觉得也许跟OLAP没有关系,更加贴近BPM的感觉。其实,我觉得将olap看作是一种工具,还不如将它看作是一种分析理念——任何指标都可以通过不同的视角来进行切分。但作为工具,目前的工具,给用户的体验很差。

我觉得你的用户提出这个需求非常现实,报表太固定,olap太灵活,而对于一个业务人员,他往往关注的是某几项指标。他们的工作,是好是坏,是否出现问题,有什么异常情况,就从指标的变化来判断。一般的BPM工具,会提供这样一些功能,指标的管理,包括你说的"指标字典"。包括预警,包括深入下去的指标细分。可以找一些这方面的资料看看。

反正只有一个原则,尽量不要让用户看到跟他没有关系的信息。

按照这个原则,普通的OLAP界面,绝对不能给最终的业务用户使用。

关于如何满足这个需求,举个例子吧。以google analytics的例子,也是我昨天刚刚看到的,也许可以给你一些启发,甚至跟更多人一些启发。

以前曾经写过google analytics使用小记 ,后来他又做过一些改版并完善,最近,推出了自定义报表,这几乎就是olap的风格。但请注意,他并没有叫作olap,也不是如常规olap工具那样,在旋转、切片等功能上突出,他给出一种不同的体验。

首先看看自定义报表的编辑页面,参见下图。跟常见olap报表设计界面类似。在左边,有两个框子,一个是Metrics,指标,一个是Dimensions,维度,显然,这里的指标,就是olap里面mesure的概念,按照分类组织起来,比如站点使用类的,广告类的。在维度框子里面,并没有按照维度体系去设计,而是简单将维度分类组织,比如访问类、内容类。日期,也没有建立年、月、日的层次关系。这种方式很简单,指标和维度都是两层关系。而之所以不需要对维度建立层次体系的原因,通过右边主要工作区可以看出原因,因为这并非那种常见的olap报表,可以根据维度的层次体系去上下钻取。你需要自己定义维度的钻取路径,比如从国家,到城市,你只需要将维度拖到那个框框里面,而维度的层次,其实是在你自己的头脑里面。而且看上去,他也只提供4层的钻取。也许他的设计理念是,更多的钻取只会让用户迷失吧。

在完成了维度和度量的设计之后,保存报表,就可以查看。如下图,这是一个查看不同国家的访问者、访问量报表,默认的趋势图始终存在上方,下方,从国家查看单个指标,还可以下钻到城市,在下一级维度,可以提供更换别的维度的在线分析功能,当然,还有图表切换的功能。

这种报表设计很简洁,如果说还有什么不简洁的话,那就是指标和度量针对不同类型的用户,其实可以变化的。比如对于网站管理员来说,可以隐藏广告类、内容类的指标和维度,因为那是他不关心的。

2009/1/7 daiyan <daiya...@gmail.com>
..
用户觉得这样"以报表为展示单位""导致了很多问题",不好,于是要求升级为"以指标为展示中心",用户访问系统见到的将不是一张张报表...
ga_cust_rpt_edit.jpg
ga_cust_rpt_view.jpg

笨笨

unread,
Jan 8, 2009, 2:17:56 AM1/8/09
to ttnn BI 观点
照这么说来,cognos看来是没有实现这个功能阿

至少MSTR是实现了,维度和指标作为对象直接映射底层数据仓库。报表开发人员只要将这些对象拖入报表模板即可生成报表。

BO的实现不知道哪位高手能描述描述?

On Jan 7, 11:48 pm, daiyan <daiyani...@gmail.com> wrote:
> 对你这个回答很干兴趣,能否烦请稍微详细解释一下?谢谢:)
>
> 我这里所要描述的是打破一张报表限制的自由组合和定制分析,并能由业务用户随意保存定制结果(类似于Cognos 8里面的各种Stdio组件自定义一
> 个报表后保存,这个开发过程要求不需要IT直接介入,IT一旦直接介入就要求这种定制被提起设计并固定下来)。
>
> On 1月7日, 上午10时33分, 笨笨 <caozhen...@gmail.com> wrote:
>
>
>
> > "所以,根本解决之道就需要将开发-架构修改为"以指标为中心",业务用户"任意"选择指标和维度后点击一个按钮再生成所需报表,自由组合、自由定制、
> > 自由分析! "
>
> > 这个早就实现了~~
>
> > On Jan 7, 1:09 am, "代 严" <daiyani...@gmail.com> wrote:
>
> > > 在BI行业中的OLAP Reports应用中,默认(常见)的都是有若干同类指标(度量)和若干维度(指标所对应的关注角度)构成一张报表。
>

> > > 在一个相关应用年代已久的公司,这些报表都有不同的业务用户属主(业务公司或业务部门),报表相关的定义和变更均由该属主决定。随着时间的流逝,不同报表(甚至---是不同属主)之间可能出现类似名称的报表和相同或极度相似名称的指标----报表和指标对业务以其名称做标识----而这些报表的用户包含若干部门若干层级-的-若干个体,-假如譬如"指标字典"一样的辅助支持不到位,则用户面对这些不同报表中的同名指标将无比困惑,无法做出选择。
>
> > > 于是,业务用户开始了冥思苦想,问题到底出在哪里?除"指标字典"一类的辅助支持需要完善、指标定义(含体系)需要清理(整理)外,他们还发现令他们兴奋无比的---一点----根本原因:现有的开发是以报表为中心开发的,业务需要一个指标数据则必须到某个报表中取。并判断这正是一切问题的根源!所以,根本解决之道就需-要-将开发-架构修改为"以指标为中心",业务用户"任意"选择指标和维度后点击一个按钮再生成所需报表,自由组合、自由定制、自由分析!
>
> > > 我宁愿将这种愿景称作OLAP报表追求的"自由",喔,这里又出现了"报表"二字----按照业务方的"构想",在他们选择好自己喜欢的指标和维度之前并按下按--钮之-前,并不存在任何"报表"一类的概念。
>
> > > 如果为这种"自由"加一个"限度",那什么样的限度才是核心的呢?可能大家都会想:定义主题,在一个适当粒度的主题范围内实现这种自由。这含于DW的理论与实践---中,似乎有了支撑,目前我也只能这么去琢磨。
>
> > > 但是,如果这个粒度定义得非常大----这正是业务用户所强烈要求的,暂且不管其理性与否----产出品能否实现这种自由组合将首先面临IT技术上的门槛,譬如--如果维度-较多却某些维度使得数据难于有效汇总,则基于ROLAP实现在效率上将是个悲剧,因为很多一个指标(现有报表中的指标)的一段时间(几个月到一年,-再-长时间都只-能拆开)内的事实数据都是千万甚至轻易就过亿级;如果居于MOLAP,给用户提供多维立方体(CUBE)供其随意展现,这个CUBE的扩展性是-被首-先质疑的,同-时,大数据量带来的生成CUBE的效率和CUBE文件的大小也将是噩梦。
>
> > > 如果,这个粒度定义得比较细,恐怕就成为现有的报表了,甚至连外面的皮都不用换,那还不如就清理清理报表和指标的定义什么的即可----就不存在业务领导所要看--到的-将"以报表为中心"修改为"以指标为中心"的"颠覆性"(业务所需)的变化了,项目的意义也将不存在。


>
> > > 需要给这样的愿景加一些定义条件,使得项目可行。在大型数据仓库或者数据集市项目设计方面经验比较丰富的同行前辈们愿不愿意给出一些点拨?本人在此感激不尽。
>
> > > --
> > > ---------------------------------------------------------------
> > > ---DAI YAN BEST WISHES!- 隐藏被引用文字 -
>

> > - 显示引用的文字 -- Hide quoted text -
>
> - Show quoted text -

daiyan

unread,
Jan 8, 2009, 6:21:37 AM1/8/09
to ttnn BI 观点
对,我现在的需求就是如何满足这个需求。

目前我们和业务的沟通达不到我们在这里讨论这般超脱。但是Qing和interstage等几位提供的意见在理念上对我理解业务的真实需求很有启发。

xichen...@gmail.com

unread,
Jan 8, 2009, 10:21:20 PM1/8/09
to tt...@googlegroups.com
我们的客户也有类似要求。报表的用户是销售人员,销售人员在发现销售异常时,往往会需要从不同角度去分析才能发现问题的所在,即他需要可以自己随意拖拽维度和指标生成新的报表。
BO可以定义universe语义层,然后拖拽相应的维度和指标生成报表。universe的维度要定义很清晰才能实现这种灵活性,同时只能做一些简单的东西。
 
在09-1-8,daiyan <daiya...@gmail.com> 写道:

interstage

unread,
Jan 9, 2009, 3:48:14 AM1/9/09
to ttnn BI 观点
呵呵,我看明白,目前几大BI工具,还是通过IT部门定义纬度或指标(IT部门定义纬度或指标就是把业务人员的业务分析角度等同起来), 由业务部门拖
拽相应的维度和指标生成报表.也就是说业务分析角度定义还是在IT部门,和几年前是一样的. 这样,这个报表内涵的分析矛盾还是无法解决.只有业务分析
角度定义权在业务人员,才有可以解决这个问题.因为分析一定是业务人员的事情,而且分析往往涉及证实和证伪,这样报表的出现会很多,而有效的报表随着业
务变化会变化,很多无效的报表被沉没,这就是分析报表的内涵,而IT部门定义的业务分析角度,就限制出了业务人员的分析能力,他们只是基于固定业务分析
角度的灵活报表生成者,根本不是业务分析者.

Solo Zhu

unread,
Jan 9, 2009, 4:27:20 AM1/9/09
to ttnn BI 观点
说道问题的本质了。OLAP的出现的确解决了很多数据查询和报表获取的速度,但是他只是一个方式,OLAP中维度很重要,但是很多维度见还是有很强的业
务关联性的,比如产品和地区,产品和时间,还有业务人员和地区,时间,产品的关系。业务是活的,管理是活的,但是OLAP的结构,相对而言是固定的。
报表和数据统计的确能做得很好,也有很多人用,但是谈到衍生信息,我想报表就不一定能做到,衍生信息就是知道top10的产品,而且还要知道top10
相关产品的客户类型或者是其地理特点,或者是时间关联性,而这些是不能预定义的,如果指标和维度信息过多的话,分析和操作处理就变得困难。使用者也不一
定会用,所以操作定义需要业务关系。
所以在BI的项目中,如果工具具有语义层的话,比如BO的,最好能详细的对用户进行不定期的培训。如果别人使用效果很好,我想他不一定会说出来,毕竟企
业内也有竞争的,如果使用效果不好,他可能会提出来,我们就需要认真的考虑模型或者语义层的设计了。

Solo Zhu

unread,
Jan 9, 2009, 4:30:22 AM1/9/09
to ttnn BI 观点
还有有点就是主题,数据仓库的要素中就有主题的概念,而主题确实和业务相关的比较紧,所以存在一定的信息过滤。
Reply all
Reply to author
Forward
0 new messages