...
6、右键点击"Add Dimension"添加时间维,设置名称、指定事实表外键(时间外键pad_date)和维度类型,时间维必须指定为"TimeDimension"
...
7、修改Hierarchy的名称
...
8、右键添加维表,并选择维表time_by_day
...
9、设置Hierarchy的主键为时间维表的主键the_date。
...
10、右键新建层次,设置名称为"年",column为"the_year",namecolumn为"the_year",levelType必须设置为"TimeYears"
...
11、同理,建"季"和"月"两个层次,并设置相关名称、column和namecolumn,levelType分别为"TimeQuarters"和"TimeMonths"
...
12、同理新建"部门维",部门为普通维度,type为"StandardDimension"
...
13、同理,新建商店维的层次,并做好与维表的字段对应设置
...
14、同理新建"雇员维",雇员为父子维度,type为"StandardDimension"
...
15、添加雇员维表
...
16、新建雇员层次,雇员是父子维,只有一个level,设置colunm、namecolumn、parentcolumn和nullparentvalue。
这里parentColumn 和nullParentValue是重要的属性: 属性parentColumn 是一个成员连接到它父亲成员的列名。在这种情况下, 它是指向雇员经理的外键。元素<Level>的子元素 <ParentExpression> 是与属性 parentColumn 有相同作用的,但是元素允许定义任意的SQL表达式, 就像元素 <Expression>. 属性 parentColumn (或者元素<ParentExpression>) 是维一向Mondrian指出层次有父子结构的。 属性 nullParentValue 是指明成员没有父成员的值 。 缺省情况下 nullParentValue="null", 但是因为许多数据库不支持null, 建模时 用其他值来代替空值,0和-1.
...
17、右键点击"Add Measure"新建度量
...
18、设置度量名称、对应事实表的字段、聚合规则
...
19、保存cube模型
...
20、保存成功后,用文本编辑器打开该xml文件,加入xml头<?xml version="1.0" encoding="UTF-8" ?>
...
2.3 上传cube模型
...
1、打开IE,在地址栏中输入地址:http://localhost:8080/mondrian/manager/
...
以本文档中mysql为例:2、输入名称、描述、jdbc驱动字符串、jdbcurl地址、数据库的用户密码和选择cube模型文件。以本文档中mysql为例:
jdbc驱动字符串:
代码块 | ||
---|---|---|
| ||
com.mysql.jdbc.Driver |
URL地址:jdbcURL地址:
代码块 | ||
---|---|---|
| ||
jdbc:mysql://localhost:6688/foodmartcn?useUnicode=true&characterEncoding=GBK |
...
3、点击"新建",完成cube模型上传