Chapter 1. General Information

Table of Contents

Overview of UnityJDBC

Overview of UnityJDBC

UnityJDBC is a Type 4 JDBC driver capable of querying multiple databases in a single SQL query. The driver can be used similar to other JDBC drivers including with query, reporting, and business intelligence tools, application and web servers, or stand-alone Java programs. Internally, UnityJDBC contains a database engine and optimizer allowing it to efficiently join data from source databases to produce a single ResultSet. UnityJDBC supports updating data using results produced from cross-database queries and performs automatic dialect translation to convert queries into the proper dialect. A brief list of the major supported features is below:

  • supports cross-database joins of any number or type of JDBC-accessible sources (Microsoft SQL Server, Oracle, DB2, Postgres, MySQL, Sybase, MongoDB, Cassandra, etc.)

  • allows SQL-based comparison of data across databases to detect data inconsistencies, errors, or for synchronization of data between databases

  • performs SQL dialect translation and automatically executes functions and features internally in the driver if the data source does not support them

  • contains an advanced optimizer and query processor that performs efficient query processing by having each source process as much of the query as possible (e.g. "push-down filters")

  • cross-database queries can be used to insert records into tables (INSERT INTO ... SELECT)

  • supports cross-database PreparedStatements

  • has a driver by-pass feature to allow direct access to individual sources

  • supports connection pools and connection properties

  • supports user-defined functions

  • works with any data source that has a JDBC driver and will run on any Java supported platform

  • works with all SQL query software including SQuirreL SQL, Aqua Data Studio, Toad, and RazorSQL

  • works will business intelligence and reporting software including Tableau, JasperReports, Pentaho, and Splunk