为了处理不同服务器上的不同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版本和Analysis Management Objects版本的组合,并在运行流程包时遇到了几个错误(例如,对象引用没有设置为对象的实例,找不到AnalyisServices.dll ..)
在我做更多的试验和错误之前,我对正确的方法有一些一般性的问题 - 也许有人已经成功地做到了这一点:
提前感谢每一个提示!
答案 0 :(得分:0)
要使用SSIS处理SSAS多维数据集,建议不要在脚本任务中执行此操作,而应使用执行SQL Server代理作业任务。
首先设置一个SQL Server代理作业,该作业使用SQL Server Analysis Services命令步骤来刷新SSAS多维数据集。以下是此步骤所需的JSON代码。更新数据库属性以使用您的实际数据库名称。
{
"refresh": {
"type": "full",
"objects": [
{
"database": "YourDatabase"
}
]
}
}
现在,在SSIS包中,您可以使用“执行SQL Server代理作业”任务来运行您创建的SQL Server代理作业以刷新SSAS多维数据集。