3

我还在这里发布了这个问题: https ://social.msdn.microsoft.com/Forums/en-US/5aca721a-1148-451f-bac6-d1bee6b2aad7/how-to-process-ssas-2012-cube-with-ssis -2014-and-script-task?forum=sqlintegrationservices

为了在不同的服务器上处理不同的 SSAS 数据库,我使用了与此处所述类似的方法(#2,使用 AMO(分析管理对象)):

http://aniruddhathengadi.blogspot.in/2011/12/how-to-automate-cube-processing.html

这对于处理 SQL Server 2008 R2 和 2012 中的多维数据集非常有效,但 SSAS 和 SSIS 始终是相同的版本。

现在我有一个不同的星座:Integration Services 在一台服务器上运行,在 2014 版中,用于处理多维数据集数据库的 Analysis Services 实例在另一台服务器上运行,2012 版。

我尝试了 SSIS 版本和分析管理对象版本的几种不同组合,在运行流程包时遇到了几个错误(例如,对象引用未设置为对象的实例,找不到 AnalyisServices.dll ..)

现在在我做更多的试验和错误之前,我有一些关于正确方法的一般性问题 - 也许有人已经成功地做到了这一点:

  1. 这种组合 2014/2012 有可能吗?
  2. 我假设 BIDS 版本必须适用于 SQL Server 2014,因为我想在 2014 服务器上运行 SSIS 包,对吗?有没有关系,我也可以部署 2012 包吗?
  3. 我必须使用哪个版本的分析管理对象?我假设我必须在这里使用 11.0 版本,因为我想处理 2012 多维数据集?
  4. 如果可以使用 AMO 的“旧”11.0 版本,我是否必须做任何事情才能被服务器上运行的 SSIS 包找到(它是在我的本地计算机上构建的,那里我有所有 SQL Server 2005 到 2014 的版本并行安装),还是我只需将其复制到相应的 SQL Server 文件夹?

提前感谢您的每一个提示!

4

1 回答 1

1

要使用 SSIS 处理 SSAS 多维数据集,我建议不要在脚本任务中执行此操作,而是使用执行 SQL Server 代理作业任务。

首先设置使用 SQL Server Analysis Services 命令步骤刷新 SSAS 多维数据集的 SQL Server 代理作业。以下是此步骤所需的 JSON 代码。更新数据库属性以使用您的实际数据库名称。

 {
   "refresh": {
    "type": "full",
    "objects": [
      {
        "database": "YourDatabase"
      }
    ]
  }
}

现在,在您的 SSIS 包中,您可以使用执行 SQL Server 代理作业任务运行您创建的 SQL Server 代理作业以刷新您的 SSAS 多维数据集。

于 2018-10-29T17:00:26.743 回答