Scriptella
Appearance
Scriptella is an open source Extract-Transform-Load (ETL) and scripts execution tool.
About Scriptella
Its primary focus is simplicity. Don't study yet another complex XML-based language - use SQL(or other scripting language suitable for your datasource) to perform required transformations.
Typical use
- Database migration.
- Database creation/update scripts.
- Cross-database ETL operations, import/export.
- Alternative for Ant <sql> task.
- Automated database schema upgrade.
Features
- Simple XML syntax for scripts. Add dynamics to your existing SQL scripts by creating a thin wrapper XML file:
<!DOCTYPE etl SYSTEM "http://scriptella.javaforge.com/dtd/etl.dtd"> <etl> <connection driver="$driver" url="$url" user="$user" password="$password"/> <script> <include href="PATH_TO_YOUR_SCRIPT.sql"/> -- And/or directly insert SQL statements here </script> </etl>
- Support for multiple datasources (or multiple connections to a single database) in a script file.
- Support for many useful JDBC features , e.g. parameters in SQL including file blobs and JDBC escaping.
- Performance. Performance and low memory usage are one of our primary goals.
- Support for evaluated expressions and properties (JEXL syntax)
- Support for cross-database ETL scripts by using <dialect> elements
- Transactional execution
- Error handling via <onerror> elements
- Conditional scripts/queries execution (similar to Ant if/unless attributes but more powerful)
- Easy-to-Use as a standalone tool or Ant task. No deployment/installation required.
- Built-in adapters for popular databases for a tight integration. Support for any database with JDBC/ODBC compliant driver.
- Service Provider Interface (SPI) for interoperability with non-JDBC DataSources.
- Built-In CSV, LDAP, Velocity and Janino providers. Integration with Spring Framework and JNDI for enterprise ready scripts