【问题标题】:How can I obtain a list of a SSAS Cube's dimentions and dimentions' attributes如何获取 SSAS 多维数据集维度和维度属性的列表
【发布时间】:2010-03-31 21:01:02
【问题描述】:

我有一个用户要求我列出 SSAS 多维数据集的维度和维度属性。

我怀疑我可以通过 AMO 生成此信息,但我想知道是否有 MDX 查询或 SSMS 选项来显示相同​​的信息。

有什么想法吗?

【问题讨论】:

    标签: ssas olap


    【解决方案1】:

    这是通过 AMO 编写的脚本

    [Reflection.Assembly]::LoadWithPartialName("Microsoft.AnalysisServices") | Out-Null
    $server = new-Object Microsoft.AnalysisServices.Server
    $server.Connect($serverName) 
    foreach ($db in $server.Databases)
    {
        Write-Host $db.Name
        foreach ($cb in $db.Cubes)
        {
            Write-Host "`t" + $cb.Name
            foreach ($dm in $cb.Dimensions)
            {
                Write-Host "`t`t" + $dm.Name
                foreach ($at in $dm.Attributes)
                {
                    Write-Host "`t`t`t" + $at.Attribute
                }
            }
        }
    }
    

    【讨论】:

      【解决方案2】:

      在 SQL Server 2008 中,您可以执行以下操作:

      1. 连接到 Analysis Services 服务器。
      2. 右键单击一个立方体,选择新建查询 -> DMX。
      3. 运行以下查询

        选择 Dimension_Unique_Name、Property_Name、Property_Caption 来自 $SYSTEM.MDSCHEMA_PROPERTIES 其中 Cube_Name = [您的多维数据集名称] 并且 Property_Type = 1

      (您也可以选择 * 并获取一些其他信息,如 data_types、基数等)

      1. OLAP Schema 行集的完整列表可以在http://msdn.microsoft.com/en-us/library/ms126079.aspx 找到

      【讨论】:

      • 以上查询未在 QueryBuilder 中执行
      【解决方案3】:

      我遇到了同样的问题,我为 SQL 服务器创建了一个 .NET CLR,它返回一个 SSAS 对象列表。

      你可以在这里找到它:http://sasokoren.com/export-list-of-ssas-objects-and-translations-using-amo-in-net/

      【讨论】:

        猜你喜欢
        • 2023-03-04
        • 1970-01-01
        • 2018-10-04
        • 1970-01-01
        • 2015-08-13
        • 2020-01-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多