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 in each datacenter, , and/or disable the commit log for writes, Durable Writes.

Note: Datacenter names are case-sensitive. Use dsetool status to verify the datacenter name.
Restriction: Changing the keyspace name is not supported.

Synopsis

ALTER KEYSPACE keyspace_name 
  WITH REPLICATION = { replication_map }
  [ AND DURABLE_WRITES = ( true | false ) ] ;
Table 1. Legend
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] 
 }
Important: Use only replication strategy implementations bundled with DSE.
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 1.

ALTER KEYSPACE cycling
WITH REPLICATION = { 
  'class' : 'NetworkTopologyStrategy',
  'SearchAnalytics' : 1 } 
 AND DURABLE_WRITES = false ;