liveBook · Manning

Checkpointing

As explained in ScyllaDB in Action

Checkpointing records completed progress so that a process can pause and resume from an earlier point without restarting.

Checkpointing records migration progress so a long-running process can pause and resume without starting over. It is especially useful when a migration must be throttled, paused to scale the destination, or adapted to source-database limits. section 12.2.4

A migration can use checkpointing to:

  • Record completed token ranges or other processed portions of the data set. section 12.2.4
  • Pause before scaling the destination or reducing pressure on the source database. section 12.2.4
  • Resume from the recorded position instead of repeating completed work. section 12.2.3
  • Store progress in a table in either the source or destination database; the mechanism need not be sophisticated. section 12.2.4

Migrating data in ranges

A custom migrator divides ScyllaDB data into token ranges and stores each completed range in a checkpoint table. If the source must be throttled after several ranges, the process pauses; when it resumes, it continues with the remaining ranges rather than restarting the migration. section 12.2.4

How ScyllaDB in Action covers it

How deep it goes
Explains the operational rationale and a simple storage approach, but stops short of defining a sophisticated checkpoint protocol.
Examples
Uses Spark Migrator progress tracking and custom migrator tables storing completed token ranges.
What it assumes
Assumes a bulk migration process and a partitionable data set, while leaving checkpoint implementation deliberately simple.
What you can do after
Operate a bulk migration that pauses and resumes from recorded progress.
How it connects
Connects migration checkpointing with token ranges, data migration, source throttling, destination scaling, and data validation.

Also explained in

Compare how 6 books explain checkpointing →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of ScyllaDB in Action. The section links point to the parts of the book it draws on.