发现分区名称SSAS

时间:2011-09-21 08:29:53

标签: ssas xmla dmv

有没有办法可以使用DMV或XMLA动态发现我的多维数据集中是否已存在具有特定名称的分区?

由于

2 个答案:

答案 0 :(得分:4)

如果您想要通过MDX查询的DMV,可以使用$System.DISCOVER_OBJECT_ACTIVITY架构,然后根据OBJECT_PARENT_PATH对其进行过滤,类似于:

SELECT OBJECT_ID
FROM $System.DISCOVER_OBJECT_ACTIVITY
[Server].Databases.[DatabaseID].Cubes.[CubeID].Measure Groups.[MeasureID].Partitions

答案 1 :(得分:3)

没有DMV列出此信息。您必须发出DISCOVER_XML_METADATA请求并通过返回的XMLA进行解析,该XMLA的格式与脚本对象定义时的格式类似。

如果您不介意使用外部程序集,http://asstoredprocedures.codeplex.com的程序集中有一个名为DiscoverXmlMetadata的函数可以执行此操作。

以下查询将返回数据库中所有分区的列表

调用assp.DiscoverXmlMetadata(“Partition”)