Camel与ETL工具

时间:2013-09-13 14:48:34

标签: ssis apache-camel etl

我一直在研究Apache Camel。我不明白Camel和其他ETL工具(例如Abinitio或SSIS等)之间的区别。

Camel提供SFTP / FTP组件。 SSIS或Abinitio也是如此。 Camel可以写入数据库,甚至SSIS或AI也可以写入DB。

我们之所以选择Apache Camel而不是这些ETL工具吗?

感谢您的帮助。感谢

2 个答案:

答案 0 :(得分:1)

我没有使用过你提到的ETL工具。我和其他几个人合作过,我的回答是基于它的。

  

Apache Camel

  • Apache Camel是一个开源集成框架。
  • 它提供了用于构建有助于执行ETL操作的程序的库。
  • 骆驼中有各种各样的组件可用于连接不同类型的信号源。开源开发人员经常添加新组件。请查看此http://camel.apache.org/components.html
  • 您应该是一位经验丰富的开发人员,可以构建可以有效执行ETL的路由/程序。也就是说,您提到的组件非常基本,并且需要更少的时间来构建驼峰。
  • 与许多ETL工具相比,有一些工具可用但不完全成熟。 。这不是缺点,因为camel是一个框架而不是专门的ETL工具。许多ETL工具可能在内部使用驼峰或其他集成框架。
  • 可以使用内置变换器或其他编程来完成从不同格式的数据映射。
  

ETL工具

  • ETL工具专为特定的ETL目的而构建。
  • 大多数ETL工具都很直观,具有良好的工具。这可能意味着节省时间。您无需成为经验丰富的开发人员即可使用。它通常可供编程背景很少或没有编程背景的分析师使用。
  • 大多数ETL工具提供的组件远远少于Camel。许多开源ETL产品都提供免费版本的基本组件。您需要为企业版付费才能获得高级组件。我还没有看到一个ETL工具,它为免费版本的camel支持的所有源提供组件。我很高兴看到一个。
  • 除非您订阅,否则可能无法轻松支持新组件。
  • 通常很容易执行从不同格式的数据映射。

所有这一切,您正在寻找的组件非常基本,并且通常由大多数ETL工具支持。考虑到这一点,我的决定基于成本,易用性,可用组件的专业化以及是否需要支持其他组件。

答案 1 :(得分:0)

许多工具,几乎所有编程语言甚至shell / bat脚本都可以连接到数据库并使用S / FTP文件传输。

Apache Camel是一个旨在尽可能高效地构建集成的框架。 ETL工具旨在将数据导入数据仓库,这可能被视为集成的特殊情况。

最重要的是,Apache Camel是开源的,带有它的所有方面 - 与SSIS相比,它不是开源的。

你甚至没有说明你希望你的工具做什么,所以我无法回答这个问题。