CREATE BACKUP CONFIGURATION (beta)

Creates a new backup configuration.

Important: The DSE Backup and Restore Service is currently in beta and is intended to be used by users provisioning DSE via the DataStax Cass Operator in a Kubernetes cluster.

Creates a new backup configuration for a keyspace. The keyspace can be backed up to one or more backup stores, and the frequency at which the backup should be run can be specified. If enabled is set to false, the backup will only run when manually triggered, and frequency is ignored.

Backup configurations are subject to the following restrictions:
  • Backup configurations can only target a single keyspace. Specific tables cannot be backed up.
  • Only one configuration targeting the same keyspace and backup store can exist.
  • Configurations that target the same keyspace in different backup stores are allowed.

Synopsis

CREATE BACKUP CONFIGURATION configuration_name 
    OF keyspace_name
    TO STORE store_name [, store_name_2, store_name_N, ... ]
    WITH frequency = frequency
    AND enabled = (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.
configuration_name

The backup configuration name. Configuration names can use alphanumeric characters and underscores only. They are case insensitive.

keyspace_name

Name of the keyspace to backup.

store_name

Name of the backup store. Store names can use alphanumeric characters and underscores only. They are case insensitive.

frequency
Standard cron timing expression defining the frequency at which the backup should be run, using Universal Time Coordinated (UTC). Cron timing expressions are five entries defined as:
  1. MM: two digit minute, 0-60.
  2. HH: two digit hour, 0-24.
  3. DD: two digit day of the month, 1-31.
  4. MM: two digit month, 1-12 (January to December).
  5. D: single digit day of the week, 0-6 (Sunday to Saturday). Also accepts three letter day abbreviations, MON, TUE, WED, THU, FRI, SAT.
Note: An * is a wildcard for all.
For example, run a backup on the first minute of midnight every day:
0 0 * * *
Tip: Easily generate cron timing expressions using https://crontab-generator.org/. Note that shortcuts such as */30 * * * * to run a backup every 30 minutes are not supported.

Examples

Create an automatic backup configuration

Create an automatic backup configuration that runs daily at midnight on two separate stores:
CREATE BACKUP CONFIGURATION daily_backup_config 
    OF keyspace_1
    TO STORE local_store_1, s3_store_1
    WITH frequency = '0 0 * * *'
    AND enabled = true;

Create a manual backup configuration

Create a backup that can be run manually on a single store:
CREATE BACKUP CONFIGURATION daily_backup_config 
    OF keyspace_2
    TO STORE local_store_1
    WITH frequency = '* * * * *'
    AND enabled = false;
Note: When enabled is set to false, the frequency expression is ignored.