OLAP-在线分析处理

      OLAP工具就是商业智能BI吗?显然不是,但起码它是商业智能BI的范畴之一。关于OLAP的定义,并不是本文讨论的范围,这里想讨论的就是一个OLAP的前端展现工具,或者说解决方案。

      为什么要讨论前端展现呢?我们还是从OLAP的实际应用开始分析。企业在进行经营决策的时候,会产生大量的报表和汇报,进行大量的数据分析,从而得出提供决策支持的数据。有现象表明,频繁的进行数据分析和产生大量报表的一般都是业务部门,并且也只有业务部门确切的明白自己需要什么,而实际上,受制于技术门槛,这些工作以前全都是由IT部门人员用OLAP产品来完成的,而IT部门的技术人员是企业所有部门中最不熟悉使用报表工具的部门人员。

      OLAP报表产品最大的难点在哪里?目前报表工具最大的难点不在于报表的样式(如斜线等),样式虽较繁琐但并非本质困难。最根本的难点在于业务部门知道报表代表的真正含义,却不知道报 表的数据统计模型模型;而IT部门通过理解业务部门的描述,在数据库端进行设置数据统计模型,却对报表本身所代表的价值很难理解。这样的现状,导致报表工具无法两者兼顾,OLAP报表工具产品一直在数据模型设计层面(OLAP层面)和报表本身功能层面做出平衡。

      如果有这么一个工具,可以以一种非常平易近人的方式来访问多维数据库(因为事实上,IT技术人员可以非常完美的遵循技术规范来创建标准化的数据,而不用整天头疼如何作出漂亮的报表),那就为分析人员或高层管理人员带来了福音。InetSoft Style Intelligence就是这么一款产品。在这里我只想讨论它的解决方式,所以不再赘言它的种种功能,因为这毕竟不是广告,有兴趣进一步了解它的童鞋可以搜索。

      通过它,可以直接访问众多主流的OLAP产品:Microsoft SQLServer Analysis Service,Hyperion Essbase,SAP Netweaver,Mondrian。如过企业并没有配置任何一款OLAP产品,也没有关系,可以通过Style Intelligence包含的Data Modeler来创建ROLAP,它是一个从关系数据库里面直接抽取数据来模拟多维数据的工具。

      有了这些OLAP数据源,终端用户就可以像对待普通数据一样对待这些多维数据了。在Style Intelligence的Visual Analysis当中,提供了丰富的展现方式,有table、chart、gauge等,不一而足。用户可以直接选取某些维度(包括维度的任何一个层次)和度量值来展现,还可以把某一维度或层次当作条件,来做what-if的分析,就像普通的数据那么方便。这些做好的sheet可以导出成excel,ppt和word,当作报表使用,也可以嵌入到Dashboard中使用。在后续的文章中,会详细介绍Visual Analysis的奥妙之处。

      那么,这里又是如何做到让最终用户轻而易举的访问多维数据库的呢? 这还要归功于微软开发的MDX(Multi-Dimensional Express多维表达式)和参与制定的XMLA(XML for Analysis)规范,这成为了事实上的OLAP服务器和前端分析应用的数据传输标准。我们通过XMLA的discover方法,把多维数据库的所有维度(层次结构)和度量值,展现给了用户,于是用户可以自由地使用它们。在用户使用他们的时候,或者做what-if的分析的时候,我们根据已有的一套选择和条件公式,可以探测出用户想展现的具体Level和Measure,还有条件,我们会生成一棵条件树,综合所有这些数据,产生MDX语句,通过XMLA的execute方法执行MDX语句,并且通过我们的解析器来解析返回的xml结果,然后以内部定制的形式展现出来。

      如此一来,技术人员只要专注于建立数据模型,提供数据,无需关心终端展现。而对于真正了解业务的分析人员或管理人员的技术门槛又悄然降低了,因为现在数据对于他们来说显得很直观,于是问题似乎迎刃而解了。

OLAP(联机分析处理)。 什么是联机分析处理OLAP) 联机分析处理 (OLAP) 的概念最早是由关系数据库之父E.F.Codd于1993年提出的,他同时提出了关于OLAP的12条准则。 OLAP的提出引起了很大的反响,OLAP作为一类产品同联机事务处理 (OLTP) 明显区分开来。 当今的数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing)、联机分析处理OLAP (On-Line Analytical Processing)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。 OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。 下表列出了OLTP与OLAP之间的比较。 OLTPOLAP用户操作人员,低层管理人员决策人员,高级管理人员功能日常操作处理分析决策DB 设计面向应用面向主题数据当前的, 最新的细节的, 二维的分立的历史的, 聚集的, 多维的集成的, 统一的存取读/写数十条记录读上百万条记录工作单位简单的事务复杂的查询用户数上千个上百个DB 大小100MB-GB100GB-TB OLAP是使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。 OLAP的目标是满足决策支持或者满足在多维环境下特定的查询和报表需求,它的技术核心是"维"这个概念。 “维”是人们观察客观世界的角度,是一种高层次的类型划分。“维”一般包含着层次关系,这种层次关系有时会相当复杂。通过把一个实体的多 项重要的属性定义为多个维(dimension),使用户能对不同维上的数据进行比较。因此OLAP也可以说是多维数据分析工具的集合。 OLAP的基本多维分析操作有钻取(roll up和drill down)、切片(slice)和切块(dice)、以及旋转(pivot)、drill across、drill through等。 ·钻取是改变维的层次,变换分析的粒度。它包括向上钻取(roll up)和向下钻取(drill down)。roll up是在某一维上将低层次的细节数据 概括到高层次的汇总数据,或者减少维数;而drill down则相反,它从汇总数据深入到细节数据进行观察或增加新维。 ·切片和切块是在一部分维上选定值后,关心度量数据在剩余维上的分布。如果剩余的维只有两个,则是切片;如果有三个,则是切块。 ·旋转是变换维的方向,即在表格中重新安排维的放置(例如行列互换)。 OLAP有多种实现方法,根据存储数据的方式不同可以分为ROLAP、MOLAP、HOLAP
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值