Scylla Manager, Repair and Tombstones
Tags: Database Administration, Scylladb, Site Reliability, NoSQL

by Guy Shtub

Today we are sharing a lesson from Scylla University. At the bottom we provide a link to the hands-on lab. Scylla University is a fully free service provided by ScyllaDB to foster the NoSQL database community; all readers are welcome to register to take this and other available courses.

This lesson deals with what repair is and why it is needed for tombstones, why it is important, and Scylla Manager.

Scylla Manager is a centralized cluster administration and recurrent tasks automation tool. Scylla Manager can schedule tasks such as repairs and backups.

Scylla Repair is a process that runs in the background and synchronizes the data between nodes so that eventually, all the replicas hold the same data. Data stored on nodes can become inconsistent with other replicas over time, which is why repairs are a necessary part of database maintenance. Using Scylla repair makes data on the node consistent with the other nodes in the cluster. The best use of Scylla repair is to have the Scylla Manager schedule and run the repairs for you.

You can also learn more about Scylla Manager here.

Repairs

In this lesson you’ll learn about repair and why is it needed. A common misconception is that repairs are a way to fix “things” that are wrong with the database.

So what are repairs? Scylla Repair is a process that runs in the background and synchronizes the data between nodes so that eventually, all the replicas hold the same data. Data stored on nodes can become inconsistent with other replicas over time, which is why repairs are a necessary part of database maintenance. Using Scylla repair makes data on the node consistent with the other nodes in the cluster.

What are tombstones and why are they important?

Data written to Scylla gets persisted to SSTables. Since SSTables are immutable, the data can’t actually be removed when a delete is performed, instead, a marker (also called a “tombstone”) is written to indicate the value’s new status. When compaction occurs, the data will be expunged completely and the corresponding disk space recovered.

Manager Overview

An overview of Scylla Manager, what is it, and how it can be used to improve cluster management. Scylla Manager is a centralized cluster administration and recurrent tasks automation tool. It can be used to schedule tasks such as repairs and backups.

Notice that since Manager 2.0 has been released, Scylla Manager does not use SSH to directly communicate with the node, rather it uses the Manager Agent. Learn more about it here.

Scylla Manager Deep Dive

In this lesson you’ll learn about Scylla cluster management and administration. It covers the Scylla Manager: an overview, configuration, deployment, health check, adding a cluster, and more.

Scylla Manager 2.0: What’s New, Agent and Rclone

An Overview of changes in Scylla Manager 2.0, it’s new features and capabilities, and how to use it. Scylla Manager is a tool used to manage a Scylla cluster. Some of its capabilities include repair, backup, and maintenance.

Backup and Restore

A deep dive into backup, how it’s performed, its benefits, and a CLI example of running it.

Take the Hands-on Lab!

After reviewing all of the videos above, Scylla University then has an online Monitoring and Manager Lab. Make sure you take it to get some hands-on experience, and also so that Scylla University can track your learning progress.

TAKE THE LAB IN SCYLLA UNIVERSITY