SSIS - ETL - 从许多服务器传输表/数据库?

时间:2013-05-04 08:40:15

标签: sql-server ssis data-warehouse etl

我有6-7个相同的数据库(差不多)。我想将这些服务器的一些表中的数据复制到ONE服务器的相应表中。也就是说,多个源和一个目标服务器。所有服务器都有不同的IP。我该怎么做这个任务? for循环是否合适。如果是,那么这样做的好方法是什么?

我可能会执行一些变换。目前还不确定。为了安全起见,我想使用SSIS。

3 个答案:

答案 0 :(得分:1)

以下概述了如何设置FOR EACH LOOP以循环访问数据库,前提是这些表是不同的。

但这太过分了。

SSIS Loop a list of connection strings in a master package, executing two other packages for each connection string

答案 1 :(得分:0)

如果你坚持使用SSIS,那很简单。

1个套餐

包含x(表的数量)数据流

每个都包含一个数据源(用于查询的sql +源数据库信息)和一个数据目标(列+ dest db info的映射)。

如果你想要添加一两个变换,那么就是将它添加到数据流中的情况。

答案 2 :(得分:0)

您可以使用FOR LOOP,但如果您的负载频率较小,则可能过度。

另一种简单的方法是使用一个带有多个SOURCE的DATA FLOW TASK,然后在UNION ALL转换和负载合并到目标中。