根据我的需要设计OLAP多维数据集和MDX查询

根据我的需要设计OLAP多维数据集和MDX查询,mdx,olap,olap-cube,mondrian,Mdx,Olap,Olap Cube,Mondrian,我有一个具有时间维度[年>月>日-月>小时]的OLAP多维数据集。现在我需要快速创建一些报告,比如昨天的所有销售报告(比如:上午7:00-265次销售),上个月的所有销售报告(比如:2013年2月1日-6625次销售),这一切都很简单和快速,因为对于昨天,我正在查询:“WHERE{hierarchy({[Date].[2013].[2013-2].[2013-2-1]})”,对于这个月,我正在查询:“WHERE”{层次化({[日期][2013][2013-2]})” 但是现在我还需要创建一份过去

我有一个具有时间维度[年>月>日-月>小时]的OLAP多维数据集。现在我需要快速创建一些报告,比如昨天的所有销售报告(比如:上午7:00-265次销售),上个月的所有销售报告(比如:2013年2月1日-6625次销售),这一切都很简单和快速,因为对于昨天,我正在查询:“WHERE{hierarchy({[Date].[2013].[2013-2].[2013-2-1]})”,对于这个月,我正在查询:“WHERE”{层次化({[日期][2013][2013-2]})”


但是现在我还需要创建一份过去30天的报告。有什么想法可以让我的报告与上个月的报告一样快吗?谢谢!

您需要查看CurrentDateMember函数,请参阅Diethards博客以获得全面的解释:

至于性能-唯一的解决方案是打开各种mondrian日志,首先检查是否存在慢速SQL-如果数据库中有,则首先修复-可能是缺少索引或其他东西

最后,如果仍然很慢,那么发布完整的mdx。你没有两个单独的日期集,是吗