定义链接度量值组
链接度量值组基于同一数据库内或不同的 Analysis Services 数据库内不同多维数据集中的另一度量值组。 如果您要在多个多维数据集内重复使用一组度量值和对应的数据值,则可以使用链接度量值组。
Microsoft 建议原始和链接度量值组驻留于在同一台服务器上运行的解决方案中。 计划在未来版本不推荐使用对远程服务器上的度量值组的链接(请参阅 SQL Server 2012 中不推荐使用的 Analysis Services 功能)。
![]() |
---|
链接度量值组是只读的。 要获取最新更改,您必须删除基于已修改的源对象的所有链接度量值组并重新创建它们。 为此,在项目之间复制并粘贴度量值组是一种替代方法,在将来需要对度量值组进行修改时应考虑使用此方法。 |
使用限制
如前所述,使用链接度量值的一个重要约束限制是无法直接自定义链接度量值。 要对数据类型、格式、数据绑定和可见性以及度量值组本身中的项的成员身份进行修改,都必须在原始度量值组中执行。
当客户端应用程序进行访问时,链接度量值组在操作上与其他度量值组完全相同,而且查询它们的方式也与其他度量值组别无二致。
查询包含链接度量值组的多维数据集时,会在目标多维数据集的第一次计算传递期间建立和解析链接。 受此行为影响,任何存储在链接度量值组中的计算都不会在计算查询之前进行解析; 换言之,必须在目标多维数据集中重新创建计算度量值和计算单元,而不是从源多维数据集中继承。
下面的列表汇总了使用限制。
不能通过另一个链接度量值组创建链接度量值组。
不能在链接度量值组中添加或删除度量值。 成员身份只能在原始度量值组中定义。
链接度量值组中不支持写回。
链接度量值组不能用于多个多对多关系,尤其是在这些关系位于不同多维数据集中时。 这样做可能导致不明确的聚合。 有关详细信息,请参阅在包含多对多关系的多维数据集中链接度量值的数量不正确。
只能直接将链接度量值组中包含的度量值与从同一 Analysis Services 数据库中检索到的链接维度进行组织。 但是,您可以使用计算成员将来自链接度量值组的信息与多维数据集中的其他非链接维度进行关联。 您还可以使用间接关系(例如,引用关系或多对多关系)将非链接维度与链接度量值组进行关联。
创建或修改链接度量值
使用 SQL Server Data Tools 可创建链接度量值组。
请先在源多维数据集中完成对原始度量值组的任何修改,这样稍后您就无需在后续多维数据集内重新创建链接度量值组。 您可以重命名链接对象,但不能更改任何其他属性。
在解决方案资源管理器中,双击要向其中添加链接度量值组的多维数据集。 此步骤将在多维数据集设计器中打开该多维数据集。
在多维数据集设计器,右键单击“度量值”窗格或“维度”窗格中的任意位置,然后选择**“新建链接对象”**。 这会启动链接对象向导。
在第一页上,指定数据源。 此步骤将指定原始度量值组的位置。 默认值是当前数据库中的当前多维数据集,但您也可以选择其他 Analysis Services 数据库。
在下一页上,选择要链接的度量值组或维度。 维度和多维数据集对象(例如度量值组)将单独列出。 只有当前多维数据集中尚不存在的那些对象可供使用。
单击**“完成”**创建链接对象。 链接对象将显示在“度量值”和“维度”窗格中,并通过链接图标进行指示。
保护链接度量值
定义了链接之后,在管理对链接度量值组中度量值的访问时,将采用与管理对其他度量值组的访问相同的方式。 在角色设计器中,链接对象显示在其对等的非链接对象的旁边。 有关管理度量值组安全性的详细信息,请参阅授予多维数据集或模型权限 (Analysis Services)。
为了定义或使用链接度量值组,Analysis Services 实例的 Windows 服务帐户必须属于在源 Analysis Services 实例上对源多维数据集和度量值组具有 ReadDefinition 和 Read 访问权的 Analysis Services 数据库角色,或必须属于源 Analysis Services 实例的 Analysis Services Administrators 角色。