Ssas MDX查询性能:处理时间不一致

Ssas MDX查询性能:处理时间不一致,ssas,mdx,Ssas,Mdx,当我运行某些MDX查询时,奇怪的行为/性能不一致使我感到困惑 当我为单个成员或两个“在行”成员运行查询时,处理时间非常不一致: 层次结构有7个级别:例如,“A”是级别6上的成员。“A”有两个孩子:“X”和“Y” 当我在行上运行成员为“X”的MDX时,需要两秒钟 当我为行上的成员“Y”运行相同的MDX时,也需要2秒。 如果我对两个成员运行相同的MDX查询:{member“X”,member“Y”}行' …. 处理此MDX突然需要2-3分钟 对这种奇怪的行为有什么可能的解释吗 MDX查询如下所示:

当我运行某些MDX查询时,奇怪的行为/性能不一致使我感到困惑

当我为单个成员或两个“在行”成员运行查询时,处理时间非常不一致:

层次结构有7个级别:例如,“A”是级别6上的成员。“A”有两个孩子:“X”和“Y”

当我在行上运行成员为“X”的MDX时,需要两秒钟

当我为行上的成员“Y”运行相同的MDX时,也需要2秒。 如果我对两个成员运行相同的MDX查询:{member“X”,member“Y”}行'
…. 处理此MDX突然需要2-3分钟

对这种奇怪的行为有什么可能的解释吗

MDX查询如下所示:
如果在行上使用[DrilldownCreditRisk].[Level 6]属性层次结构成员X和Y而不是[DrilldownCreditRisk].[ExposureDrilldown]层次结构,那么它是否快速(无论查询是否返回相同的数字)?你的等级制度自然吗?(级别之间是否存在属性关系?在设计时是否会收到有关该层次结构属性关系的警告?)如果层次结构不自然,请转到“属性关系”选项卡,定义一组属性关系,以镜像层次结构,直到层次结构上的警告图标消失


自然层次结构的性能总是优于非自然层次结构

如果在行上使用[DrilldownCreditRisk].[Level 6]属性层次结构成员X和Y而不是[DrilldownCreditRisk].[ExposureDrilldown]层次结构,那么它是否快速(无论查询是否返回相同的数字)?你的等级制度自然吗?(级别之间是否存在属性关系?在设计时是否会收到有关该层次结构属性关系的警告?)如果层次结构不自然,请转到“属性关系”选项卡,定义一组属性关系,以镜像层次结构,直到层次结构上的警告图标消失


自然层次结构的性能总是优于非自然层次结构

如果在行上使用[DrilldownCreditRisk].[Level 6]属性层次结构成员X和Y而不是[DrilldownCreditRisk].[ExposureDrilldown]层次结构,那么它是否快速(无论查询是否返回相同的数字)?你的等级制度自然吗?(级别之间是否存在属性关系?在设计时是否会收到有关该层次结构属性关系的警告?)如果层次结构不自然,请转到“属性关系”选项卡,定义一组属性关系,以镜像层次结构,直到层次结构上的警告图标消失


自然层次结构的性能总是优于非自然层次结构

如果在行上使用[DrilldownCreditRisk].[Level 6]属性层次结构成员X和Y而不是[DrilldownCreditRisk].[ExposureDrilldown]层次结构,那么它是否快速(无论查询是否返回相同的数字)?你的等级制度自然吗?(级别之间是否存在属性关系?在设计时是否会收到有关该层次结构属性关系的警告?)如果层次结构不自然,请转到“属性关系”选项卡,定义一组属性关系,以镜像层次结构,直到层次结构上的警告图标消失


自然层次结构的性能总是优于非自然层次结构

如果在行上使用[DrilldownCreditRisk].[Level 6]属性层次结构成员X和Y而不是[DrilldownCreditRisk].[ExposureDrilldown]层次结构,那么它是否快速(无论查询是否返回相同的数字)?你的等级制度自然吗?(级别之间是否存在属性关系?是否在设计时收到有关该层次结构属性关系的警告?)这可能是因为成员X和成员Y的组合正在创建大量空单元格。尝试使用
非空
非空
将语句包装到行中。谢谢您的提示!我确实测试了你的建议。问题是层次结构的设计——经过一些研究,我发现层次结构不是自然的,我重新设计了属性并正确定义了关系。现在,谜团已经解开,我在较低层次上获得了一致的处理时间。再次感谢你!也许复选标记不是直观的?以下是关于@leteCmigi的一些说明,如果您在行上使用[DrilldownCreditRisk].[Level 6]属性层次结构成员X和Y,而不是[DrilldownCreditRisk].[ExposureDrilldown]层次结构,那么它是否快速(无论查询是否返回相同的数字)?你的等级制度自然吗?(级别之间是否存在属性关系?是否在设计时收到有关该层次结构属性关系的警告?)这可能是因为成员X和成员Y的组合正在创建大量空单元格。尝试使用
非空
非空
将语句包装到行中。谢谢您的提示!我确实测试了你的建议。问题是层次结构的设计——经过一些研究,我发现层次结构不是自然的,我重新设计了属性并正确定义了关系。现在,谜团已经解开,我在较低层次上获得了一致的处理时间。再次感谢你!也许复选标记不是直观的?以下是关于@leteCmigi的一些说明,如果您在行上使用[DrilldownCreditRisk].[Level 6]属性层次结构成员X和Y,而不是[DrilldownCreditRisk].[ExposureDrilldown]层次结构,那么它是否快速(无论查询是否返回相同的数字)?你的等级制度自然吗?(级别之间是否存在属性关系?是否在设计时收到有关该层次结构属性关系的警告?)这可能是因为成员X和成员Y的组合正在创建大量空单元格。试试包装纸
WITH 
  SET [XL3WithSet0] AS 
    {
      (
        [Measures].[Original Exposure Amount - Drilldown]
       ,[ExpPortfolioType].[ExposurePortfolioType].[All].[COREP - CRD IV].[Standardised]
       ,[PortfolioType].[PortfolioType].[All]
       ,[CRMGroup].[CRMGroup].[All]
       ,[CCFBand].[Hierarchy].[All]
       ,[DrilldownCreditRisk].[InflowOutflowFlag].[All]
      )
    } 
...**********another 25 sets combining [Measures] AND selected dimensions*****
SELECT 
  {
    [XL3WithSet0]
   ,[XL3WithSet1]
   ,[XL3WithSet2]
   ,[XL3WithSet3]
   ,[XL3WithSet4]
   ,[XL3WithSet5]
   ,[XL3WithSet6]
   ,[XL3WithSet7]
   ,[XL3WithSet8]
   ,[XL3WithSet9]
   ,[XL3WithSet10]
   ,[XL3WithSet11]
   ,[XL3WithSet12]
   ,[XL3WithSet13]
   ,[XL3WithSet14]
   ,[XL3WithSet15]
   ,[XL3WithSet16]
   ,[XL3WithSet17]
   ,[XL3WithSet18]
   ,[XL3WithSet19]
   ,[XL3WithSet20]
   ,[XL3WithSet21]
   ,[XL3WithSet22]
   ,[XL3WithSet23]
   ,[XL3WithSet24]
   ,[XL3WithSet25]
  } ON COLUMNS
  --Non Empty   
 ,{
    [DrilldownCreditRisk].[ExposureDrilldown].[All].[Legal Entity 2].[CBRC Repo style MarketParticipant  40089].[Exp No. 14660042].[UNSECURED].[Unsecured - Undrawn Tranche]
   ,[DrilldownCreditRisk].[ExposureDrilldown].[All].[Legal Entity 2].[CBRC Repo style MarketParticipant  40089].[Exp No. 14660042].[UNSECURED].[Unsecured - Drawn Tranche]
  } ON ROWS
FROM [COREP Credit Risk]
WHERE 
  (
    [Time].[Time].[All]
   ,[Scenario].[Scenario].[All]
   ,[ConsolidationProfile].[ConsolidationProfile].[All]
   ,[ExposureType].[ExposureType].[All].[COREP Reporting - CRD IV]
   ,[IntragroupFlag].[IntragroupFlag].[All]
  )
CELL PROPERTIES VALUE;