Mondrian: OLAP的威力就在你的指尖

Pentaho Analysis (即 Mondrian) 是一个强大的 OLAP工具。它可以封装任何JDBC数据源并且把数据以多维的方式展示出来。已经有很多文档介绍如何把Mondrian与一个数据库连接在一起, 以及如何定义 Mondrian.xml 这个schema 文件等等。

使用一个来自MDX的连接并不总是很容易的… MDX有多强大呢? 为什么我要用MDX来做多维分析而不是用SQL? 为什么不是在我的事实表里创建其它的指标来支持查询,而是使用MDX? 这里我就不多说MDX这个语言表达式的好处了。因为关于MDX已经有很多书和文档资源。

可以说MDX使得某些分析查询(年到天,部分到全部,现在与过去对比)很容易… 有时候是令人尴尬的容易,对比我们一贯使用在纯"星型模型关系和SQL group by"领域.

让我们创建一个自定义的MDX 指标,并在后面使用它。我将展示如何在Mondrian里毫不费劲地为你的最终用户提供多维分析。


  1. 下载最新的Pentaho预配置版本(DEMO):
    http://www.pentaho.org/download/latest.html
  2. 解压到你本地的机器上的某个目录 (我们这里暂时把这个目录称为$PROOT).
  3. 双击 "$PROOT/pentaho-demo/start-pentaho.bat." 当你看到 "Pentaho BI Platform Ready"时,Pentaho平台就准备好了。(译者注:如果是中国的用户,可能会在控制台上看到Pentaho BI???????.。这是Pentaho的一个bug。目前正在与Pentaho协商解决)
  4. 打开浏览器,并输入URLhttp://localhost:8080, 应该会看到下面的页面

pentaho mondrian sample pictures

  1. 然后点击“演示程序集合”


pentaho mondrian sample pictures

  1. 找到多维分析例子, 然后点击它

pentaho mondrian sample pictures

然后继续点击

pentaho mondrian sample pictures

7. 你现在可以看到Jpivot应用程序,它将允许你在一个web浏览器上浏览和创建OLAP报表

8. (可选步骤) 如果你有时间,你可以任意探索Jpivot图形界面, 一个不错的探索点是CUBE NAVIGATOR()。它将提供一个非常好的图形方式来浏OLAP cubes: 在上面作一些修改,然后点击OK ,这将使得下面的报表发生变化(译者注:这里把Positons指标过滤掉了)。变化后的报表
pentaho mondrian sample pictures

  1. 点击MDX以便打开MDX编辑器窗口

10. 粘贴下列MDX MDX编辑器里面,然后点击APPLY:

select NON EMPTY {[Measures].[Actual]} ON COLUMNS,
NON EMPTY Hierarchize(Union({[Positions].[All Positions]}, [Positions].[All Positions].Children)) ON ROWS
from [Quadrant Analysis]

你将看到像下面这样的报表:

  1. 我们这看到的是根据position(职位)汇总的所有员工的实际费用 (, 薪水费用) 表。对于善于计算的人来说,这个汇总图是不错的。但分析人员和管理者的兴趣是"它在我的整个企业里所占的比例?" 换句话来说, 花费¥1,211,073.00HR Training比不上我花在HR Training上所占的百分比%那么重要。让我们在前面的MDX语句前添加下列的计算member:
    with member [Measures].[Position Percent of Total] as ‘([Measures].[Actual] / ([Measures].[Actual], [Positions].CurrentMember.Parent))’, format_string = "|#.00%|"
    点击 APPLY ,然后关闭 MDX编辑器 (点击红色的X或者MDX 按钮).

我们下面要做的是使用MDX创建一个计算指标. MDX非常强大,所以我建议你们看看一些 MDX书籍或文档资料,以便充分探索它的能力。

  1. 现在我们要添加一个全新的计算指标到报表上。点击cube navigator, 然后点击"Measures" ,再点中 我们刚创建的指标:
    你将需要点击两次OK才能回到报表视图.
  2. 如果一切正常, 你将会看到下列带有你自定义MDX指标的报表:

很好, 对于技术人员和影编码的业务分析人员来说这太容易了, 但我们永远不会想让我们的最终用户自己去配置所有这些东西,对最终用户来说,这些都太困难了。我们怎么能够让最终的用户缓冲这些复杂性呢?这将在下一篇文章里介绍如何在Mondrian配置一个计算member.

下面是一个基于我们上面的百分比的饼图:

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值