2.1.3 电子表风格的公式
事实证明,世界上差不多一半的业务都是使用电子表格管理的。电子表格因为非集中性、易错性、整合困难以及不易于管理而声名狼藉。但为什么它还是业务管理中的一个关键组件呢?因为在电子表中创建公式非常直观。要计算指定产品占总量的百分比,只要指向产品单元格,添加一个除号(/),然后再指向汇总单元格就搞定了。对公式稍作修改,就可以复制公式计算任意产品的百分比。创建百分比公式时,无需顾虑汇总是怎样计算的,解决这个问题的办法是使用另一个公式,所以只要简单地使用结果就可以了。创建其他类型的公式也同样简单,例如按月增长、上一年同月以来的增长,以及其他许多有用的分析公式。很多很难单纯使用SQL创建的有用公式可以在电子表内很容易地创建。
但即使从电子表用户的角度来看,公式也有它固有的问题。电子表公式本性是二维的:含有数值的行和含有字符的列。如果想对一个不同的时间间隔复制相同的电子表——特别是有不同产品或日期的时间段,修改公式就显得非常笨拙。并且也很容易犯错:很难保证引用C12就是您想要从中取值的3月或4月。随着公式逐渐冗长和复杂,有时即使是公式的初始创建者都很难搞清楚它真正意味着什么。另外,用户往往会在公式的中间范围添加一个“调整过的”公式或常量,并且往往会忘记曾经做过这个修改。
从管理的角度来看,电子表还有个更大的问题:电子表中的公式都是关键“业务逻辑”,然而它们却散布在整个组织内。Rajif创建的增长计算可能与Sayoko创建的稍有不同,即使他们似乎(也很显然)使用的是相同的逻辑。
OLAP多维数据集中的公式有着电子表公式的诸多优点:创建公式时,可以引用整个多维数据集中的任何单元格,而不用考虑值是怎样计算出来的。
多数OLAP供应商都有他们专用的公式语言。即使支持XMLA规范中部分MDX查询的供应商也可能不完全支持所有的MDX公式。微软分析服务实现的MDX公式非常丰富。下面几个例子表明MDX公式比电子表公式更简单。
电子表公式中的引用是隐含的。在MDX中,公式中的引用都有具有含义的名称,所以不像电子表使用C14/D14那样,MDX会使用公式[Actual[]/[Budget]。
在电子表中,公式必须被显式复制到每个需要它的单元格。在MDX中,公式都被定义成通用性质。所以从一个显示500种产品的报表切换到一个只有50种产品的报表,只需要确保把公式应用到新的数据行即可。同样,如果创建了新的工作簿,例如新的地区,必须确保新工作簿上的公式都指向了适当的单元格。在MDX中,切换到新地区会自动地使用相同的通用公式。
电子表中的引用本质上是二维的,使用字母表示列,数字表示行。这从根本上限制了在公式中可以使用的维度个数。MDX引用使用了一种不受二维物理位置限制的结构(与几何坐标使用的类似),如果必要,它可以显式地包含很多维度。另外,MDX引用通过利用“当前”成员的概念来简化对多个维度的使用。把公式=C14/D14复制到同一工作表的多个工作簿中,公式将自动引用当前工作簿的相应单元格的数值;同样地,MDX公式[Actual]/[Budget]自动地使用当前时间段、当前部门或当前产品。
电子表公式并不知道自身与其他单元格的逻辑关系,它没有任何元数据信息。然而MDX公式可以利用多维数据集的元数据来计算电子表中很难计算的关系。例如,在电子表中可以很容易计算每个产品占总和的百分比,但很难计算出每种产品占它所在产品组的百分比。在MDX中,因为元数据包含层次关系的信息,所以在产品层次中计算“父分类百分比”将非常容易。
电子表公式只可以引用同一工作簿(或者同一工作表的另一个工作簿)中的值。而MDX公式可以引用整个多维数据集空间的任何数值。这使您可以创建“冒泡”(bubble-up)或异常公式。一个“冒泡”异常公式的示例为一个在地区层次显示销售总额,但如果某个地区的管辖区明显地低于目标时则以红色显示数值的报表。即使管辖区不出现在报表上也会产生这种结果。
以上只是对MDX公式在哪些方面比电子表公式更强大的一个初步解释。另外,MDX公式存储在服务器,这就把业务逻辑放到了一个集中的、可管理的位置,而不是把业务逻辑分散到上百个单独的电子表中。
| 回书目 上一节 下一节 |
|
· Linux结课考试自测获奖.. · 上周Linux系统命令的使.. · 上周真题冲刺测试获奖.. · 全国计算机等考四级模.. · 08年3月各大网上书店及.. · 网络工程师模拟测试获.. |
· 全国计算机软考考试指.. · 3月24日WCF聊天活动 积.. · 全国计算机等级考试四.. · 软件项目估计:第2版 · 系统分析师基础知识自.. · 构建可扩展的Web站点的.. |
|
||||
| · 微软出价446亿美元收购.. · 2008年上半年全国软考.. · LAMP技术精解 · ARP攻击防范与解决方案 · 企业数据恢复指南 · 技术人求职简历完备手册 · Apache技术专题 · 三层交换技术专题 |
· 首届中国IT工程师生态.. · 视频访谈:网管员如何踏.. · Linux——从菜鸟到高手 · 交换机故障解决指南 · OSPF路由协议专栏 · 勇闯IT培训黑色围城 · 见证中国网络安全二十年 · 华为员工自杀频频拷问.. |
|||
|
||||
| · SQL Server 2008/2005.. · SOA 面向服务架构 · SQL Server 2008/2005.. · iSCSI应用与发展 · RAID——磁盘阵列基础 · Apache技术专题 · 中间件应用技术专题 · 三层交换技术专题 |
· SQL Server入门到精通 · Apache技术专题 · 国际文档格式标准开战 · 路由器设置与口令恢复 · 打造安全服务器 · SOA 面向服务架构 · PHP开发应用手册 · 企业数据恢复指南 |
|||
|
||||
| · iSCSI应用与发展 · 中间件应用技术专题 · SQL Server入门到精通 · SQL Server 2008/2005.. · SOA 面向服务架构 · Apache技术专题 · iSCSI应用与发展 · 三层交换技术专题 |
· Apache技术专题 · RAID——磁盘阵列基础 · 企业数据恢复指南 · 路由器设置与口令恢复 · SOA 面向服务架构 · ADSL应用面面俱到 · ADSL应用面面俱到 · PHP开发应用手册 |
|||