- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Essbase计算函数
需求概述与OLAP基础
问题背景
在联机分析处理(OLAP)中,那些具有度量性质的数据,我们称之为指标。如购入、售出和销量这类数据。看下面这个例子:销售额、成本和利润是3个指标,通过销售额与成本可以计算出获得的利润;如此销售额和成本可看作基本数据,而利润可看作计算数据,因为它需要通过基本数据计算才能得到。在OLAP中,这类计算数据可以通过制定对应的计算规则来计算。
内容概要
介绍应用中处于中心地位的OLAP基础知识,包括数据大纲(outline),维度(dimension),粒度(member),代(generation)和层(tier)的概念。在计算规则部分,对常用的计算指标进行了分类,并对各种指标的计算作了通用方法的指导。对最常用的多个指标函数进行了讲解。
作为例子,从在工业产销存的应用中的相关的查询需求分析所需的计算指标进行了例示。
OLAP基础
什么是OLAP
联机分析处理(OLAP)的概念最早是由关系数据库之父E.F.Codd于1993年提出的。Codd认为联机事务处理(OLTP)已不能满足终端用户对数据库查询分析的需要,SQL对大数据库进行的简单查询也不能满足用户分析的需求。用户的决策分析需要对关系数据库进行大量计算才能得到结果,而查询的结果往往并不能满足决策者提出的需求。因此Codd提出了多维数据库和多维分析的概念,即OLAP。
维和维的结构(代与层)
观察数据的方面称为维,而观测的层次称作维的粒度(成员),比如从时间方面来考察数据,而观测的层次可以是天、月、季、年,所以时间可以看作是维,而天、月、季、年可以看作是时间维上的不同粒度。
维分为稀疏维和稠密维,也可以分为标准维和属性维。一般来说,在设计数据大纲时,指标维和时间维是具有特殊地位的标准维。
代和层表达了一个维的层次结构。
代是从上而下的方式来计算的,如时间维的第一个成员是年,那么年的代值为2,比年小一点的粒度如果是季,则季的代值是3,如此递加1,起始值为2。比如可以设计一个时间维(TIME),成员为年、季、月、旬、日,则日粒度代值为6;层与代计算的方向刚好相反。计算起始值是0,0层成员的父亲是第1层,由于计算方式的不同,就可以表示出结构不对称得数据大纲结构。
工业产、销、存应用
工业产销存应用的OLAP数据大纲设计
对工业产销存应用,OLAP数据大纲设计 (Outline)中使用了5个标准维度来存储工业产、销、存的数据,分别是指标维、时间维、区域维、产品名称维和产品生产企业维。MEASURES是指标维名称, TIME设计为时间维名称, I_PROVINCE代表区域, CIGARETTE 是卷烟产品维的名称,INDU表示工业企业维。
如图:(其他维度为属性维)
指标理解
什么是指标
需要度量的(measure)或账目的(account)数据名称。如生产量、销售额、支出货币等。同时关于它们的具有比较和统计意义的数据名称。如同期增长、利润额等。
指标分类
基本属性
存储分类
指标对应的数据值有3种存储类型,一般存储、动态计算不存储和动态计算并存储。
计算分类
一种是指数据源通过规则文件将数据直接载入,其实也就是不计算。这类数据可以作为计算其他数据的依据;
一种是子代到父代的汇总计算,存在多层结构时,比如观察时间维的数据,如果数据源中只有天的数据,OLAP就可以依靠指定的汇总方式,通过子代成员计算父代成员的数据,如你所想的,OLAP能够自动地将属于某个月下的所有天成员数据全部相加而得到月成员数据,这种计算由OLAP完成,无需定义计算规则;
一种是规则计算。 这种计算正是我们所称的计算规则。
计算规则类别
同期:(2006年3月跟2005年3月,年粒度相同)
明显地,同期计算是对时间维定义而言的。我们的同期是指在年粒度上相同。比如当前时间为3月,则它的同期量是指去年3月的数据。
累计
要求累计数据到当前时间的总值。比如月累计,年累计。
环比类
同在一个维度下的指标,它们之间的变化量和百分比等计算称作环比类计算。如利润额等计算。
时间
是指像库存这样的计算,前期的库存作为本期库存的起始值。一般来说,这类计算所计算的指标在意义上都具有历史性和不独立性。
以上组合
如同期累计,同期增加。
这类计算意义上是基础类型的组合,在计算规则编写是体现为简单嵌套。
规则设计
没有数据存储在任何成员下。在我们的例子中,对于每一个存储的数据,都是全部5个维度共同指定的。计算一个指定的值往往并没有提供所有5个维的信息,这是因为当前计算情景总作为默认参数。在OLAP具体计算时,它根据数据大纲结构迭代计算,所有5个计算维度在当前计算的信息是确定的。
在这里定义一下关于当前成员(current member)的意义,当前成员在每一个维上对应着具体的成员。
文档评论(0)