HPL/SQL is included to Apache Hive since version 2.0



HPL/SQL allows you to work with multiple databases in a single HPL/SQL script.

Configuring Connections

Connection information is stored in hplsql-site.xml configuration file. The default connection profile is defined by hplsql.conn.default option:


Predefined Connections

hplsql-site.xml contains predefined connections for some databases:

  • hiveconn - Embedded Hive JDBC Connection (not requiring a HiveServer)
  • hive2conn - HiveServer2 JDBC Connection
  • db2conn - IBM DB2 JDBC Connection
  <description>IBM DB2 connection</description>

When using DB2 JDBC driver make sure db2jcc4.jar is specified in CLASSPATH.

  • tdconn - Teradata JDBC Connection

When using Teradata JDBC driver make sure teradata-jdbc4-xx.xx.xx.jarand tdgssconfig.jar (both .jars are required) are specified in CLASSPATH.

  • mysqlconn - MySQL JDBC Connection

When using MySQL JDBC driver make sure mysql-connector-java-x.x.xx-bin.jar is specified in CLASSPATH.

You can modify these connection profiles and specify appropriate connection details. Set the default connection profile using the hplsql.conn.default option.

Defining a New Connection

HPL/SQL allows you to define any connection profile. Just create a new parameter named hplsql.conn.<your_connection_name> and specify the connection details:

<value>JDBC Driver;JDBC Connection String;User;Password</value>

For example, to create a new connection sales that points to the sales_db database in MySQL add the following section to your hplsql-site.xml file:


Read your JDBC driver documentation how to properly specify the connection string and available options.

Once you configured the connections, read how to use them in HPL/SQL scripts.