Presto/Trino Database Connection

Hi there,

I am trying to set up a connection through Presto/Trino and it appears Stardog is not picking up the database driver .jar files, as I am getting errors from Stardog stating that it cannot find the driver classes.

Can I confirm with you that I should be using the Generic SQL option in Studio? I have also added these db connection details to a .properties file per the documentation.

I have tried the following .jar files for Presto/Trino:

  • presto-jdbc-333.jar .... with jdbc.url=jdbc:presto://
  • trino-jdbc-360.jar .... with jdbc.url=jdbc:trino://

My database properties file contains the following (for the latest Trino driver):

jdbc.url=jdbc:trino://presto-emd-pp.clusterprd.server:443/emd-pp/emd
jdbc.username=[username]
jdbc.password=[passwordredacted]
jdbc.driver=io.trino.jdbc.TrinoDriver
ext.SSL=true
ext.SSLKeyStorePassword=analytics
ext.SSLKeyStorePath=/var/opt/stardog/server/dbms/keyfile.jks

This is the error message I am getting:

sh-4.2$ ./stardog-admin data-source add /var/opt/stardog/cida_trino.properties
Unable to load class: io.trino.jdbc.TrinoDriver from ClassLoader:sun.misc.Launcher$AppClassLoader@27f8302d;ClassLoader:java.net.URLClassLoader@2e23ac7d

I am running a Dockerized instance of Stardog on a corporate (bank firewalled) computer. It does not appear that Stardog is recognizing or picking up the .jar files in /server/dbms.

/var/opt/stardog is mounted to this folder on my computer: /host_mnt/c/Users/username/stardog-home

Any assistance would be appreciated.

Thanks!

Hi Carmen,

I know this was addressed through other channels but I just wanted to add a note for future forum readers. We recommend to create a directory on the host to hold the jars, mount an additional volume in docker run using the newly created dir, and declare the STARDOG_EXT env in the docker run command set to the mounted directory containing the jars.

Best,
Jess