Ssas 为什么.CHILDREN比.MEMBERS慢?

Ssas 为什么.CHILDREN比.MEMBERS慢?,ssas,mdx,Ssas,Mdx,我有两个相同的问题。一个使用.CHILDREN检索成员,而另一个使用.members。它们正在应用于自然层次结构。我始终发现。成员返回结果的速度通常比。CHILDREN快(有时快得多)。下面是我发现差异最大的MDX studio的查询、消息和perfmon摘录 查询1(使用.MEMBERS) 正在执行查询。。。 已获取类型为Microsoft.AnalysisServices.AdomdClient.CellSet的对象 格式化。 单元集由1126行和3列组成。 完成格式化。 执行完毕 查询2

我有两个相同的问题。一个使用
.CHILDREN
检索成员,而另一个使用
.members
。它们正在应用于自然层次结构。我始终发现。成员返回结果的速度通常比
。CHILDREN
快(有时快得多)。下面是我发现差异最大的MDX studio的查询、消息和perfmon摘录

查询1(使用.MEMBERS)

正在执行查询。。。 已获取类型为Microsoft.AnalysisServices.AdomdClient.CellSet的对象 格式化。 单元集由1126行和3列组成。 完成格式化。 执行完毕


查询2(使用.CHILDREN)

正在执行查询。。。 已获取类型为Microsoft.AnalysisServices.AdomdClient.CellSet的对象 格式化。 单元集由1125行和3列组成。 完成格式化。 执行完毕

虽然我知道这些函数在概念上存在差异,但我不明白为什么性能上会有如此多的差异

编辑-冒险作品的结果

with set abc as
[Geography].[City].members

member measures.bcd as
sum(existing abc,[Measures].[Internet Sales Amount])

select {[Measures].[Internet Sales Amount], measures.bcd} on 0,
[Geography].[City].members on 1
from [Adventure Works]


/*
Time              : 503 ms
Calc covers       : 0
Cells calculated  : 2938
Sonar subcubes    : 1186
NON EMPTYs        : 0
Autoexists        : 0
EXISTINGs         : 588
SE queries        : 2
Flat cache insert : 1
Cache hits        : 1180
Cache misses      : 0
Cache inserts     : 0
Cache lookups     : 1180
Memory Usage KB   : 0
*/

with set abc as
[Geography].[City].children

member measures.bcd as
sum(existing abc,[Measures].[Internet Sales Amount])

select {[Measures].[Internet Sales Amount], measures.bcd} on 0,
[Geography].[City].children on 1
from [Adventure Works]



/*
Time              : 843 ms
Calc covers       : 0
Cells calculated  : 1174
Sonar subcubes    : 589
NON EMPTYs        : 0
Autoexists        : 0
EXISTINGs         : 587
SE queries        : 588
Flat cache insert : 0
Cache hits        : 1176
Cache misses      : 0
Cache inserts     : 0
Cache lookups     : 1176
Memory Usage KB   : 28912        
*/

…希望perfMon能在我的
MDXStudio
实例中工作!(我已尝试重新安装)。Sourav-如果对
AdvWrks
运行,您会得到相同的差异吗?我假设子级在返回结果之前需要应用类似于子级的内容,处理器需要排除非子级的成员…因此可能需要更多的处理。(但我不确定)公平点。如果是这样的话,那么可能应该尽量避免使用
。儿童
。@whytheq-on冒险也有效,我可以看出
。儿童
花费了更多的时间。他们做了不同的事情,苏拉夫-也许一个更好的比较应该是后代和孩子
NON EMPTYs        : 0
Autoexists        : 0
EXISTINGs         : 1125
SE queries        : 0
Flat cache insert : 2
Cache hits        : 0
Cache misses      : 0
Cache inserts     : 0
Cache lookups     : 0
Memory Usage KB   : 4992
with set abc as
[Accident Cause].[Accident Cause Code].children

member measures.bcd as
sum(existing abc, [Measures].[Claim As Of - Count])

select {[Measures].[Claim As Of - Count], measures.bcd} on 0,
[Accident Cause].[Accident Cause Code].children on 1
from [aw cube]
NON EMPTYs        : 0
Autoexists        : 0
EXISTINGs         : 1124
SE queries        : 0
Flat cache insert : 1124
Cache hits        : 0
Cache misses      : 0
Cache inserts     : 0
Cache lookups     : 0
Memory Usage KB   : 3744

--41 seconds
with set abc as
[Geography].[City].members

member measures.bcd as
sum(existing abc,[Measures].[Internet Sales Amount])

select {[Measures].[Internet Sales Amount], measures.bcd} on 0,
[Geography].[City].members on 1
from [Adventure Works]


/*
Time              : 503 ms
Calc covers       : 0
Cells calculated  : 2938
Sonar subcubes    : 1186
NON EMPTYs        : 0
Autoexists        : 0
EXISTINGs         : 588
SE queries        : 2
Flat cache insert : 1
Cache hits        : 1180
Cache misses      : 0
Cache inserts     : 0
Cache lookups     : 1180
Memory Usage KB   : 0
*/

with set abc as
[Geography].[City].children

member measures.bcd as
sum(existing abc,[Measures].[Internet Sales Amount])

select {[Measures].[Internet Sales Amount], measures.bcd} on 0,
[Geography].[City].children on 1
from [Adventure Works]



/*
Time              : 843 ms
Calc covers       : 0
Cells calculated  : 1174
Sonar subcubes    : 589
NON EMPTYs        : 0
Autoexists        : 0
EXISTINGs         : 587
SE queries        : 588
Flat cache insert : 0
Cache hits        : 1176
Cache misses      : 0
Cache inserts     : 0
Cache lookups     : 1176
Memory Usage KB   : 28912        
*/