SQL Server Analysis Services 中的多对多关系;第二个多对多关系不起作用

Posted

技术标签:

【中文标题】SQL Server Analysis Services 中的多对多关系;第二个多对多关系不起作用【英文标题】:Many-to-Many-to-Many Relationship in SQL Server Analysis Services; Second Many-to-Many Relationship Not Working 【发布时间】:2015-01-29 17:14:08 【问题描述】:

前言

SQL Server 2008 R2 标准版,多维立方体

在我的数据仓库中,我有以下表格:

尺寸

DimPartnership - 合作伙伴分组 DimPartner - 分组 投资者(可以是多个合伙企业)DimInvestor - 个人 投资者可以组成多个合伙人

事实

FactInvestments - 与投资活动相关的记录。包含与 DimInvestor 表相关的外键“InvestorKey”。

桥梁

BrInvestorPartner - 解决投资者与合作伙伴的桥梁 BrPartnerPartnership - 解决合作伙伴到合作伙伴关系的桥接表

问题:

我需要在 SSAS 中创建多对多关系。第一个多对多维度有效,第二个无效。

当前解决方案:

我制作了两个桥接表,将投资者维度链接到合作伙伴维度,然后将合作伙伴维度链接到合作伙伴维度。多维数据集进程和预期的伙伴多对多维度正常工作。我可以按合作伙伴成员对事实表中的度量进行切片。但是,当我将 partnership 作为查询的一部分应用时,它对投资度量组没有影响。我的投资衡量小组似乎忽略了这个维度。

问题

谁能指出我做错了什么?这甚至得到微软的支持吗?我在他们的文档中找不到任何关于此的内容,但我认为这将得到支持。我感谢任何关于找出问题所在的指导。这可以通过范围界定或对合作伙伴伙伴关系计数进行某种交集来解决吗?

图片

一些可能对你有帮助的图片:

错误结果

为保护客户隐私而编辑的值和名称 - 为所有合作伙伴返回相同的值(所有投资的总和)

DSV

立方体结构

维度使用

【问题讨论】:

【参考方案1】:

当然,一旦我发布了我的问题,我就发现了问题。

我对合作伙伴维度的维度使用应同时使用 v Br Investor Partner 桥和具有多对多关系的 v Br Partner Partnership 桥。现在一切正常。

将此与我的 OP 中的 Dimension Usage Screenshot 进行比较:

【讨论】:

以上是关于SQL Server Analysis Services 中的多对多关系;第二个多对多关系不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Microsoft SQL Server Analysis Services OLAP 多维数据集

SQL Server Analysis Services(MSSQLSERVER)启动失败

使用 Python 查询 SQL Server Analysis Services (SSAS) 多维数据集数据

使用 MS SQL Server Analysis Services 在分层数据上创建多维数据集

Performance analysis of SQL server disk I / O

时间维度在 SQL Server Analysis Services 中不起作用