У меня есть одна странная проблема с производительностью одного запроса MDX, когда я говорю:
Non Empty NonEmpty(
NonEmpty (
{[Customer].[Customer Name].[My Customer]}
* AddCalculatedMembers ( DrillDownMember ( { [Account].[Account Code].DefaultMember } , { [Account].[Account Code].[All] } , Recursive ) )
)
* {[Measures].[Measure 1],[Measures].[Measure 2],[Measures].[Measure 3]}
)
Этот запрос выполняется за 2 минуты, а после того, как я очищаю деньги с помощью команды xmla, скорость запроса по-прежнему составляет 2 минуты.
После того, как я изменил порядок перекрестного соединения следующим образом (поэтому набор мер стоит первым):
Non Empty NonEmpty(
{[Measures].[Measure 1],[Measures].[Measure 2],[Measures].[Measure 3]} *
NonEmpty (
{[Customer].[Customer Name].[My Customer]}
* AddCalculatedMembers ( DrillDownMember ( { [Account].[Account Code].DefaultMember } , { [Account].[Account Code].[All] } , Recursive ) )
)
)
тот же запрос выполняется за 30 секунд.
Но после того, как я снял деньги и отменил запрос, который был выполнен за 2 минуты, он неожиданно все еще выполняется за 30 секунд. Поэтому я не могу повторить случай, когда это длилось 2 минуты.
Как это может быть возможно?