ScyllaDB Documentation Logo Documentation
  • Server
    • ScyllaDB Open Source
    • ScyllaDB Enterprise
    • ScyllaDB Alternator
  • Cloud
  • Tools
    • ScyllaDB Manager
    • ScyllaDB Monitoring Stack
    • ScyllaDB Operator
  • Drivers
    • CQL Drivers
    • DynamoDB Drivers
Download
Menu
Scylla Manager Backup Specification

Specification¶

  • Directory Layout

  • Manifest File

Directory Layout¶

The Scylla Manager backup requires a backup location string that specifies the storage provider and name of a bucket (using AWS S3 naming) ex. s3:<your S3 bucket name>. In that bucket Scylla Manager creates a buckup directory where all the backup data and metadata are stored.

There are three subdirectories:

  • meta - contains backup manifests

  • schema - contains text dumps of database schema

  • sst - contains the data files

meta¶

The meta directory contains backup manifests. Please find below a listing of meta directory with three nodes and three runs of a backup task.

meta
└── cluster
    └── 3e99d4a8-67d2-45fe-87fb-87b1b90ea2dc
        └── dc
            └── dc1
                └── node
                    ├── 01c9349e-89e6-4ceb-a727-4f27f9f2acce
                    │   ├── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095541UTC_manifest.json.gz
                    │   ├── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095542UTC_manifest.json.gz
                    │   └── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095748UTC_manifest.json.gz
                    ├── 427be6b6-0773-465c-b1a6-4ed2265500fe
                    │   ├── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095541UTC_manifest.json.gz
                    │   ├── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095542UTC_manifest.json.gz
                    │   └── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095748UTC_manifest.json.gz
                    └── ae6a5cf3-cb53-4954-8c16-866003727111
                        ├── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095541UTC_manifest.json.gz
                        ├── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095542UTC_manifest.json.gz
                        └── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095748UTC_manifest.json.gz

Each node has it’s own directory, the path is structured as follows.

meta/cluster/<cluster ID>/dc/<data center name>/node/<node ID>

The directory is flat and contains all the manifests, the file name is structured as follows.

task_<task ID>_tag_<snapshot tag>_manifest.json.gz

You may find that the directory contains manifest files with .tmp suffix. Those are manifests files of backups that are being uploaded to the backup location. They are are marked as temporary until all the backup files are fully uploaded.

schema¶

The schema directory contains text dumps of database schema. They are mainly for information purposes, for restore the backup system_schema keyspace shall be used. To enable upload of the files make sure that the cluster is added with username and password flags.

schema
└── cluster
    └── 3e99d4a8-67d2-45fe-87fb-87b1b90ea2dc
        ├── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095541UTC_schema.tar.gz
        ├── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095542UTC_schema.tar.gz
        └── task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095748UTC_schema.tar.gz

The schema file path is structured as follows.

meta/cluster/<cluster ID>/task_<task ID>_tag_<snapshot tag>_schema.tar.gz

sst¶

The sst directory contains the data files. Please find below a part listing of sst directory showing a single table of a single node.

sst/
└── cluster
    └── 3e99d4a8-67d2-45fe-87fb-87b1b90ea2dc
        └── dc
            └── dc1
                └── node
                    ├── 01c9349e-89e6-4ceb-a727-4f27f9f2acce
                    │   └── keyspace
                    │       └── backuptest_data
                    │           └── table
                    │               └── big_table
                    │                   └── f34b6ff0f8f711eb9fcf000000000000
                    │                       ├── mc-2-big-CompressionInfo.db
                    │                       ├── mc-2-big-Data.db
                    │                       ├── mc-2-big-Digest.crc32
                    │                       ├── mc-2-big-Filter.db
                    │                       ├── mc-2-big-Index.db
                    │                       ├── mc-2-big-Scylla.db
                    │                       ├── mc-2-big-Statistics.db
                    │                       ├── mc-2-big-Summary.db
                    │                       ├── mc-2-big-TOC.txt
                    │                       ├── mc-3-big-CompressionInfo.db
                    │                       ├── mc-3-big-Data.db
                    │                       ├── mc-3-big-Digest.crc32
                    │                       ├── mc-3-big-Filter.db
                    │                       ├── mc-3-big-Index.db
                    │                       ├── mc-3-big-Scylla.db
                    │                       ├── mc-3-big-Statistics.db
                    │                       ├── mc-3-big-Summary.db
                    │                       ├── mc-3-big-TOC.txt
                    │                       ├── mc-4-big-CompressionInfo.db
                    │                       ├── mc-4-big-Data.db
                    │                       ├── mc-4-big-Digest.crc32
                    │                       ├── mc-4-big-Filter.db
                    │                       ├── mc-4-big-Index.db
                    │                       ├── mc-4-big-Scylla.db
                    │                       ├── mc-4-big-Statistics.db
                    │                       ├── mc-4-big-Summary.db
                    │                       ├── mc-4-big-TOC.txt
                    │                       ├── mc-5-big-CompressionInfo.db
                    │                       ├── mc-5-big-Data.db
                    │                       ├── mc-5-big-Digest.crc32
                    │                       ├── mc-5-big-Filter.db
                    │                       ├── mc-5-big-Index.db
                    │                       ├── mc-5-big-Scylla.db
                    │                       ├── mc-5-big-Statistics.db
                    │                       ├── mc-5-big-Summary.db
                    │                       └── mc-5-big-TOC.txt

Each node has it’s own directory, the path is structured as follows.

sst/cluster/<cluster ID>/dc/<data center name>/node/<node ID>

Under the node directory each table version has it’s directory, the path is structured as follows.

keyspace/<keyspace name>/table/<table name>/<table schema version>

The directory contains all the table files. Some files may be used in more than one backup.

Manifest File¶

Scylla Manager Manifest files are gzipped JSON files. Each node has it’s own manifest file. If a cluster has three nodes a backup would contain three manifest files with the same name but under different directories. Please find below the contents of the manifest file of the node shown in the sst section.

{
  "version": "v2",
  "cluster_name": "test_cluster",
  "ip": "192.168.100.13",
  "index": [
    {
      "keyspace": "backuptest_data",
      "table": "big_table",
      "version": "f34b6ff0f8f711eb9fcf000000000000",
      "files": [
        "mc-2-big-CompressionInfo.db",
        "mc-2-big-Data.db",
        "mc-2-big-Digest.crc32",
        "mc-2-big-Filter.db",
        "mc-2-big-Index.db",
        "mc-2-big-Scylla.db",
        "mc-2-big-Statistics.db",
        "mc-2-big-Summary.db",
        "mc-2-big-TOC.txt",
        "mc-3-big-CompressionInfo.db",
        "mc-3-big-Data.db",
        "mc-3-big-Digest.crc32",
        "mc-3-big-Filter.db",
        "mc-3-big-Index.db",
        "mc-3-big-Scylla.db",
        "mc-3-big-Statistics.db",
        "mc-3-big-Summary.db",
        "mc-3-big-TOC.txt"
      ],
      "size": 1256031
    }
  ],
  "size": 1256031,
  "tokens": [
    -9214072223864974000,
    -9209525598183111000,
    -9203154907091372000,
    -9121005554342506000,
    -9077102529676286000,
    -8972056514211153000,
    -8928968163169332000,
    -8928882009746142000,
    -8863551618551160000,
    -8857300148094569000,
    ...],
  "schema": "backup/schema/cluster/3e99d4a8-67d2-45fe-87fb-87b1b90ea2dc/task_f70117d8-c10e-4e90-9606-2587936b3757_tag_sm_20210809095541UTC_schema.tar.gz"
}

The manifest contains the following information.

  • version - the version of the manifest

  • cluster_name - name of the cluster as registered in Scylla Manager

  • ip - public IP address of the node

  • index - list of tables, each table holds a list of file names

  • size - total size of files in index

  • tokens - tokens owned by node, they allow to recreate the cluster topology

  • schema - path to schema file

PREVIOUS
Examples
NEXT
Restore
  • 3.0
    • master
    • 3.0
    • 2.6
    • 2.5
    • 2.4
    • 2.3
    • 2.2
  • Docker
  • Install Scylla Manager
  • Install Scylla Manager Agent
  • Scylla Manager Upgrade
  • Add a Cluster
  • Backup
    • Setup AWS S3
    • Setup S3 compatible storage
    • Setup Google Cloud Storage
    • Setup Azure Blob Storage
    • Examples
    • Specification
  • Restore
    • Download files command
  • Repair
    • Repair faster
    • Repair slower
    • Examples
  • Health Check
  • CLI sctool
    • Environment variables
    • Completion
    • Backup
    • Cluster
    • Info
    • Progress
    • Repair
    • Start
    • Status
    • Stop
    • Suspend & Resume
    • Tasks
    • Version
  • Configuration Files
    • Scylla Manager Config
    • Scylla Manager Agent Config
  • Swagger File
  • Scylla Monitoring
  • Troubleshooting
  • Older Versions
  • Slack
  • Create an issue
  • Edit this page

On this page

  • Specification
    • Directory Layout
      • meta
      • schema
      • sst
    • Manifest File
Logo
Docs Contact Us About Us
Mail List Icon Slack Icon Forum Icon
© 2023, ScyllaDB. All rights reserved.
Last updated on 15 February 2023.
Powered by Sphinx 4.3.2 & ScyllaDB Theme 1.3.4