Scriptella

Script execution tool From Wikipedia, the free encyclopedia

Scriptella is an open source ETL (Extract-Transform-Load) and script execution tool written in Java. It allows the use of SQL or another scripting language suitable for the data source to perform required transformations.[1] Scriptella does not offer any graphical user interface.

Quick Facts Stable release, Operating system ...
Close

Typical use

  • Database migration.
  • Database creation/update scripts.
  • Cross-database ETL operations, import/export.
  • Alternative for Ant <sql> task.
  • Automated database schema upgrade.[2]

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 an ETL file.
  • Support for many useful JDBC features, e.g. parameters in SQL including file blobs and JDBC escaping.
  • Performance and low memory usage are one of the 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, without deployment or installation.
  • Easy-To-Run ETL files directly from Java code.
  • 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 and integration with scripting languages. Out of the box support for JSR 223 (Scripting for the Java Platform) compatible languages.
  • Built-In CSV, TEXT, XML, LDAP, Lucene, Velocity, JEXL and Janino providers. Integration with Java EE, Spring Framework, JMX and JNDI for enterprise ready scripts.

Further reading

  • Biswas, Neepa; Sarkar, Anamitra; Mondal, Kartick Chandra (2019). "Empirical Analysis of Programmable ETL Tools". Computational Intelligence, Communications, and Business Analytics. Communications in Computer and Information Science. Vol. 1031. Springer. pp. 267–277. doi:10.1007/978-981-13-8581-0_22. ISBN 978-981-13-8580-3. Retrieved 31 March 2025.

References

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.