Mondrian系列(五)-深入维度、层次和级别(1)-映射维度和层次

1.映射维度和层次

维度和cube的联系通过有意义的列来连接,一个列在事实表中,另一个列在维表中。 元素有属性foreignKey属性,是在事实表中的列的名字, 元素有primaryKey属性。

如果层次有多个表,可以使用primaryKeyTable属性指定。

column属性定义了level的key。例子如下:


   
       

           
                customer.gender
           
       

           

父元素

属性

等效嵌套元素

描述

level的key
成员列 定义此level的成员名称的表达式,如果不指定,使用leve的key
排序列 定义成员顺序的表达式,如果不指定,使用level的key
说明列 格式化成员说明信息的表达式,如果不指定,使用level的name
父列 在父子层次中,表示子成员和父成员关系的表达式
计算度量值的SQL表达式(到SQL聚合函数的参数)
计算属性值的SQL表达式

 

1.1.关于uniqueMembers的设置

uniqueMembers属性用于优化SQL生成。如果你已经知道在维表中level列的值在这个层次的父级是唯一的,可以设置uniqueMembers=”true”,否则设置为"false”。例如时间维[Year].[Month]在[Month]这个level,应该设置uniqueMembers=”false”,因为同样的月可以出现在不同的年。在另一方面,假设有[Product Class].[Product Name]层次,你可以确保[Product Name]是唯一的,就可以设置uniqueMembers=”true”。如果并不能确定,则先设置为false。一般在最顶级,经常是设置为true,因为没有父层次。

1.2.highCardinality属性

这个属性通常用于告诉Mondiran在这个维度中有未定义的和大量的值,可以设置为true或false(默认)。当这个属性设置为真时,对整个维度数据全覆盖的活动不会执行。

0
0
猜你在找
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
快速回复 TOP
    个人资料
    Mondrian系列(五)-深入维度、层次和级别(1)-映射维度和层次_第1张图片
    wonder4
    • 访问:1213835次
    • 积分:15032
    • 等级:
    • 排名:第381名
    • 原创:432篇
    • 转载:100篇
    • 译文:19篇
    • 评论:186条
    文章分类
  • .Net和C#(2)
  • BI、数据仓库和数据挖掘(43)
  • IBM技术(6)
  • java理论与实践(97)
  • OO技术(14)
  • Oracle技术(162)
  • 原创(83)
  • 待翻译区(14)
  • 心情(66)
  • 测试技术(7)
  • 英语(9)
  • 过程和方法(17)
  • 项目(68)
    文章存档
  • 2015年09月(1)
  • 2015年04月(2)
  • 2014年12月(1)
  • 2014年11月(1)
  • 2014年10月(1)
  • 2014年08月(1)
  • 2014年06月(1)
  • 2014年03月(2)
  • 2013年11月(1)
  • 2013年08月(1)
  • 2013年07月(1)
  • 2013年06月(1)
  • 2013年05月(1)
  • 2013年03月(1)
  • 2013年02月(1)
  • 2013年01月(3)
  • 2012年12月(1)
  • 2012年11月(1)
  • 2012年10月(2)
  • 2012年08月(8)
  • 2012年07月(1)
  • 2012年06月(2)
  • 2012年05月(4)
  • 2012年04月(1)
  • 2012年03月(3)
  • 2012年02月(2)
  • 2011年12月(3)
  • 2011年10月(1)
  • 2011年09月(3)
  • 2011年08月(5)
  • 2011年07月(4)
  • 2011年04月(3)
  • 2011年03月(2)
  • 2011年02月(2)
  • 2010年12月(3)
  • 2010年10月(3)
  • 2010年09月(1)
  • 2010年08月(2)
  • 2010年07月(2)
  • 2010年06月(2)
  • 2010年05月(5)
  • 2010年04月(4)
  • 2010年03月(10)
  • 2010年02月(4)
  • 2010年01月(8)
  • 2009年12月(5)
  • 2009年11月(15)
  • 2009年10月(9)
  • 2009年09月(11)
  • 2009年08月(1)
  • 2009年07月(1)
  • 2009年06月(13)
  • 2009年05月(2)
  • 2009年04月(3)
  • 2009年03月(6)
  • 2009年02月(2)
  • 2009年01月(3)
  • 2008年12月(4)
  • 2008年11月(10)
  • 2008年10月(3)
  • 2008年09月(7)
  • 2008年08月(6)
  • 2008年07月(8)
  • 2008年06月(6)
  • 2008年05月(3)
  • 2008年04月(7)
  • 2008年03月(10)
  • 2008年02月(2)
  • 2008年01月(5)
  • 2007年12月(10)
  • 2007年11月(8)
  • 2007年10月(8)
  • 2007年09月(6)
  • 2007年08月(4)
  • 2007年07月(6)
  • 2007年06月(20)
  • 2007年05月(6)
  • 2007年04月(2)
  • 2007年03月(12)
  • 2007年02月(3)
  • 2007年01月(5)
  • 2006年12月(15)
  • 2006年11月(15)
  • 2006年10月(25)
  • 2006年09月(33)
  • 2006年08月(23)
  • 2006年07月(10)
  • 2006年06月(15)
  • 2006年05月(22)
  • 2006年04月(15)
  • 2006年03月(13)
  • 2006年02月(8)
  • 2006年01月(15)
    阅读排行
  • Oracle中锁定行的查找方法(186613)
  • KK音标和国际音标的对照(17896)
  • ORA-01830问题的解决(16956)
  • apache启动报错(98)Address already in use: make_sock: could not bind to address [::]:80(16433)
  • FICA是什么(15909)
  • 转换CLOB字段类型为VARCHAR2(14466)
  • ORA-02068: 以下严重错误源于 TO_XXXX.DW ORA-03135: 连接失去联系 问题的解决(13858)
  • ORA-01830问题的解决(12186)
  • 用P3P header解决iframe跨域访问cookie(11982)
  • ORA-06531: 引用未初始化的收集 的问题解决(11860)
    评论排行
  • PLSQL DEVELOPER中好用的textType插件(23)
  • apache启动报错(98)Address already in use: make_sock: could not bind to address [::]:80(10)
  • 使用JMX搭建WebLogic9监控软件(二)(5)
  • 转换CLOB字段类型为VARCHAR2(5)
  • java.lang.IllegalStateException: getWriter() has already been called for this response问题解决(5)
  • Mondrian系列(一)-Mondrian的四层架构(5)
  • JExcelAPI读写excel文件的例子。支持excel2003文件格式。(4)
  • 在父窗口操作iframe中的对象(4)
  • Mondrian系列(五)-深入维度、层次和级别(3)-Level显示和多层次结构(4)
  • 能吃的宝宝(4)
    推荐文章
    • *源码解析Android中AsyncTask的工作原理
    • * python绘制非常漂亮的图表
    • * 数据库性能优化之SQL语句优化
    • *Animation动画详解(七)——ObjectAnimator基本使用
    • * Chromium网页URL加载过程分析
    • * JavaScript “跑马灯”抽奖活动代码解析与优化(一)
    最新评论
  • java.lang.IllegalStateException: getWriter() has already been called for this response问题解决

    as763190097: 怎么我的加上这句话,还是不行?response.reset();sendMsg(request,re...

  • java.lang.IllegalStateException: getWriter() has already been called for this response问题解决

    l_w0510: O(∩_∩)O谢谢

  • PLSQL DEVELOPER中好用的textType插件

    leavin_q: 求 [email protected]

  • 给所有选择DB2作为cognos的content store受困扰的朋友们

    qq_30303901: 在哪里开始创建数据库呢?不懂 用 控制中心或命令行创建怎么创建~~~

  • java.lang.IllegalStateException: getWriter() has already been called for this response问题解决

    qq_28343753: 赞,SUPER赞

  • No persistence units parsed from {classpath*:META-INF/persistence.xml}问题解决

    u010799162: 还是不行啊

  • 你的组织为自动化测试做好准备了吗?

    huan_128: 值得学习,真是好东西

  • ORA-02064: 不支持分布式操作

    张雨露: 解决的方法呢?

  • java.lang.IllegalStateException: getWriter() has already been called for this response问题解决

    u012367513: 完美解决我的问题,赞

  • mmseg4j 1.9.1 + Solr 4.7.0 报错

    u013082133: 的顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶

    老婆
    • 老婆的链接 (RSS)
    朋友的blog
    • redbean的MSN空间
    • eygle老大的网站 (RSS)
    • DBA吧(目前已经关闭了,留个纪念吧)
    • bea论坛(目前已经关闭,留个纪念吧)
    • 非常好Oracle产品站
    • WebLogic爱好者网站,非常推荐
    • 我的独立blog

你可能感兴趣的:(Mondrian系列(五)-深入维度、层次和级别(1)-映射维度和层次)