US 12,135,686 B2
Change block tracking in cloud orchestration systems
Carl Braganza, Sunnyvale, CA (US); and Julio Lopez, Mountain View, CA (US)
Assigned to KASTEN, INC., Columbus, OH (US)
Filed by Kasten, Inc., Columbus, OH (US)
Filed on Oct. 28, 2021, as Appl. No. 17/513,580.
Prior Publication US 2023/0134314 A1, May 4, 2023
Int. Cl. G06F 16/11 (2019.01); G06F 3/06 (2006.01)
CPC G06F 16/128 (2019.01) [G06F 3/0604 (2013.01); G06F 3/064 (2013.01); G06F 3/065 (2013.01); G06F 3/0685 (2013.01)] 17 Claims
OG exemplary drawing
 
1. A computer-implemented method for storing a snapshot of block-level changes in a data volume for an application that is stored by at least one physical storage device within a cluster and restoring the snapshot to the data volume using a file system-level backup tool that is able to interpret file system-level changes but is unable to interpret the block-level changes, the computer-implemented method comprising:
receiving the block-level changes from the data volume stored in the application in the cluster;
creating a file system for the snapshot, wherein the file system comprises a root directory having a plurality of subdirectories;
storing each of the block-level changes in the data volume in a corresponding one of the subdirectories, wherein storing each of the block-level changes in the data volume in a corresponding one of the subdirectories comprises assigning each of the respective subdirectories a respective label for a respective block-level change stored in the respective subdirectory, wherein the respective label corresponds to a respective location in the data volume where the respective block-level change originated;
creating a manifest for identifying the snapshot in the file system-level backup tool, wherein the manifest is associated with the root directory;
instructing the file system-level backup tool to store the snapshot by:
storing the file system in content-addressable object storage; and
storing the manifest in a manifest storage;
receiving the snapshot from the file system-level backup tool by receiving the file system therefrom;
mapping the block-level changes from the respective subdirectories of the file system into a block map of the data volume; and
restoring the snapshot to the data volume based on the block map.