CA2851200C

Synchronizing updates across cluster filesystems

Abstract

Embodiments of the invention relate to synchronization of data in a shared pool of configurable computer resources. An image of the filesystem changes, including data and metadata, is captured in the form of a consistency point. Sequential consistency points are created, with changes to data and metadata in the filesystem between sequential consistency captured and placed in a queue for communication to a target filesystem at a target site. The changes are communicated as a filesystem operation, with the communication limited to the changes captured and reflected in the consistency point.

CA2851200C, drawing sheet 1
Sheet 1 of 9

Term

6.1 yearsleft in the term

Expires 17 October 2032.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Expires

47 claims: 9 independent, 38 dependent

  1. 1
    CLAIMS 1. A method to support synchronization of data from a source site to a target site, the method comprising:periodically creating a consistency point in a source filesystem of the source site, each consistency point representing filesystem data and metadata at a point-in-time to establish a recovery point, the periodic creation of the consistency point including creating a first consistency point at a first point-in-time and a second consistency point at a second point-intime;comparing the first consistency point with the second consistency point, including identifying differences between the first and second consistency points;for each source filesystem object identified as having a difference: mapping, with a hard link in the source filesystem, the source filesystem object to the corresponding target filesystem object, and applying the corresponding difference to the hard link of the source object as filesystem operations, wherein applying the identified differences includes replaying said filesystem operations in the corresponding target filesystem object.
  2. 10
    A system comprising:a shared pool of configurable computer resources;a functional unit in communication with the shared pool, the functional unit comprising: a data manager to process data at a source site in the shared pool, including periodic creation of a consistency point in a source filesystem of the source site, each consistency point to represent source filesystem data and metadata at a point-in-time to establish a recovery point, the data manager creation of the consistency point including the data manager to create a first consistency point at a first point-in-time and a second consistency point at a second point-intime;a delta manager in communication with the data manager, the delta manager to compare the first consistency point with the second consistency point, including identification of any differences between the first and second consistency points;and a data mover in communication with the delta manager, wherein for each source filesystem object identified as having a difference, the data mover to: map, with a hard link in the source filesystem, the source filesystem object to the corresponding target filesystem object, and ARC920110026CA1 CA 2851200 2018-12-20 apply the corresponding difference to the hard link of the source object as filesystem operations, wherein applying the identified differences includes replaying said filesystem operations in the corresponding target filesystem object.
  3. 17
    A computer program product comprising a computer readable storage medium storing code which, when executed by a processor, causes the processor to perform the method of any one of claims 1 to 9.
  4. 18
    A method comprising :periodically creating a consistency point in a source filesystem, each consistency point representing filesystem data and metadata at a point-in-time to establish a recovery point, the periodic creation of the consistency point including creating a first consistency point at a first point-in-time and a second consistency point at a second point-in-time, wherein the first consistency point and the second consistency point are any two consistency points;ARC920110026CA1 CA 2851200 2018-12-20 comparing the first consistency point with the second consistency point, including identifying a difference between the first and second consistency points, wherein the comparison detects presence of a new inode and a changed directory at the filesystem;responsive to the detection of the new inode, creating a temporary new target inode at a target file system;mapping at least one target inode, including the temporary inode, to one or more corresponding source inodes;responsive to the detection of the changed directory, identifying a file level change, wherein a changed file is associated with an established directory at the target filesystem;establishing a link from the source filesystem to the target filesystem;and applying the identified difference between the first and second consistency points, including applying the identified difference using the temporary new inode, including replaying the identified difference as one or more filesystem operations, wherein the difference is differential, and including updating the established directory with data associated with the changed file.
  5. 29
    A method comprising:creating a first consistency point in a source filesystem at a first point-in-time and creating a second consistency point in the source filesystem at a second point-in-time, the first consistency point representing filesystem data and metadata at a first point-in-time to establish a first recovery point and the second consistency point representing filesystem data and metadata at a second point-in-time to establish a second consistency point, wherein the first consistency point and the second consistency point are any two consistency points;following a communication failure associated with the source filesystem, comparing the first consistency point with the second consistency point, including identifying a change between the first and second consistency points, wherein the comparison detects presence of a new inode and a changed directory at the filesystem;ARC920110026CA1 CA 2851200 2018-12-20 responsive to the detection of the new inode, creating a temporary new target inode at a target filesystem;mapping at least one target inode, including the temporary inode, to one or more corresponding source inodes;responsive to the detection of the changed directory, identifying a file level change, wherein a changed file is associated with an established directoiy at the target filesystem;establishing a link from the source filesystem to the target filesystem;and applying the identified change between the first and second consistency points, including applying the identified difference using the temporary new inode, including replaying the identified change as a filesystem operation, wherein the change is differential, and including updating the established directory with data associated with the changed file.
  6. 31
    A computer program product comprising a computer readable storage medium storing code which, when executed by a processor, causes the processor to perform the method of any one of claims 18 to 30.
  7. 32
    A method comprising:creating one or more consistency points in a source filesystem, including creating a first consistency point at a first point-in-time and a second consistency point at a second point-intime, wherein each consistency point represents filesystem data and metadata at a point-in-time to establish a recovery point, and wherein the first consistency point and the second consistency point are any two consistency points;detecting a directory change at the source filesystem, including comparing the first consistency point with the second consistency point and identifying at least one difference between the first and second consistency points based on the comparison;and ARC920110026CA1 CA 2851200 2018-12-20 communicating the detected directory change to a target filesystem including: identifying a file level change associated with a target filesystem directory based on the detected directory change and a mapping between the source and target filesystems;and updating the target filesystem directory based on the file level change.
  8. 40
    A system comprising:a source server having a processing unit in communicarion with memory, wherein the source server is associated with a source filesystem;ARC920110026CA1 CA 2851200 2018-12-20 a functional unit in communication with the source server, the functional unit to: create one or more consistency points in a source filesystem, including create a first consistency point at a first point-in-time and a second consistency point at a second point-in-time, wherein each consistency point represents filesystem data and metadata at a point-in-time to establish a recovery point, and wherein the first consistency point and the second consistency point are any two consistency points;detect a directory change at the source filesystem, including compare the first consistency point with the second consistency point, and the functional unit to identify at least one difference between the first and second consistency points based on the comparison;communicate the detected directory change to a target filesystem including: identify a file level change associated with a target filesystem directory based on the detected directory change and a mapping between the source and target filesystems;and update the target file system directory based on the file level change.
  9. 47
    A computer program product comprising a computer readable storage medium storing code which, when executed by a processor, causes the processor to perform the method of any one of claims 32 to 39.