我有一种情况,我在不同年份的 SSAS BIDS 2008 中有 3 个分区。我需要知道当前上下文中正在使用哪个分区,为什么?如何手动更改?
比如我要分区:P2001、P2002和P2001-2002;用户查询 2002 年的销售额。在这种情况下,什么分区起作用,为什么只有那个分区?我该如何改变这一点。当用户查询 2002 年的销售时,我想使用 P2001(这在逻辑上没有意义,但会澄清我的疑问)
我希望我在阐述我的想法时有意义吗?提前致谢。
首先,您的分区不应该有重叠的数据。它将读取重叠数据两次(或此数据所在的分区数)。您无法控制正在读取哪个分区,SSAS 知道每个键在哪个分区上,因此它只会在运行查询时读取该分区。
您可以使用 SQL Server Profiler 查看正在运行的查询以查看正在读取哪些分区,这是来自网络的示例:
为了能够在没有任何缓存数据的情况下进行查询(以确保查看正在读取哪些分区),您可以运行此 XMLA 来清除多维数据集的缓存,然后再次运行查询:
<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<ClearCache>
<Object>
<DatabaseID> database id </DatabaseID>
<CubeID> cube id </CubeID>
</Object>
</ClearCache>
</Batch>