Octopus is a simple Java-based Extraction, Transformation, and Loading (ETL) tool. It may connect to any JDBC data sources and perform transformations defined in an XML file.
DODS data models are supported by generating oid's for new objects. Natural keys can be used to insert/update existing data and create relationships with oid's.
A loadjob-generator is provided to generate Octopus loadjob skeletons (and even DODS DOML files !) from an existing database. Many different types of databases can be mixed (MSSQL, Oracle, DB2, QED, JDBC-ODBC with Excel and Access, MySQL, CSV-files, XML-files,...) Three special JDBC drivers come with Octopus to support JDBC access to CSV-files (CSV-JDBC), MS-SQL (FreeTDS) and XML.
Octopus supports Ant and JUnit to create a database / tables and extract /load data during a build or test process. Loadjobs can be executed during execution of an application installation (e.g. NSIS, Installshield,...)
Octopus support many different database vendors( PostgreSQL, MySQL, MSQL, Oracle, Sybase, ... ).
Octopus is an Open-source project under LGPL licence.
Octopus home page: http://octopus.objectweb.org/