问题
Is there any open source library (any programming language) that helps to load data from any data source (file, SQL db, NoSQL db, etc.) and store it into any other data repository? I've checked some ETL libraries like Talend or Octopus but they only deal with SQL databases.
回答1:
Try https://flywaydb.org/, since NoSQL has different nature than Relational Structure you should write your own converter
{ "item_id" : 1, "tags" : ["a","b","c"] }
How this should be translated into RDBMS? you can use flyway for relational-to-relational db migration
回答2:
Have a look at Apache Camel and their ETL Example. Camel knows how to load and store from a large variety of sources and repositories, including files, SQL, and various NoSQL databases like Cassandra and MongoDB.
You could also check out 10 Open Source ETL Tools.
By the way, Talend is not limited to SQL databases, as shown in these blog posts:
- Talend & MongoDB: An Introduction to Simple Relational Mapping into MongoDB
- How to Offload Oracle and MySQL Databases into Hadoop using Apache Spark and Talend
来源:https://stackoverflow.com/questions/35284941/library-to-move-data-between-repositories