Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Camel Vs ETL Tools [closed]

I've been doing some research on Apache Camel. I'm not understanding what's the difference between Camel and other ETL tools such as Abinitio or SSIS etc.

Camel provides SFTP/FTP components. So does SSIS or Abinitio. Camel can write to database and even SSIS or AI can write to DB.

Is there any reason why we choose Apache Camel over these ETL tools ?

Your help is appreciated. Thanks

like image 452
Maverick Avatar asked Oct 24 '25 03:10

Maverick


2 Answers

I have not worked with the ETL tools you mentioned. I have worked with a few others and my answer is based on it.

Apache Camel

  • Apache Camel is an Open Source integration framework.
  • It provides libraries to build programs that will help perform an ETL operation.
  • A wide variety of components are available in camel that can be used to connect to different types of sources. New Components are added frequently by open source developers. Check this http://camel.apache.org/components.html
  • You should be an experienced developer to build routes/programs that can do ETL efficiently. That said, the components you mentioned are pretty basic and needs less time to build with camel.
  • There is some tooling available but not as full fledged compared to many ETL tools. . This is not a drawback since camel is a framework not a specialized ETL tool. Many ETL tools could be using camel or other integration frameworks internally.
  • Data mapping from to different format can be done with inbuilt transformers or additional programming.

ETL tools

  • ETL tools are built for specific ETL purposes.
  • Most of the ETL tools are intuitive with good tooling. This could mean time savings. You need not be an experienced developer to use one. It can be usually used by analysts with little or no programming background.
  • Most of the ETL tools offer far less components than Camel. Many open source ETL products offer basic components in their free version. You many have to pay for their enterprise version to get advanced components. I am yet to see an ETL tool that provides components for all the sources supported by camel in a free version. I will be glad to see one.
  • New components may not be easily supported unless you have a subscription.
  • Data mapping from to different formats is usually easy to perform.

All that said, the components you are looking for are pretty basic and usually supported by most of the ETL tools. With that in mind, I would base my decision on cost, ease of use, specialization around the components available and whether support for other components are required.

like image 156
techuser soma Avatar answered Oct 27 '25 05:10

techuser soma


A lot of tools such, almost any programming language and even shell/bat scripts can connect to a database and use S/FTP file transfers.

Apache Camel is a framework designed for building integrations as efficient as possible. ETL tools are designed to import data into data warehouses, which may be seen as a special case of integration.

On top of that, Apache Camel is open source with all aspects that comes with it - compared to SSIS which is not open source.

You have not even stated what you want your tool to do, so I'm unable to answer the question.

like image 30
Petter Nordlander Avatar answered Oct 27 '25 05:10

Petter Nordlander



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!