Steps to config Datadirect JDBC Driver for Cassandra in IBM InfoSphere Information Server
Question
How do I configure and use Datadirect JDBC Driver for Cassandra with JDBC Connector in IBM InfoSphere Information Server
Answer
Steps to configure the driver:
In order to configure the driver and use it with the JDBC Connector, the following entries needs to be added to the isjdbc.config file under $DSHOME. In case, if the file does not exist, then the file needs to be created and the entries should be added to the file.
CLASSPATH=/opt/IBM/InformationServer/ASBNode/lib/java/IScassandra.jar
CLASS_NAMES=com.ibm.isf.jdbc.cassandra.CassandraDriver
Configuring the Connection properties in the JDBC Connector :
The following connection properties must be specified while using the Datadirect JDBC Driver for Cassandra. The URL in the JDBC Connector should include the connection URL to connect to Cassandra Server.
jdbc:ibm:cassandra://<CassandraServer>:<port>;SchemaDefinition=<path_to_directory_where_schema_definition_can_be_stored_locally>/SchemaDefinition.config;KeyspaceName=<KeySpaceName>;ReadConsistency=ONE;WriteConsistency=ONE;
ex : jdbc:ibm:cassandra://mycassandraserver.ibm.com:9042;SchemaDefinition=/home/cassandra/SchemaDefinition.config;KeyspaceName=testing;ReadConsistency=ONE;WriteConsistency=ONE;
For more details on the connection properties supported by the driver and the explanation of each of the connection properties please refer to the driver documentation.
Additional Notes :
When the new table is created in the keyspace and the definition needs to be updated in the Schema definition stored in the Information Server, the statement REFRESH MAP needs to be executed in the BeforeSQL and / or BeforeSQL Node.
The REFRESH MAP statement adds newly discovered objects to your relational view of native data. It also incorporates any configuration changes made to your relational view by reloading the schema map configuration file.
Please note that this would be required only when the schema has changed on the cassandra server and need not be added for all the jobs.
Links to the Driver documentation
https://documentation.progress.com/output/DataDirect/jdbccassandrahelp/
Limitations :
1) Complex data types are not supported
2) For the Table action property in the Connector, only Append mode is supported. As the driver does not support Create and Truncate operations are not yet supported