Destination Cassandra #
I. Setup Connection Configuration #
-
From
HOME
, navigate to the sample connection configuration file:vi conf/conn/cassandra.yaml
-
You can store your connection credentials in a secrets management service and tell Replicant to retrieve the credentials. For more information, see Secrets management.
Otherwise, you can put your credentials like usernames and passwords in plain form like the sample below:
type: CASSANDRA #You can specify multiple Cassandra nodes using the format below: cassandra-nodes: node1: #Replace node1 with your node name host: 172.17.0.2 #Replace 172.17.0.2 with your node's host port: 9042 #Replace 9042 with your node's port node2: #Replace node2 with your node name host: 172.17.0.3 #Replace 172.17.0.3 with your node's host port: 9043 #Replace 9042 with your node's port username: 'cassandra' #Replace cassandra with your username that connects to your Cassandra server password: 'cassandra' #Replace 'cassandra' with your user's password read-consistency-level: LOCAL_QUORUM #Allowed values: ANY, ONE, TWO, THREE, QUORUM, ALL, LOCAL_QUORUM, EACH_QUORUM, SERIAL, LOCAL_SERIAL, LOCAL_ONE auth-type: "PlainTextAuthProvider" #Allowed values: DsePlainTextAuthProvider, PlainTextAuthProvider max-connections: 30 #Specify the maximum number of connections Replicant can open in Cassandra max-requests-per-connection: #Specify the max number of requests each connection will handle in parallel. max-request-queue-size: #Specify the ,ax queue size to enqueue requests while all connections are busy. If more than the max-queue-size request get queued, then driver throws BusyPoolException. pool-timeout-ms: #Specify the time in ms, after which driver throws BusyPoolException, if all connections are busy serving max requests.
II. Setup Applier Configuration #
If you want to change the table definitions in destination Cassandra, change the applier configurations with the proceeding steps:
-
From
HOME
, navigate to the Applier Configuration File:vi conf/dst/cassandra.yaml
-
Make the necessary changes as follows:
snapshot: threads: 32 #Specify the maximum number of threads Replicant should use for writing to the target batch-size-rows: 100 #transaction-size-rows: 1_000_000 skip-tables-on-failures : true _traceDBTasks: true keyspaces: tpch: replication-property: "{'class' : 'SimpleStrategy' , 'replication_factor' : 1}" durable-writes: true bulk-load: enable: true|false #Set to true if you want to enable bulk loading type: FILE serialize: true|false #Set to true if you want the generated files to be applied in serial/parallel fashion #For versions 20.09.14.3 and beyond native-load-configs: #Specify the user-provided LOAD configuration string which will be appended to the s3 specific LOAD SQL command