【问题标题】:Creating SSAS 2008 cube partitions using Powershell?使用 Powershell 创建 SSAS 2008 多维数据集分区?
【发布时间】:2015-02-16 15:37:07
【问题描述】:

我们如何使用 Powershell 创建 SSAS 2008 多维数据集分区?

【问题讨论】:

    标签: powershell ssas cube ssas-2008


    【解决方案1】:

    这会为 Adventure Works DW 2008R2 多维数据集(特别是 Adventure Works 多维数据集中的 Internet 客户度量值组)添加一个分区:

    $server_name = "localhost"
    $catalog = "Adventure Works DW 2008R2"
    $cube = "Adventure Works"
    $measure_group = "Fact Internet Sales"
    $old_partition = "Customers_2004"
    $new_partition = "Customers_2009"
    $old_text = "'2008"
    $new_text = "'2009"
    
    [Reflection.Assembly]::LoadFile("C:\Program Files\Microsoft SQL Server\100\SDK\Assemblies\Microsoft.AnalysisServices.DLL")
    $srv = new-object Microsoft.AnalysisServices.Server
    $srv.Connect("Data Source=" + $server_name)
    $new_part = $srv.Databases[$catalog].Cubes[$cube].MeasureGroups[$measure_group].Partitions[$old_partition].Clone()
    $new_part.ID = $new_partition
    $new_part.Name = $new_partition
    $new_part.Source.QueryDefinition = $new_part.Source.QueryDefinition.Replace($old_text, $new_text)
    $srv.Databases[$catalog].Cubes[$cube].MeasureGroups[$measure_group].Partitions.Add($new_part)
    $srv.Databases[$catalog].Cubes[$cube].MeasureGroups[$measure_group].Partitions[$new_partition].Update()
    $srv.Databases[$catalog].Update()
    $srv.Disconnect()
    

    您必须在顶部更改变量,以及对 Microsoft.AnalysisServices.dll 程序集的引用,但除此之外,这将非常有效。

    诀窍是在更改的对象上调用Update(),然后在整个数据库本身上调用。

    如果您也想处理新分区,您可以在$srv.Disconnect 之前使用以下行:

    $srv.Databases[$catalog].Cubes[$cube].MeasureGroups[$measure_group].Partitions[$new_partition].Process()
    

    您可以了解有关分析管理对象 (AMO) here 的更多信息。

    【讨论】:

      【解决方案2】:

      看看这个:PowerSSAS

      它没有明确的添加分区支持,因此您可能必须制作一个 XMLA sn-p 来执行添加分区,然后使用 PowerSSAS 将其推送到 SSAS 服务器。

      【讨论】:

      • PowerSSAS 可以做到这一点,而无需制作 XMLA。您只需要获取对度量值组的引用,然后调用分区集合的 Add 方法。
      【解决方案3】:

      你可以使用:

      Microsoft.AnalysisServices.Deployment [ASdatabasefile] 
      {[/s[:logfile]] | [/a] | [[/o[:output_script_file]] [/d]]}
      

      使用 powershell 部署您的多维数据集 AS。

      【讨论】:

      • 没有回答问题。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-17
      • 1970-01-01
      • 2014-11-01
      • 2012-03-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多