JDBC Driver

openLooKeng can be accessed from Java using the JDBC driver. Add the jar to the classpath of your Java application.

Starting from version 1.0.1, the driver is also available from Maven Central. Specify an appropriate version number:


Driver Name

The driver class name is io.hetu.core.jdbc.OpenLooKengDriver. Most users will not need this information as drivers are loaded automatically.


The following JDBC URL formats are supported:


For example, use the following URL to connect to openLooKeng running on example.net port 8080 with the catalog hive and the schema sales:


The above URL can be used as follows to create a connection:

String url = "jdbc:lk://example.net:8080/hive/sales";
Connection connection = DriverManager.getConnection(url, "test", null);

Connection Parameters

The driver supports various parameters that may be set as URL parameters or as properties passed to DriverManager. Both of the following examples are equivalent:

// URL parameters
String url = "jdbc:lk://example.net:8080/hive/sales";
Properties properties = new Properties();
properties.setProperty("user", "test");
properties.setProperty("password", "secret");
properties.setProperty("SSL", "true");
Connection connection = DriverManager.getConnection(url, properties);

// properties
String url = "jdbc:lk://example.net:8080/hive/sales?user=test&password=secret&SSL=true";
Connection connection = DriverManager.getConnection(url);

These methods may be mixed; some parameters may be specified in the URL while others are specified using properties. However, the same parameter may not be specified using both methods.

Parameter Reference

userUsername to use for authentication and authorization.
passwordPassword to use for LDAP authentication.
socksProxySOCKS proxy host and port. Example: localhost:1080
httpProxyHTTP proxy host and port. Example: localhost:8888
applicationNamePrefixPrefix to append to any specified ApplicationName client info property, which is used to set the source name for the openLooKeng query. If neither this property nor ApplicationName are set, the source for the query will be presto-jdbc.
accessTokenAccess token for token based authentication.
SSLUse HTTPS for connections
SSLKeyStorePathThe location of the Java KeyStore file that contains the certificate and private key to use for authentication.
SSLKeyStorePasswordThe password for the KeyStore.
SSLTrustStorePathThe location of the Java TrustStore file that will be used to validate HTTPS server certificates.
SSLTrustStorePasswordThe password for the TrustStore.
KerberosRemoteServiceNameopenLooKeng coordinator Kerberos service name. This parameter is required for Kerberos authentication.
KerberosPrincipalThe principal to use when authenticating to the openLooKeng coordinator.
KerberosUseCanonicalHostnameUse the canonical hostname of the openLooKeng coordinator for the Kerberos service principal by first resolving the hostname to an IP address and then doing a reverse DNS lookup for that IP address. This is enabled by default.
KerberosServicePrincipalPatternopenLooKeng coordinator Kerberos service principal pattern. The default is ${SERVICE}@${HOST}. ${SERVICE} is replaced with the value of KerberosRemoteServiceName and ${HOST} is replaced with the hostname of the coordinator (after canonicalization if enabled).
KerberosConfigPathKerberos configuration file.
KerberosKeytabPathKerberos keytab file.
KerberosCredentialCachePathKerberos credential cache.
extraCredentialsExtra credentials for connecting to external services. The extraCredentials is a list of key-value pairs. Example: foo:bar;abc:xyz will create credentials abc=xyz and foo=bar






● 拼写,格式,无效链接等错误;

● 技术原理、功能、规格等描述和软件不一致,存在错误;

● 原理图、架构图等存在错误;

● 版本号不匹配:文档版本或内容描述和实际软件不一致;

● 对重要数据或系统存在风险的操作,缺少安全提示;

● 排版不美观,影响阅读;


● 描述存在歧义;

● 图形、表格、文字等晦涩难懂;

● 逻辑不清晰,该分类、分项、分步骤的没有给出;


● 很难通过搜索引擎,openLooKeng官网,相关博客找到所需内容;


● 命令、命令参数等错误;

● 命令无法执行或无法完成对应功能;


● 关键步骤错误或缺失,无法指导用户完成任务,比如安装、配置、部署等;

● 逻辑不清晰,该分类、分项、分步骤的没有给出

● 图形、表格、文字等晦涩难懂

● 缺少必要的前提条件、注意事项等;

● 描述存在歧义