ALTER KEYSPACE
Changes keyspace replication strategy and enables or disables commit log.
Modifies the keyspace replication strategy, which is the number of copies of the data created in each datacenter, Replication strategy class and factor settings, and/or disable the commit log for writes, Durable Writes.
nodetool status
to verify the datacenter name.Synopsis
ALTER KEYSPACE keyspace_name
WITH REPLICATION = {replication_map}
[AND DURABLE_WRITES = true|false] ;
Syntax conventions | Description |
---|---|
UPPERCASE | Literal keyword. |
Lowercase | Not literal. |
Italics |
Variable value. Replace with a user-defined value. |
[] |
Optional. Square brackets ( [] ) surround
optional command arguments. Do not type the square brackets. |
( ) |
Group. Parentheses ( ( ) ) identify a group to
choose from. Do not type the parentheses. |
| |
Or. A vertical bar ( | ) separates alternative
elements. Type any one of the elements. Do not type the vertical
bar. |
... |
Repeatable. An ellipsis ( ... ) indicates that
you can repeat the syntax element as often as required. |
'Literal string' |
Single quotation ( ' ) marks must surround
literal strings in CQL statements. Use single quotation marks to
preserve upper case. |
{ key : value
} |
Map collection. Braces ( { } ) enclose map
collections or key value pairs. A colon separates the key and the
value. |
<datatype1,datatype2> |
Set, list, map, or tuple. Angle brackets ( <
> ) enclose data types in a set, list, map, or tuple.
Separate the data types with a comma. |
cql_statement; |
End CQL statement. A semicolon ( ; ) terminates
all CQL statements. |
[--] |
Separate the command line options from the command arguments with
two hyphens ( -- ). This syntax is useful when
arguments might be mistaken for command line options. |
' <schema> ... </schema>
' |
Search CQL only: Single quotation marks ( ' )
surround an entire XML schema declaration. |
@xml_entity='xml_entity_type' |
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] }
- DURABLE_WRITES = true | false
-
Optional. (Not recommended), false bypasses the commit log when writing to the keyspace. Default value is
true
.CAUTION: Never disable durable writes when using SimpleStrategy replication.
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 3.
ALTER KEYSPACE cycling WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'datacenter1' : 3 } AND DURABLE_WRITES = false ;