Analysis Services Processing Task in SQL Server Integration Services SSIS

问题
我们正在寻求自动化SQL Server Analysis Services维度和多维数据集的处理。我们想将此处理添加到我们现有的SQL Server Integration Services(SSIS)程序包中,该程序包会定期从OLTP系统更新我们的数据仓库。您能否详细说明如何在SSIS程序包中使用Analysis Services处理任务?

解决方案
Analysis Services处理任务使您可以处理SSIS包中的维度,度量组分区和挖掘模型。虽然可以一次处理所有这些对象,但是也可以选择要处理的这些对象的子集。例如,您可以通过运行SSIS包来定期更新数据仓库中的某些维度和事实表。作为SSIS程序包的最后一步,您只想处理将这些数据仓库表用作数据源的维度并度量组分区。Analysis Services处理任务允许您执行此操作。

在本技巧中,我们将逐步介绍在SSIS包中使用Analysis Services处理任务的步骤。我们将在SQL Server 2005附带的Adventure Works DW Analysis Services数据库中创建一个示例包,该包将处理维度和度量值组分区。假设的情况是,我们运行SSIS包来更新产品和货币汇率表。每天在我们的数据仓库中。我们想在SSIS包中添加一个步骤来处理“产品”维和“货币汇率”事实表,从而更新SQL Server Analysis Services多维数据集中可用的信息。 

创建示例SSIS包

首先从Microsoft SQL Server 2005程序组启动Business Intelligence Development Studio(BIDS),然后创建一个新的Integration Services项目。将自动创建一个名为Package.dtsx的SSIS包,并将其添加到项目中。将包重命名为SSASProcessingTask_Demo.dtsx,然后对SSIS包执行以下步骤: 

步骤1:为SSAS服务器添加连接管理器。右键单击“连接管理器”区域,然后从上下文菜单中选择“新建Analysis Services连接”。在对话框中接受默认值以连接到本地SSAS服务器(如果要连接到另一台计算机上的SSAS服务器,则进行适当的编辑):

步骤2:将Analysis Services处理任务从工具箱拖放到SSIS包的控制流中。编辑Analysis Services处理任务;选择上面步骤1中定义的连接管理器,然后单击“添加”按钮以选择要处理的对象:

选择的“处理选项”的工作方式如下:

  • 度量值组分区上的“进程增量”用于仅从事实表加载新行。它需要其他设置,我们将在下一步中完成。
  • 维度的流程更新将使用数据仓库中的任何插入,更新或删除来更新维度。

步骤3:在上面的步骤2中显示的Currency_Rates行中,单击配置超链接。由于我们选择了过程增量作为过程选项,因此我们需要指定一个表或视图以从中加载新的事实行或指定一个查询;我们将指定一个查询,并假定stg_FactCurrencyRate表仅填充有要添加到度量值组分区的新事实事实行。

posted @ 2020-07-06 16:51  Javi  阅读(218)  评论(0编辑  收藏  举报