Restoring backups (beta)

Restore keyspaces and tables using the DSE Backup and Restore Service.

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.

The DSE Backup and Restore service lets you restore full keyspaces as well as individual tables within a backed up keyspace. In addition, you can also override backup store settings, allowing you to restore a backup into a cloned cluster without creating a backup store configuration. For details, see RESTORE (beta).

Restore a full keyspace backup

To restore a full keyspace from a backup:
  1. List the backups for the target keyspace:
    LIST BACKUPS FROM KEYSPACE keyspace;
    
     id                | backup_time | store      | keyspace   | tables               | nodes     | schema_versions | status | details
    -------------------+-------------+------------+------------+----------------------+-----------+-----------------+--------+------------------
     config_name-UUID  | timestamp   | store_name | keyspace   | {'table1', 'table2'} | {node_id} | schema_status   | status | status_details
  2. Restore the keyspace:
    RESTORE keyspace
        FROM BACKUP config_name-UUID
        FROM STORE store_name;

Restore individual tables from a keyspace

To restore individual tables from within a keyspace backup:
  1. List the backups for the target keyspace:
    LIST BACKUPS FROM KEYSPACE keyspace;
    
     id                | backup_time | store      | keyspace | tables               | nodes     | schema_versions | status   | details
    -------------------+-------------+------------+----------+----------------------+-----------+-----------------+----------+------------------
     config_name-UUID  | timestamp   | store_name | keyspace | {'table1', 'table2'} | {node_id} | schema_status   | status   | status_details
  2. Restore the tables. Multiple tables can be separated with commas:
    RESTORE table1, table2
        FROM BACKUP config_name-UUID
        FROM STORE store_name;

Restore a keyspace to a new keyspace

To restore keyspace data to a new keyspace:
  1. List the backups for the target keyspace:
    LIST BACKUPS FROM KEYSPACE keyspace;
    
     id                | backup_time | store      | keyspace   | tables               | nodes     | schema_versions | status   | details
    -------------------+-------------+------------+------------+----------------------+-----------+-----------------+----------+------------------
     config_name-UUID  | timestamp   | store_name | keyspace   | {'table1', 'table2'} | {node_id} | schema_status   | status   | status_details
  2. Restore the the keyspace into the new keyspace:
    RESTORE table1, table2
        FROM BACKUP config_name-UUID
        FROM STORE store_name
        INTO KEYSPACE keyspace_new;
    Important: The new keyspace must exist.

Restore a keyspace into a cloned cluster

To restore keyspace data to a new keyspace:
  1. List the backups for the target keyspace:
    LIST BACKUPS FROM KEYSPACE keyspace;
    
     id                | backup_time | store      | keyspace | tables               | nodes     | schema_versions | status   | details
    -------------------+-------------+------------+----------+----------------------+-----------+-----------------+----------+------------------
     config_name-UUID  | timestamp   | store_name | keyspace | {'table1', 'table2'} | {node_id} | schema_status   | status   | status_details
  2. On a node in the new cluster that has the DSE Backup and Restore Service enabled, restore the the keyspace:
    RESTORE keyspace
        FROM BACKUP config_name-UUID
        USING 'blob_store_class'
        WITH settings=settings;
    The required settings for each backup store class are:
    • FSBlobStore: path
    • GoogleCloudBlobStore: bucket
    • S3BlobStore: bucket and region or bucket and endpoint

For instructions on enabling the DSE Backup and Restore Service, see Enabling and configuring the DSE Backup and Restore Service (beta) .