ALTER KEYSPACE
Can modify either or both the keyspace:
-
replication strategy - SimpleStrategy or NetworktopologyStrategy
-
replication factor - the number of copies of the data in a cluster
The replication strategy class and factor settings are originally set when creating a keyspace in the replication map. The commit log writes can be modified to use or not use durable writes.
Restriction: Changing the keyspace name is not supported.
Datacenter names are case-sensitive.
Verify the case of the using utility, such as |
Synopsis
ALTER KEYSPACE <keyspace_name> WITH REPLICATION = { <replication_map> } [ AND DURABLE_WRITES = ( true | false ) ] [ AND graph_engine = 'Core' ];
Syntax legend
Syntax conventions | Description |
---|---|
UPPERCASE |
Literal keyword. |
Lowercase |
Not literal. |
|
Variable value. Replace with a user-defined value. |
|
Optional.
Square brackets ( |
|
Group.
Parentheses ( |
|
Or.
A vertical bar ( |
|
Repeatable.
An ellipsis ( |
|
Single quotation ( |
|
Map collection.
Braces ( |
Set, list, map, or tuple.
Angle brackets ( |
|
|
End CQL statement.
A semicolon ( |
|
Separate the command line options from the command arguments with two hyphens ( |
|
Search CQL only: Single quotation marks ( |
|
Search CQL only: Identify the entity and literal value to overwrite the XML element in the schema and solrConfig files. |
- replication_map
-
-
'class' : 'SimpleStrategy', 'replication_factor' : <N>
Assigns the same replication factor to the entire cluster. Use for evaluation and single datacenter test and development environments only.
REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : <N> }
-
'class' : 'NetworkTopologyStrategy', '<datacenter_name>' : <N>, …
After the class declaration, assign replication factors to each datacenter by name in a comma-separated list. Use in production environments and multi-DC test and development environments. Datacenter names must match the snitch DC name; see Snitches.
REPLICATION = { 'class' : 'NetworkTopologyStrategy', '<datacenter_name>' : <N> [, '<datacenter_name>' : <N> ] }
-
Use only replication strategy implementations bundled with DSE. |
- DURABLE_WRITES = true | false
-
Optional. Although not recommended, can be changed to false, to bypass the commit log when writing to the keyspace. Default value is
true
.Never disable durable writes when using SimpleStrategy replication.
- graph_engine = 'Core'
-
Optional. Use to treat a Cassandra keyspace as a graph. Only the 'Core' engine can be specified; the 'Classic' engine cannot.
Example
Change the cycling
keyspace to NetworkTopologyStrategy
in a single datacenter and turn off durable writes (not recommended).
This example uses the default datacenter name with a replication factor of 1.
ALTER KEYSPACE cycling
WITH REPLICATION = {
'class' : 'NetworkTopologyStrategy',
'SearchAnalytics' : 1
};
Change the food_cql
keyspace into a graph.
ALTER KEYSPACE food_cql
WITH REPLICATION = {'class': 'SimpleStrategy', 'replication_factor': 1}
AND graph_engine = 'Core';