修改客户维度

可通过多种不同的方式提高立方体中维度的可用性和功能。 在本主题的任务中,您将修改客户维度。

重命名属性

可以使用维度设计器的 “维度结构 ”选项卡更改属性名称。

重命名属性

  1. 切换到 维度设计器 来处理 SQL Server Data Tools(SSDT)中的客户维度。 为此,请在解决方案资源管理器的“维度”节点中双击“客户”维度。

  2. “属性 ”窗格中,右键单击 “英语国家/地区名称”,然后单击“ 重命名”。 将属性的名称更改为 Country-Region.

  3. 以相同的方式更改以下属性的名称:

    • 英语教育 属性 - 更改为 Education

    • 英语职业 属性 - 更改为 Occupation

    • State Province Name 属性 - 更改为 State-Province

  4. 在“文件” 菜单上,单击“全部保存” 。

创建层次结构

可以通过将属性从 “属性 ”窗格拖动到 “层次结构 ”窗格来创建新层次结构。

创建层次结构

  1. Country-Region 属性从 “属性 ”窗格拖到“ 层次结构 ”窗格中。

  2. State-Province属性从“属性”窗格拖到<层次结构窗格中的“层次结构”窗格中的新级别>单元格中,位于Country-Region级别下方。

  3. 城市属性从属性窗格拖动到层次结构窗格中的新级别单元格中,位于State-Province级别下方。

  4. “维度结构”选项卡的“层次结构”窗格中,右键单击层次结构层次结构的标题栏,选择“重命名”,然后键入Customer Geography

    层次结构的名称现在为Customer Geography

  5. 在“文件” 菜单上,单击“全部保存” 。

添加命名计算

可以将命名计算(即表示为计算列的 SQL 表达式)添加到数据源视图中的表。 表达式作为表中的列来显示和表现。 命名计算允许在数据源视图中扩展现有表的关系架构,而无需修改基础数据源中的表。 有关详细信息,请参阅 数据源视图中的“定义命名计算”(Analysis Services)

添加命名计算

  1. 通过在解决方案资源管理器的“数据源视图”文件夹中双击它,打开 Adventure Works DW 2012 数据源视图。

  2. 在左侧的“ ”窗格中,右键单击“ 客户”,然后单击“ 新建命名计算”。

  3. 在“创建命名计算”对话框中,键入FullName“列名称”框,然后在“表达式”框中键入或复制并粘贴以下CASE语句:

    CASE  
       WHEN MiddleName IS NULL THEN  
       FirstName + ' ' + LastName  
       ELSE  
       FirstName + ' ' + MiddleName + ' ' + LastName  
    END  
    

    CASE 语句将 FirstNameMiddleNameLastName 列连接在一个列中,你将在 Customer 维度中用作 Customer 属性的显示名称。

  4. 单击“确定”,然后在“表”窗格中展开“客户”

    在 Customer 表中的列列表中,命名计算 FullName 显示,并带有一个图标,表示它是命名计算。

  5. 在“文件” 菜单上,单击“全部保存” 。

  6. 在“ ”窗格中,右键单击“ 客户”,然后单击“ 浏览数据”。

  7. 查看 “浏览客户表 ”视图中的最后一列。

    请注意,该 FullName 列显示在数据源视图中,正确连接基础数据源中的多个列中的数据,而无需修改原始数据源。

  8. 关闭 “浏览客户表 ”选项卡。

对成员名称使用命名计算

在数据源视图中创建命名计算后,可以使用命名计算作为属性的特性。

对成员名称使用命名计算

  1. 切换到“客户”维度的维度设计器。

  2. “维度结构”选项卡的“属性”窗格中,单击“客户密钥”属性。

  3. 打开“属性”窗口,然后单击标题栏上的 “自动隐藏 ”按钮,使其保持打开状态。

  4. “名称 ”属性字段中,键入 Full Name

  5. 单击底部的 NameColumn 属性字段,然后单击“浏览”按钮打开“ 名称列 ”对话框。

  6. “源”列列表底部选择FullName,然后单击“确定”。

  7. 在“维度结构”选项卡中,将Full Name属性从“属性”窗格拖动到<“层次结构”窗格中的新级别>单元格(位于“城市”级别下)。

  8. 在“文件” 菜单上,单击“全部保存” 。

定义显示文件夹

可以使用显示文件夹将用户和属性层次结构分组到文件夹结构中,以提高可用性。

定义显示文件夹

  1. 打开客户维度的 维度结构 选项卡。

  2. “属性 ”窗格中,单击每个属性时按住 Ctrl 键,选择以下属性:

    • Country-Region

    • 邮政编码

    • State-Province

  3. 在“属性”窗口中,单击顶部的 AttributeHierarchyDisplayFolder 属性字段(可能需要指向它以查看全名),然后键入 Location

  4. 在“ 层次结构 ”窗格中,单击 Customer Geography,然后在右侧的“属性”窗口中,选择 LocationDisplayFolder 属性的值。

  5. “属性 ”窗格中,单击每个属性时按住 Ctrl 键,选择以下属性:

    • 通勤距离

    • Education

    • 房屋所有者标志

    • 婚姻状况

    • 拥有的汽车数

    • 家庭儿童数

    • Occupation

    • 儿童总数

    • 年收入

  6. 在“属性”窗口中,单击顶部的 AttributeHierarchyDisplayFolder 属性字段,然后键入 Demographic

  7. “属性 ”窗格中,单击每个属性时按住 Ctrl 键,选择以下属性:

    • 电子邮件地址

    • 电话

  8. 在“属性”窗口中,单击 AttributeHierarchyDisplayFolder 属性字段并键入 Contacts

  9. 在“文件” 菜单上,单击“全部保存” 。

定义复合键列

KeyColumns 属性包含表示属性键的列或列。 在本课中,你将为 CityState-Province 属性创建一个组合键。 需要唯一标识属性时,复合键非常有用。 例如,在本教程的后面部分定义属性关系时, City 属性必须唯一标识属性 State-Province 。 但是,在不同的州,可能有多个具有相同名称的城市。 因此,你将创建由 City 属性的 StateProvinceNameCity 列组成的组合键。 有关详细信息,请参阅 修改特性的 KeyColumn 属性

为 City 属性定义复合键列 (KeyColumns)

  1. 打开客户维度的维度结构选项卡。

  2. 在“ 属性 ”窗格中,单击 “城市 ”属性。

  3. “属性” 窗口中,单击底部附近的 KeyColumns 字段,然后单击浏览(...)按钮。

  4. “键列”对话框中的“可用列”列表中,选择StateProvinceName列,然后单击>按钮。

    CityStateProvinceName 列现在显示在“键列”列表中。

  5. 单击 “确定”

  6. 若要设置 City 属性的 NameColumn 属性,请单击“属性”窗口中的 NameColumn 字段,然后单击“浏览”按钮

  7. 在“ 名称列 ”对话框中的 “源”列 列表中,选择“ 城市”,然后单击“ 确定”。

  8. 在“文件” 菜单上,单击“全部保存” 。

为 State-Province 属性定义组合关键列

  1. 确保“客户维度”的维度结构选项卡处于打开状态。

  2. “属性 ”窗格中,单击该 State-Province 属性。

  3. “属性”窗口中,单击“KeyColumns”字段,然后单击“浏览”...按钮。

  4. “键列 ”对话框中的 “可用列 ”列表中,选择列 “EnglishCountryRegionName”,然后单击 > 该按钮。

    EnglishCountryRegionNameStateProvinceName 列现在显示在“键列”列表中。

  5. 单击 “确定”

  6. 若要设置 State-Province 属性的 NameColumn 属性,请在“属性”窗口中单击 NameColumn 字段,然后单击“...”按钮。

  7. 在“ 名称列 ”对话框中的 “源列 ”列表中,选择 StateProvinceName,然后单击“ 确定”。

  8. 在“文件” 菜单上,单击“全部保存” 。

定义属性关系

如果基础数据支持它,则应定义属性之间的属性关系。 定义属性关系可加快维度、分区和查询处理速度。 有关详细信息,请参阅 “定义属性关系 ”和 “属性关系”。

定义属性关系

  1. 客户维度设计器中,单击属性关系选项卡。可能需要等待。

  2. 在关系图中,右键单击 City 属性,然后单击“ 新建属性关系”。

  3. 在“ 创建属性关系 ”对话框中, 源属性City。 将 相关属性 设置为 State-Province

  4. “关系类型” 列表中,将关系类型设置为 “刚性”。

    关系类型为 “刚性 ”,因为成员之间的关系不会随时间而改变。 例如,城市成为不同州或省的一部分会很不寻常。

  5. 单击 “确定”

  6. 在关系图中,右键单击该 State-Province 属性,然后选择“ 新建属性关系”。

  7. 在“ 创建属性关系 ”对话框中, 源属性State-Province。 将 相关属性 设置为 Country-Region

  8. “关系类型” 列表中,将关系类型设置为 “刚性”。

  9. 单击 “确定”

  10. 在“文件” 菜单上,单击“全部保存” 。

部署更改、处理对象和查看更改

更改属性和层次结构后,必须先部署更改并重新处理相关对象,然后才能查看更改。

若要部署更改,请处理这些对象并查看更改。

  1. 在 SQL Server Data Tools 的“构建”菜单上,单击“分析服务教程部署”

  2. 收到“部署成功完成”消息后,单击客户维度的“浏览器”选项卡,然后单击设计器工具栏左侧的“重新连接”按钮。

  3. 验证Customer Geography是否已在“层次结构”列表中选中,然后在浏览器窗格中依次展开“全部”、“澳大利亚”、“新南威尔士”和“Coffs Harbour”。

    浏览器显示城市中的客户。

  4. 切换到 多维数据集设计器,用于 Analysis Services 教程多维数据集。 为此,请在解决方案资源管理器多维数据集节点中双击 Analysis Services 教程 多维数据集。

  5. 单击 “浏览器 ”选项卡,然后单击设计器工具栏上的“重新连接”按钮。

  6. “度量值组 ”窗格中,展开 “客户”。

    请注意,仅显示文件夹和没有显示文件夹值的属性会显示在 Customer 下方,而不是长列表属性。

  7. 在“文件” 菜单上,单击“全部保存” 。

课程中的下一个任务

修改产品维度

另请参阅

维度属性参考
从维度中删除属性
重命名属性
在数据源视图中定义命名计算(分析服务)