2

我一直在对 Apache Camel 进行一些研究。我不明白 Camel 和其他 ETL 工具(如 Abinitio 或 SSIS 等)之间有什么区别。

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

我们有什么理由选择 Apache Camel 而不是这些 ETL 工具?

感谢您的帮助。谢谢

4

2 回答 2

2

我没有使用过您提到的 ETL 工具。我和其他几个人一起工作过,我的答案就是基于它。

阿帕奇骆驼

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

ETL 工具

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

综上所述,您正在寻找的组件非常基本,并且通常受大多数 ETL 工具的支持。考虑到这一点,我会根据成本、易用性、可用组件的专业化以及是否需要对其他组件的支持来做出决定。

于 2013-09-15T16:54:30.447 回答
0

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

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

最重要的是,与非开源的 SSIS 相比,Apache Camel 是开源的,具有所有方面的特性。

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

于 2013-09-13T19:15:41.100 回答