您的位置:首页 > 数据库

维度层次理解

2012-02-22 16:18 211 查看
本文根据阅msdn后个人理解,不保证正确性~~~

有问题欢迎互相讨论

一、维度层次(Dimensionhierarchies)

 

         维度层次是描述维度内部结构的属性集合,它刻画了维度内部不同成员间的相对关系。

        

在多维数据库中,每个维可以有其自身的维度层次结构。考虑这样一个商业销售用多维数据库,它含有4个维度,分别为产品维,客户维,时间维,仓库维。对于时间维,可以有“年--季度--月份”这样一个层次,而对于产品维,也可以有“产品类别--品牌--产品名”这样一个层次。

 

         层次结构有时用金字塔结构来表示,唯一例外是所有成员都在同一个层次。如金字塔结构一样,在塔顶,即维度层次较高方,其成员数量比塔底,即维度层次较地方的成员数量要少。如在一个地理维度中,它包含层次“洲—国家—城市”,“欧洲”属于“洲”层次,“法国”属于“国家”层次,而“巴黎”属于“城市”层次。显而易见,属于“洲”层次的成员数量少于属于“国家”层次的成员数量,而属于“国家”层次的成员数量亦少于属于“城市”层次的成员数量。同时,层次越高,描述性越模糊,层次越低,描述性越细致。如上述所提及地理维度,“欧洲”的描述性比“法国”的描述性模糊,而“法国”的描述性也比“巴黎”的描述性要模糊。

 

二、均衡和不均衡层次(balancedand unbalanced hierarchies)

 

         可以考虑层次结构就是一棵树结构,均衡层次结构则是指树中每一层中从某个节点起至叶子的每棵子树高度一致,而不均衡层次结构则是指树中每一层中从某个节点起至叶子的并非每一棵子树高度都一致。根据msdn说法就是均衡层次结构中每个分支成员都会降到同一个级别层次,而不均衡层次结构则不一定。

         举例说明,在一个产品维度中 (以FoodMart2000 的Product维举例),它含有“产品类别—品牌—产品名”这样一个层次,每一个在“产品名”的成员都有一个父亲成员在“品牌”层次中,而每一个在“品牌”层次中的成员都有一个父亲成员在“产品类别”层次中。所以这个产品维度是一个均衡层次结构。而在一个机构维度中,它包含了一个机构的所有人员。“CEO”是这个维度的最高层,而其分支层则是“部门经理”和“执行秘书”。而另外部门经理下还可以有“下属”一分支层,但“执行秘书”则没有分支。所以这个机构维度是一个不均衡层次结构。

 

         以下以两个树形结构来表示均衡和不均衡结构。左图为均衡层次结构树形表示图,右图为不均衡层次结构树形表示图。

              


三、不齐整层次(raggedhierarchies)

        

         当层次结构中某个层次成员隶属他的下一级别相对于他至少相差2个级别以上,则称为不齐整层次结构。下图是一个不齐整层次结构树形示意图。

         那之前提到的地理维度来举例说明,它包含层次“洲—国家—城市”,“欧洲”属于“洲”层次,“法国”属于“国家”层次,而“巴黎”属于“城市”层次。现在对这个维度继续进行如下操作:

l  将梵蒂冈加入“国家”层次

l  将属于梵蒂冈的城市加入到“城市”层次

l  在“国家”和“城市”层次间添加一个名为“省份”的层次

省份对于很多国家都是有的,所以国家内不同城市属于不同省份这个层次关系是存在的。但对于梵蒂冈这个国家,它是没有省份的,所以属于“城市”层次级别的成员直接隶属于“国家”层次级别,跳过了“省份”这个层次级别,所以这时这个地理维度则是一个不齐整层次结构。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  产品 数据库