×

Alignment fixing on a storage system during continuous data replication to deduplicated storage

  • US 10,229,056 B1
  • Filed: 03/25/2014
  • Issued: 03/12/2019
  • Est. Priority Date: 03/25/2014
  • Status: Active Grant
First Claim
Patent Images

1. A method for aligning IOs prior to transmission to or after reception at a data protection appliance, comprising:

  • receiving an IO at the data protection appliance, the IO comprising an IO offset and having an IO size, wherein the IO comprises one of a plurality of streamed IOs used to synthesize snapshot backups in a deduplicated backup storage system that synthesizes an initial snapshot backup using a metadata journal and a data journal and copies pointers to data rather than entire data blocks;

    determining whether the IO is byte aligned with a storage block having a defined block size on the deduplicated backup storage system by having an IO offset that is a multiple of the block size and an IO size that is the multiple of the block size;

    aligning the IO at the data protection appliance to create an aligned IO when the IO is not aligned with the storage block when prior to the transmission by identifying a start offset lower than the IO offset, wherein the start offset is a multiple of the block size, changing the IO offset to the start offset, and aligning the IO by increasing the IO size to a multiple of the block size;

    or when after the reception by rounding the IO offset down to the start offset, padding a difference between the start offset and the IO offset and padding the IO to a new size that is the multiple of the block size;

    transmitting the aligned IO to a backup storage system, wherein creating the IO comprises writing of snapshot backup data from a computer to the data protection appliance during a continuous data replication operation having periodic snapshot backups;

    tracking any IO that is not aligned in a memory of the deduplicated backup storage system to determine if a non-aligned IO is writing to a location that is currently being read thereby creating a desynchronization;

    waiting for the computer to flush any open IOs to the deduplicated backup storage system to ensure that any data read from the deduplicated backup storage system is up-to-date to enable the continuous data replication operation;

    defining the metadata journal as a logical unit partitioned into segments of a defined size and that stores DO and UNDO metadata streams and pointers thereto for the backup data written to the data protection appliance wherein the DO metadata stream includes the offset for the aligned TO, and wherein the UNDO metadata includes an offset to corresponding old data for the backup data;

    storing the IO offset in the metadata journal on the backup storage system, wherein the offset is used to properly align the IO with blocks on the data protection appliance to synthesize the initial snapshot backup of the continuous data replication operation in a first synthesis operation that creates a first pointer to the snapshot backup data for the aligned IO and requests a block size from the backup storage system; and

    storing subsequent IO offsets to the metadata journals for aligning subsequent IOs for synthesizing subsequent snapshot backup operations that create additional pointers to respective snapshot backup data for the aligned subsequent IOs.

View all claims
  • 11 Assignments
Timeline View
Assignment View
    ×
    ×