PowerPivot DAX查询缓慢,有一个事实表,但没有另一个

时间:2015-01-18 06:10:19

标签: excel powerpivot dax

我有2个查找表;成员(83,000行)和组(2,500行)。

有2个事实表; GroupMembers(190,000行)和Metrics(650,000行)。

我创建了两个独立的模型:

1. Members, Groups and GroupMembers

2. Members, Groups and Metrics

两个模型在事实表(COUNTROWS)上只有一个计算度量。如果我引入会员>会员ID在行上并过滤群组> GroupID,则使用CountRows作为值;模型2执行超快,模型1非常慢。

以下是DAX查询结果。

模型1: enter image description here

模型2: enter image description here

两个事实表之间的唯一区别是GroupMembers只有Groups和Members的唯一组合,而Metrics表有其他列,因此Groups和Members组合不是唯一的。

这两个excel文件都可以在这里找到:http://1drv.ms/1GdK1WK

请帮忙!

[编辑] 我做了一些进一步的测试,发现如果我复制GroupMembers中的数据(即两次加载相同的190,000行,因此GroupID / UserID组合不是唯一的),性能很好。去搞清楚! :)

我正在与MS打开一个支持案例并将更新此帖子。

1 个答案:

答案 0 :(得分:0)

来自Microsoft支持团队;显然,UserID int值对于查询来说太大了。他们给了我一个解决方法来为用户表创建一个身份密钥列,并将其用作Users和UserGroups之间的关系。我将解决方法文件发布到OneDrive http://1drv.ms/1BEEmDJ

中的新文件夹中

支持团队将与产品团队讨论根本问题,他们将调查大型int列导致性能问题的原因。