3

我们有一个小型数据流任务,它将行从表导出到平面文件。

我们为转换操作添加了一个脚本组件(Converting Varbinary to String)。

由于脚本组件需要一段时间,我们决定使用新的集成服务

Balanced Data Distributor 并将导出任务分成两个平面文件。

在执行任务时,似乎 BBD 没有划分工作负载并且没有

在并行模式下工作。

你知道为什么吗?

4

1 回答 1

0

您是否尝试过使用NTILE并在数据流中创建多个 OLE DB 源?

下面的示例说明如何为 2 个组执行此操作。您当然可以根据需要将源拆分为多个:

-- SQL Command text for OLE DB Source #1 named "MyGroup NTILE 1"
SELECT v.*
FROM
  (SELECT t.* ,
          NTILE(2) OVER(
                        ORDER BY t.my_key) AS MyGroup
   FROM my_schema.my_table t) v
WHERE v.MyGroup = 1;


-- SQL Command text for OLE DB Source #2 named "MyGroup NTILE 2"
SELECT v.*
FROM
  (SELECT t.* ,
          NTILE(2) OVER(
                        ORDER BY t.my_key) AS MyGroup
   FROM my_schema.my_table t) v
WHERE v.MyGroup = 2;

如果您事先对所需的 NTILE 的最大数量有一个好主意(比如 10 个),那么您可以提前创建 10 个 OLD DB Source。

于 2013-12-14T22:36:55.890 回答