SSAS每日计算汇总到任何维度

SSAS每日计算汇总到任何维度,ssas,mdx,cube,Ssas,Mdx,Cube,我试图在我的多维数据集中创建一个每日计算,或者创建一个MDX语句,该语句将每日进行计算,并向上滚动到任何维度。我已经成功地恢复了值,但是性能不是我认为应该的 我的事实表将有4个维度,其中1个是每日日期(时间)。我有一个公式,在这个事实表中使用了其他4个度量,这些度量需要每天计算,然后在时间维度上进行几何链接 下面的MDX语句非常有效,并生成正确的值,但速度非常慢。我尝试过使用exp(sum(log+1))-1和multiply,它们的性能似乎更好一些,但还不够好。是否有其他解决方案,或者我的MD

我试图在我的多维数据集中创建一个每日计算,或者创建一个MDX语句,该语句将每日进行计算,并向上滚动到任何维度。我已经成功地恢复了值,但是性能不是我认为应该的

我的事实表将有4个维度,其中1个是每日日期(时间)。我有一个公式,在这个事实表中使用了其他4个度量,这些度量需要每天计算,然后在时间维度上进行几何链接

下面的MDX语句非常有效,并生成正确的值,但速度非常慢。我尝试过使用exp(sum(log+1))-1和multiply,它们的性能似乎更好一些,但还不够好。是否有其他解决方案,或者我的MDX语句是否有问题

我尝试过为[Calendar_Date]和[Dim_Y][Y ID]定义聚合,但它似乎没有使用这些聚合

WITH
   MEMBER Measures.MyCustomCalc AS (
   (
      Measures.x -Measures.y
    ) -
    (
      Measures.z - Measures.j
    )
)
/
Measures.x

MEMBER Measures.LinkedCalc AS ASSP.MULTIPLY(
   [Dim_Date].[Calendar Date].Members,
   Measures.MyCustomCalc + 1
) - 1
SELECT
Measures.LinkedCalc ON Columns,
[Dim_Y].[Y ID].Members ON Rows
FROM
[My DB]
运行上述查询需要7秒,记录数如下:

措施:98160项记录 日期:5479 年份:42项记录

我们假设,通过定义一个聚合,我们将执行的计算量仅为42*天,在这种情况下,最多5479条记录


任何帮助或建议都将不胜感激

有任何原因不能将其添加为自定义计算吗?这样至少可以在多维数据集处理时完成一些工作。谢谢比尔。我们尝试创建一个计算。我们没有尝试创建MeasureExpression-这是您所想的吗?第一种选择没有产生任何性能增益。在查找需要聚合的字段时,似乎总是会弹出日历日期。然而,我们已经尝试按日历日期在每个维度上创建聚合。谢谢你的时间!