指定用户定义层次结构中属性之间的属性关系

您已了解本教程中的内容,现在可以将属性层次结构组织到用户层次结构内的级别中,以便在多维数据集中为用户提供导航路径。用户层次结构可以表示自然层次结构(如市/县、州/省/自治区和国家/地区),或者可以只表示导航路径(如雇员姓名、职务和部门名称)。对于在层次结构中导航的用户而言,这两类用户层次结构是相同的。

使用自然层次结构时,如果您在构成级别的属性之间建立了属性关系,则 Microsoft SQL Server 2005 Analysis Services (SSAS) 可以使用某个属性的聚合来获取相关属性的结果。如果属性之间没有定义的关系,则 Analysis Services 将根据键属性来聚合所有非键属性。此外,您也应该了解,在定义这样一种关系时,可以将关系指定为弹性关系或刚性关系。如果您将关系定义为刚性,则 Analysis Services 会在更新维度时保留聚合。如果定义为刚性的关系在实际过程中发生了更改,那么除非维度得到了完全处理,否则 Analysis Services 将在处理过程中生成错误。指定适当的关系和关系属性,可提高查询和处理性能。有关详细信息,请参阅定义和配置属性关系配置用户定义层次结构属性

在本主题的各个任务中,您将为 Analysis Services Tutorial 项目的自然用户层次结构中的属性定义属性关系。这些层次结构包括“客户”维度中的“客户所在地域”层次结构、“销售区域”维度中的“销售区域”层次结构、Product 维度中的“产品型号系列”层次结构以及“时间”维度中的“会计时间”和“日历时间”层次结构。这些用户层次结构全部都是自然层次结构。

为“客户所在地域”层次结构中的属性定义属性关系

为“客户所在地域”层次结构中的属性定义属性关系

  1. 切换到“客户”维度的维度设计器,然后单击**“维度结构”**选项卡。

    在**“层次结构和级别”窗格中,请注意“客户所在地域”**用户定义层次结构中的级别。此层次结构当前只是用户的向下钻取路径 - 并未在级别或属性之间定义任何关系。

  2. 在**“属性”窗格中,展开“地域”**。

    请注意,其中有四个属性关系,用于将 Geography 表的非键属性链接到 Geography 表的键属性。

  3. 在**“属性”窗格中,展开“全名”**。

    请注意,“地域”属性与“全名”属性相关。另请注意,“邮政编码”属性是通过“地域”属性间接链接到“全名”属性的,因为“邮政编码”链接到“地域”属性,而“地域”属性链接到“全名”属性。

  4. 将**“邮政编码”属性关系从“地域”属性拖至“全名”属性的“<新建属性关系>”**标记。

    “邮政编码”属性现在与“全名”属性直接相关。在“属性”窗口中,请注意,此特性的 RelationshipType 属性设置为 Flexible。这是正确的,因为客户与邮政编码之间的关系可能会随着时间的推移而更改。

  5. 在**“属性”窗格中,展开“邮政编码”**属性。

    “市/县”属性当前通过“地域”属性与“邮政编码”属性相关,而不是直接相关。

  6. 将**“市/县”属性关系从“地域”属性拖到“邮政编码”属性的“<新建属性关系>”**标记。

    “市/县”属性现在与“邮政编码”属性直接相关。在“属性”窗口中,请注意,此特性的 RelationshipType 属性设置为 Flexible。这是正确的,因为市/县与邮政编码之间的关系可能会随着时间的推移而更改。

  7. 在**“属性”窗格中,展开“市/县”**。

    “省/市/自治区”属性当前通过“全名”和“地域”属性与“市/县”属性相关。

  8. 将**“省/市/自治区名”属性关系从“地域”属性拖至“市/县”属性的“<新建属性关系>”**标记,然后将该属性关系的 RelationshipType 属性值更改为 Rigid

    该属性关系的 RelationshipType 属性值应设置为 Rigid,因为市/县与州/省/自治区之间的关系不会随着时间推移而更改。

  9. 在**“属性”窗格中,展开“省/市/自治区”,将“国家/地区 - 区域”属性关系从“地域”属性拖至“省/市/自治区”属性的“<新建属性关系>”**标记,然后将该属性关系的 RelationshipType 属性值更改为 Rigid

    该属性关系的 RelationshipType 属性值应设置为 Rigid,因为州/省/自治区与国家/地区区域之间的关系不会随着时间的推移而更改。

  10. 在**“属性”窗格中,删除“地域”**属性。

    该属性已不再需要。

ms166553.note(zh-cn,SQL.90).gif注意:
在本任务中,您学习的是将属性关系从“地域”属性移动到其他属性,而不是为每个属性都新建属性关系。定义多余的关系通常没有任何意义,而且会增加不必要的处理时间。

为“销售区域”层次结构中的属性定义属性关系

为“销售区域”层次结构中的属性定义属性关系

  1. 打开**“销售区域”维度的维度设计器,然后单击“维度结构”**选项卡。

  2. 在“层次结构和级别”窗格中,单击“销售区域”层次结构,然后展开**“销售区域所属地区”“销售区域所属国家”**。

    请注意,“销售区域组”直接链接到键属性“销售区域所属地区”,而不是链接到**“销售区域所属国家”**属性。

  3. 将**“销售区域组”属性关系从“销售区域所属地区”属性拖到“销售区域所属国家”属性的“<新建属性关系>”**标记。

    “销售区域组”现已链接到“销售区域所属国家”,而“销售区域所属国家”现已链接到“销售区域所属地区”。上述每个关系的 RelationshipType 属性都应设置为 Flexible,因为一个国家/地区内的区域分组可能会随着时间的推移而更改,并且国家/地区的分组可能也会随着时间的推移而更改。

    注意 您可以在“属性”窗格或“层次结构和级别”窗格中设置用户定义层次结构的属性关系。

为“产品型号系列”层次结构中的属性定义属性关系

为“产品型号系列”层次结构中的属性定义属性关系

  1. 打开 Product 维度的维度设计器,然后单击**“维度结构”**选项卡。

  2. 在**“属性”窗格中,展开“型号名称”属性和“产品名称”**属性。

  3. 将**“产品系列”属性关系从“产品名称”属性拖到“型号名称”属性的“<新建属性关系>”**标记。

    此属性关系的 RelationshipType 属性值应设置为 Flexible,因为产品系列与型号名称之间的关系可能会随着时间的推移而更改。

为“会计时间”层次结构中的属性定义属性关系

为“会计时间”层次结构中的属性定义属性关系

  1. 切换到**“时间”维度的维度设计器,然后单击“维度结构”**选项卡。

  2. 在**“属性”**窗格中,展开下列属性:

    • 日期
    • 月份名称
    • 会计季度
    • 会计半期
  3. 将**“会计季度”属性关系从“日期”属性拖到“月份名称”属性的“<新建属性关系>”**标记,然后将该特性的 RelationshipType 属性值设置为 Rigid

  4. 将**“会计半期”属性关系从“日期”属性拖到“会计季度”属性的“<新建属性关系>”**标记,然后将该特性的 RelationshipType 属性值设置为 Rigid

  5. 将**“会计年度”属性关系从“日期”属性拖到“会计半期”属性的“<新建属性关系>”**标记,然后将该特性的 RelationshipType 属性值设置为 Rigid

为“日历时间”层次结构中的属性定义属性关系

为“日历时间”层次结构中的属性定义属性关系

  1. 在**“属性”窗格中,展开“月份名称”“日历季度”“日历半期”**。

  2. 将**“日历季度”属性关系从“日期”属性拖到“月份名称”属性的“<新建属性关系>”**标记,然后将该特性的 RelationshipType 属性值设置为 Rigid

  3. 将**“日历半期”属性关系从“日期”属性拖到“日历季度”属性的“<新建属性关系>”**标记,然后将该特性的 RelationshipType 属性值设置为 Rigid

  4. 将**“日历年”属性关系从“日期”属性拖到“日历半期”属性的“<新建属性关系>”**标记,然后将该特性的 RelationshipType 属性值设置为 Rigid

为“地域”层次结构中的属性定义属性关系

为“地域”层次结构中的属性定义属性关系

  1. 打开“地域”维度的维度设计器,然后单击**“维度结构”**选项卡。

  2. 在**“属性”**窗格中,展开下列属性:

    • 市/县
    • 地域关键字
    • 邮政编码
    • 省/市/自治区
  3. 将**“市/县”属性关系从“地域关键字”属性拖到“邮政编码”属性的“<新建属性关系>”**标记。

    因为市/县内的邮政编码可能会随着时间的推移而更改,所以,该特性的 RelationshipType 相应的属性值为 Flexible

  4. 将**“省/市/自治区”属性关系从“地域关键字”属性拖至“市/县”属性的“<新建属性关系>”**标记,然后将该特性的 RelationshipType 属性值设置为 Rigid

  5. 将**“国家/地区 - 区域”属性关系从“区域关键字”属性拖到“省/市/自治区”属性的“<新建属性关系>”**标记,然后将该特性的 RelationshipType 属性值设置为 Rigid

  6. 将“区域关键字”属性设置为不可见、未优化和未排序。

  7. 部署 Analysis Services Tutorial 项目。

课程中的下一个任务

定义未知成员和空值处理属性

请参阅

其他资源

定义和配置属性关系
配置用户定义层次结构属性

帮助和信息

获取 SQL Server 2005 帮助