Migration from DSE Java driver to OSS Java driver or Scylla Java driver
Piotr Jastrzębski edited this page Mar 8, 2019
·
3 revisions
It is always recommended to re-compile your application using the new driver. This way compiler will ensure that the code is compatible and can safely work new driver.
- DSE Java driver can be only used to connect to DSE. "Using the DSE Drivers against anything other than DataStax Enterprise server is a violation of the user license." [1]
- DSE Java driver has Unified Authentication which enables LDAP and Kerberos integration. [2]
- DSE Java driver has support for Solr.
- DSE Java driver has support for Graph. [3]
- DSE comes with a set of additional types to represent geospatial data: PointType, LineStringType, and PolygonType [4]
- DSE Java driver supports DSE specific protocol extentions DSE_V1 and DSE_V2. They are backwards compatible [5] and add support for Continuous Paging [6] and backpressure.
"Currently, there are no performance differences between the OSS and DSE Drivers, as DSE Drivers use the same core code as the OSS Drivers" [1]
In some cases recompilation won't be enough and some changes to the code will be necessary. Using a class from any of the following packages will result in a code change:
- com.datastax.driver.dse
- com.datastax.driver.dse.auth
- com.datastax.driver.dse.geometry
- com.datastax.driver.dse.geometry.codecs
- com.datastax.driver.dse.graph
- com.datastax.driver.dse.search
- com.datastax.driver.dse.serde
- com.datastax.dse.graph.api
- com.datastax.dse.graph.api.predicates
- com.datastax.dse.graph.internal
- com.datastax.dse.graph.internal.serde
- com.datastax.dse.graph.internal.utils
In particular usage of DseCluster and DseSession would have to be changed to Cluster and Session. Moreover usage of ProtocolVersion DSE_V1 or DSE_V2 would have to be changed to V4 or V5.