PhixFlow Help
Driver Classes
This page is for administrators who need to connect PhixFlow to external databases using Driver Classes.
Overview
The PhixFlow application communicates with:
the database on which it is installed.
an external database from which it needs to load data.
This is configured using a Datasource in an analysis model.
To communicate with a database, PhixFlow needs:
The appropriate database driver jar files in its Driver Class File Directory.
This location is set directly in the PhixFlow database, and is displayed in System Configuration.A Driver Class for the database. One driver class can have multiple Driver Class Files.
There are three databases on which PhixFlow can be installed:
MariaDB
Microsoft (MS) SQL Server
Oracle.
For each of these, PhixFlow is preconfigured with:
database driver jar files in
tomcat/webapps/phixflow/WEB-INF/libdriver classes that use the database driver jar files.
PhixFlow automatically uses the appropriate driver class to communicate with its own database. You can use these driver classes in a datasource. However, you cannot update their properties or see their driver class files.
You can use the MariaDB driver class to connect to a MySQL database.
PhixFlow also includes a number of unconfigured drivers, such as Google Big Query, which are included for backwards compactivity. See Deprecated Database Drivers below for full details.
You may need to configure additional database drivers to support:
other types of database
different versions a database.
How to Configure a Driver Class
Find out which JDBC database drivers you require. This information is available in the documentation for your database. Also check the System Requirements and Compatibility page for supported versions. Communication to a database may require multiple JDBC driver files.
Download the required JDBC driver files from:
either the database supplier (recommended)
or an open source repository, such as https://mvnrepository.com/
.
Save the files to the Driver Class File Directory. You need permission to add system files to do this.
If it has been set in the PhixFlow database, it will be listed in the System Configuration.
If it has not been set:
In the PhixFlow application, for each type of database, create one Driver Class; see Adding a Driver Class, below.
In the driver class properties → Driver Class File section, add all the JDBC driver files that the database requires; see Driver Classes and Driver Class File Properties, below.
For each driver class file, specify the full path to the file, which is stored in the Driver Class File Directory, or a sub-directory of it.
To create a driver class, in the full repository scroll down to the
To add a new driver, right-click Driver Classes and select
To open an existing driver class, in the repository click on its name.
You cannot change the pre-configured driver classes supplied with your PhixFlow installation. These have the System Defined property ticked.
The driver classes configured in the repository populate the drop-down list in
Basic Settings
Field | Description |
|---|---|
Name | Enter a unique name for the database driver, which will appear in the PhixFlow repository. |
Driver Class Name | Enter the driver class name, which you will find in the driver documentation. For example, for MySQL, the driver name is: |
System Defined | Read-only.
|
Description | Optionally enter a description for the driver. |
Driver Class File
This section has a toolbar with standard buttons.
The grid lists the jar files for this driver class. Each database usually requires multiple jar files. To add a jar file to the list:
Click
to open a the properties for a new Driver Class File Location.
(Driver Class File Location properties are only available from this grid. They are not listed in the repository.)In the Basic Settings section, set:
Click
to save and close the properties and return to the driver class properties.
To remove a jar file from the grid, use the toolbar button
Using Drivers Across Multiple Instances
If you run multiple instances of PhixFlow, you must ensure that any custom driver classes you create:
are exported and then imported to other instances
have access to the database driver jar file from the other instances.
This ensures that all datasource objects that use the database driver continue to work on the other instances.
How PhixFlow Decides Which Driver to Use
PhixFlow is configured with a class path for finding drivers. This will use the first appropriate driver it finds in:
The Connector Jar File Location configured for the driver classes file.
tomcat/webapps/phixflow/WEB-INF/libtomcat/lib.
We do not recommend using the tomcat/lib directory for driver files.
Deprecated Driver Classes
The repository includes the following, deprecated driver classes, for backwards compatibility.
DB2
Debug JDBC
Google Big Query
Hadoop Hive
MySQL
Netezza
Sun ODBC Bridge
Teradata
These are drivers are read-only and do not connect to any database drivers. If you want to connect to one of these databases, we recommend you create a new driver class in which you can configure all the database drives needed.
If you want to connect a preconfigured driver class to the appropriate JDBC database driver files, download and save them to tomcat/webapps/phixflow/WEB-INF/lib. Be aware that the deprecated driver classes will be removed in a future release.
Please let us know if we could improve this page feedback@phixflow.com