【问题标题】:Multi-threading in custom SSIS transformation data flow task自定义 SSIS 转换数据流任务中的多线程
【发布时间】:2015-07-02 07:22:03
【问题描述】:

我有一个 SSIS 包可以执行以下操作: 1.从平面文件源读取记录 2.通过调用webservice进行转换,将额外的响应列添加到缓冲区 3. 将所有输入记录和响应列输出到目标文件中。

2是我写的自定义转换数据流任务,是同步的,因为我输出的是输入。

我最初从默认的 buffersizes 和 engineThread 属性认为它已经是多线程的,并且会同时调用多个 ProcessInputs。但是一旦我运行它,我意识到它一次只调用一个 Web 服务。

如何使它成为多线程? 我用谷歌搜索,但发现自己越来越困惑。

提前致谢

【问题讨论】:

    标签: c# multithreading ssis dataflowtask


    【解决方案1】:

    你见过this excellent blog吗?

    引自博客:

    SQL Server Integration Services (SSIS) 允许以两种不同的方式并行执行。它们由如下所述的两个属性控制。

    第一个是MaxConcurrentExecutables,包的一个属性。它定义了可以同时运行多少个任务(可执行文件)。它默认为 -1,即处理器数量加 2。请注意,如果您的机器启用了超线程,则计算的是逻辑处理器而不是物理存在的处理器。

    【讨论】:

    • 这实际上是我读到的第一件事,但你看我有这个设置作为默认设置。我只有一个数据流任务,其源 -> Web 服务 -> 目标设置为 EngineThreads = 10。它仍然运行并一次调用 Web 服务一条记录。我不确定我是否正确理解了博客... :(
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多