SSAS 进程更新、刚性关系和成员删除



我在 SSAS 维度上的进程更新期间遇到问题。 以下是维度的设置方式(尽管已简化):

在"预留"维度中,我的 DimensionKey 属性设置为预留 itslef(键属性:预留键,名称属性:预留代码)。 该会员附有(灵活关系)"预订代理"成员(密钥:预订代理代码,名称:预订代理名称),对于"预订代理"成员,我有"预订代理代码"成员,它与"预订代理名称"有刚性关系。

现在我相信你会同意我的观点,即"预订代理"不可能突然与不同的"预订代理代码"相关联,因为这两个属性的键都是SQL列"预订代理代码"。

我遇到过这样一种情况,即给定ReservationAgentCode的所有预订都被移动到不同的ReservationAgentCode。 所以从本质上讲,旧的ReservationAgentCode现在不存在了。请记住,"预订"和"预订代理代码"关系是灵活的。

在对维度执行进程更新时,SSAS 向我提供了一条错误消息,指出无法更改"预留代理"和"预留代理代码"之间的刚性关系。

由于"ReservationAgent"

和"ReservationAgentCode"成员实际上是新的,因此旧的"ReservationAgent"不会移动到不同的"ReservationAgentCode"。从某种意义上说,只有旧成员需要删除。

有没有人遇到过这种情况? 是我不太理解的地方吗?对我来说,这似乎是一个故障/错误,但在 MS 打开连接票证之前,我想从这里的专家那里得到反馈。

如果您需要更多信息,请告诉我,如果需要,我还可以详细说明一个快速解决方案来演示我的问题。

提前感谢!

这不是一个错误,大卫。

流程更新从维度中删除旧的 ReservationAgentCode 成员(因为在成员检测阶段在源中看不到它)。服务器不允许这种删除,因为我们稍后有刚性关系("刚性属性关系是保证成员关系固定的关系" - 性能指南 2008 r2)。

顺便问一下,在那里使用刚性关系(性能/处理时间/两者)有什么好处?

最新更新