2016-12-04 72 views
0

假设后处理的尺寸时,我有一个尺寸DIM_Users与两个属性UserId [bigint]Reputation [int]。在这种情况下,我可以成功处理表格。SSAS 2016:“属性键不能找到”错误,添加属性

enter image description here

但是,之后我加入DisplayName [nvarchar(255)]属性维度,处理失败,出现一条消息:

错误OLAP存储引擎:属性键无法找到 处理时:表:'cube_DIM_Users',列:'DisplayName', 值:'Justin'。该属性是“显示名称”。

enter image description here

比较我已经注意到,在第一时间5987286个用户ID进行处理(这是正确的值)的截图,但第二次仅70000

而且我也看到,值“Justinᚅᚔᚈᚄᚒᚔ”看起来很奇怪,但我无法弄清楚它是如何影响属性键的处理的。

有关我的维度有什么问题的任何想法?

我发现this文章,但它并没有帮助。

回答

1

看来这个问题是由你的数据源和ssas之间的排序规则不匹配造成的。如果您启动了一个类似于SELECT DISTINCT UserId FROM yourTable WHERE UserId LIKE 'Justin%'的sql选项,您将更好地理解可能的归类问题。应该有多个条目,这可能会导致整理问题。

如果您的属性“User Id”是唯一的,请尝试以下解决方法。为每个UserId行添加一个人造的唯一键给您的维度表,例如一个递增的整数。将此创建的键分配给属性的键列,并将“UserId”分配给名称列。

提示:如果展开ssas维中属性的键列属性,还可以更改ssas用于处理的排序规则。我已经在过去尝试过,但有时它并没有解决基于排序规则的问题。

+0

谢谢你救了我,从后来的痛苦:) –