sql-server - Talend Open Studio 是否有类似于 SSIS 的序列容器?

标签 sql-server postgresql ssis parallel-processing talend

使用 Talend Open Studio...

  • 第 1 步 - 我使用 tSystem 组件在 PostgreSQL 数据库中执行一组 SQL 语句
  • 第 2 步 - 我将 10 个 PostgreSQL 表复制到 SQL Server 数据库中

由于没有相互依赖关系,我想同时执行所有十个表复制操作。如果我使用的是 SSIS,这将是微不足道的:将十个复制表任务放在一个序列容器中,并使用一个优先约束将执行 SQL 脚本链接到序列容器。

Talend Open Studio 有类似于 SSIS 的序列容器吗?

在 Talend Open Studio 中,我知道我可以使用 tSystem 组件中的 OnSubJobOk 触发器,并创建与十个复制表任务中的每一个的连接...但是如果我可以通过一个连接来完成此操作,例如 SSIS 序列container 我更愿意这样做,因为我很懒惰......我的意思是高效!

这里的关键是我想并行执行所有十个复制表任务,以减少总运行时间。

感谢您的见解。

Talend Open Studio for Data Integration 6.3.2

最佳答案

您将有两个选项需要注意。将一一进行。

t并行化

tParallelize 组件可帮助您并行化和同步主作业中众多子作业的执行。因此,在您的情况下,它将同时执行并行子作业中的所有十个复制表任务,并同步主作业中的执行。这里唯一需要注意的是,此功能仅适用于订阅版本。您可以阅读更多相关信息 here .

多线程执行

此功能在作业 View 的额外选项卡上可用。设置 Talend 作业后,您需要选中多线程执行复选框以激活多线程执行功能,这将并行运行您的逻辑。对于 10 个不同的 Sql 输出,您将建立 10 个数据库连接并写入 10 个不同的连接。更多信息 here .

这里要记住的一件事就像 Talend 中的 SSIS(对于 SSIS 它是处理器的数量 + 2)一样,你不能并行化超过你的处理器数量,否则它会等待处理器并且会成为处理器的开销。

关于sql-server - Talend Open Studio 是否有类似于 SSIS 的序列容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50068810/

相关文章:

java - 我应该如何持久保存应用程序静态集合,例如登录用户的 HashMap ?

ssis - 执行包任务 - 有没有办法将子包参数绑定(bind)到一个常量?

c# - Sql 中的错误 Microsoft.SqlServer.ConnectionInfo

sql - 如何查找一年前这一天的数据?

postgresql - SELECT 返回空结果集

sql-server - SSIS Access 数据库 - 在插入新记录之前需要清空目标 Access 数据库表上的表

sql-server - 从头开始构建 OLAP 解决方案时应该注意什么?

c# - ExecuteNonQuery() 不返回 C# 和 SQL Server 数据库中受影响的行

C# 在不同格式之间更改日期

postgresql - 如何在触发器函数中将 NEW.* 传递给 EXECUTE