You can
change the replication strategy of the keyspace using ‘ALTER KEYSPACE’ command.
ALTER KEYSPACE keyspace_name WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : N | 'class' : 'NetworkTopologyStrategy', 'dc1_name' : N [, ...] } [AND DURABLE_WRITES = true|false] ;
For
example, let me create a key space ‘cassandratutorial’ with 'SimpleStrategy'.
CREATE
keyspace cassandratutorial WITH REPLICATION =
{
'class' : 'SimpleStrategy',
'replication_factor' : 3
};
cqlsh> CREATE keyspace cassandratutorial WITH REPLICATION = ... { ... 'class' : 'SimpleStrategy', ... 'replication_factor' : 3 ... }; cqlsh> cqlsh> DESCRIBE cassandratutorial; CREATE KEYSPACE cassandratutorial WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '3'} AND durable_writes = true;
Now, you
can change the replication strategy of the keyspace ‘cassandratutorial’ by
executing below command.
ALTER KEYSPACE
cassandratutorial WITH REPLICATION = {
'class' : 'NetworkTopologyStrategy',
'bangalore' : 3, //Datacenter 1
'tokyo' : 2, //Datacenter 2
'berlin' : 3 //Datacenter 3
};
cqlsh> ALTER KEYSPACE cassandratutorial WITH REPLICATION = { ... 'class' : 'NetworkTopologyStrategy', ... 'bangalore' : 3, //Datacenter 1 ... 'tokyo' : 2, //Datacenter 2 ... 'berlin' : 3 //Datacenter 3 ... }; cqlsh> cqlsh> DESCRIBE cassandratutorial; CREATE KEYSPACE cassandratutorial WITH replication = {'class': 'NetworkTopologyStrategy', 'bangalore': '3', 'berlin': '3', 'tokyo': '2'} AND durable_writes = true;
Note
You should
run the command 'nodetool repair -full keyspace', once replication strategy is changed.
No comments:
Post a Comment