Talend ESB中的路由和工作有什么区别?

时间:2017-06-19 11:35:45

标签: routes talend jobs

他们似乎做了或多或少相同的事情 - 获取数据,处理数据并将其发送出去。

互联网搜索结果显示,Talend Routes几乎与Camel Routes相同,但这并没有说明它们是什么以及它们与Jobs有什么不同。

Talend ESB中的路由和工作是什么? 他们之间有什么区别? 何时比较喜欢一个?

2 个答案:

答案 0 :(得分:2)

Talend路由和作业之间的主要区别在于,当您启动路由时,它会无限期地侦听输入(文件,消息等等),并且只要它可用,它就会被处理并发送到目的地,直到路由为止。停止。另一方面,作业是按需启动以处理某些输入(文件,数据库等等)的批处理,并在处理完所有输入时结束。

答案 1 :(得分:2)

Talend ESB作业与您在其他版本的Talend Studio(例如Data Integration Studio)中可以创建的作业完全相同。 Talend作业最适合创建ETL (Extract-Transform-Load)数据流程,其中需要在各种类型的对象或系统(即数据库,平面文件等)之间提取,转换和加载数据)。通常情况下,您要讨论的是从大到几分钟左右的时间间隔内处理的小型到大型数据集。 Talend ESB Studio采用您在Studio用户界面中构建的流程,并在后台生成Java代码,允许您在单击运行按钮时执行作业。在Talend的企业版中,您可以部署这些作业以按计划运行,但也可以使用Studio本身手动导出它们。

Talend ESB路由非常类似于工作,因为它们在后台生成Java代码就像工作一样,但它们的使用更适合于Web服务和消息系统,其中您有较小的集合数据并希望近乎实时地传输它。 Talend ESB Routes的大多数(如果不是全部)生成的代码使用名为Apache Camel的Java框架。 Camel用于创建Integration Patterns(其范围非常巨大),但您可以将其松散地视为一组用于创建消息传递系统的工具。路由不是为了定期运行而设计的 - 而是将它们部署在某种形式的OSGi容器中(例如Apache Karaf与Talend ESB捆绑在一起),并且更加面向服务。

需要注意的一点是,如果需要,您实际上可以从Talend路线调用Talend Jobs。