Mondrian-Schema4.0结构梳理文档

Mondrian-Schema结构梳理文档

注意:主要对mondrian下的foodmart4.xml 对属性和结构整理梳理。针对schema3.0与schema4.0的区别。Foodmart4.xml结构主要以schema4.0为主构建的,schema3.0可以参考workbench下的foodmart.xml结构。

1.schema头部标识

在构建schem4.0时必须标识metamodelVersion='4.0',否则按照schem3.0识别操作。

2.PhysicalSchema 物理schema定义

注意:物理schema里面主要定义一些实时表和维表,以及关联关系,以及格式化等进行初始化操作工作。里面使用的实时表和维表必须在这块定义,否则报错。

下面详细对物理schema内容梳理分析,如图:

  • 定义employee表和posistion表并指定各自的主键信息
  • 通过link属性对employee表和posistion表进行关联操作,source指的是源表(主表),target指的是目标表(外表)
  • 通过计算列来操作自己想要的结果数据,ConumnDefs是关键属性。其中CalculatedColumnDef的name属性和你创建的计算列也就是度量里面的column值保持一致。如图:

  • 如果是格式化操作维度,通过nameColumn来进行关联操作。如图:

a.在物理schema定义格式化操作,name=”full_name”

b.在维表中进行引用操作,nameColumn=”full_name”

3.cube里面的实时表和维表进行梳理

A、维度

下面主要对单个cube进行结果分析,如图:

Cube主要有两大部分组成,维度集合和度量组。Dimensions和MeasureGroups。

  • Dimension中的name属性相当是id作用,key表示主键的概念
  • Attributes属性集合,充当维表整个字段的概念。
  • Attribute 相当是对每个字段表示作用,其中包括name属性描述,table对应物理表名称,keyColumn对应物理表中的字段名称,
  • Hierarchies层次集合,Hierarchy层级的name名称,allMemberName表示全部成员名称,Level表示级别,attribute对应Attribute 的name属性。
  • Datatype 数据类型,默认类型是String
  • orderByColumn定义成员顺序的列。如果未指定,则使用属性键。
  • Dimension维表中还有一种是引入共享维度概念,通过source来使用。
  • 其中雪花模型的使用,在foodmart4中类似维表中直接嵌入该维表的属性即可,如图:

前提是维表和维表的关系,必须在物理schema中描述清楚,并定义好才行。

2.度量

度量这块主要描述该维表的所有度量,以及实时表和维表所关联的外键描述。如图:

  • 首先是MeasureGroups度量集合概念,这块和维度集合差不多是一个概念,都是表示描述相同维度或度量的总成。
  • MeasureGroup度量组包括name属性,以及table物理表名称
  • Measure度量主要描述物理字段属性,name名称,colum物理字段名称,aggregator聚合函数,formatString计算结果的显示格式。其中聚合函数包括允许的值是“sum”,“count”,“min”,“max”,“avg”和“distinct-count”格式化。
  • Datatype属性,数据类型,默认值是:Numeric这块可以省略。
  • DimensionLinks度量链接组属性,主要描述实时表和维表之前的关系。其中使用ForeignKeyLink来具体描述实时表和那些维表存在主外键关系,dimension表示维表的名称,和维表(Dimension)中的name对应。foreignKeyColumn表示所对应的外键值。(这块也就是星星模型的描述关系)
  • 计算成员也是在度量组这块来完成的,通过CalculatedMembers计算成员组来描述各各计算成员的属性值,通过CalculatedMember来具体实现,name表示计算成员的起个名称,dimension='Measures'这块是默认值,formatString计算结果的显示格式,formula公式书写位置。这块的公式主要是通过mdx语句来实现的。
  • 计算成员可以通过层级来实现,hierarchy里面使用mdx语法实现,Formula公式也是mdx语句来实现的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值