Synchronous remote replication of snapshots

US12008018B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12008018-B2
Application numberUS-202117237127-A
CountryUS
Kind codeB2
Filing dateApr 22, 2021
Priority dateApr 22, 2021
Publication dateJun 11, 2024
Grant dateJun 11, 2024

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Snapshots from a first LSU (R1) on a first storage system (A1) may be replicated to a second replica LSU (R2) on a second storage system (A2), for example, concurrently to remotely replicating (e.g., synchronously) write operations for R1 to R2. A process, P, on A1 executing the replication of the snapshots from R1 to R2 may be a separate process than the one or more processes on A1 executing remote replication of write operations for R1 to R2. During a consistency window on A1, outstanding write operations for R1 at the time the consistency window opened may be logged, and a pair of snapshots, SS1 1 and SS1 2 may be activated on R1 and R2, respectively. After the consistency window has closed, the SS1 2 snapshot metadata and snapshot data may be updated based on the outstanding write operations.

First claim

Opening claim text (preview).

What is claimed is: 1. For a system including a host system, a first storage system, a second storage system, a first logical storage unit for which data is replicated from the first storage system to a second logical storage unit of the second storage system, a method of remotely replicating a first snapshot of the first logical storage unit from the first storage system to the second storage system, the method comprising: while performing synchronous replication synchronously replicating write requests, that are directed to the first logical storage unit of the first storage system, to the second logical storage unit of the second data storage system, concurrently performing first processing that remotely replicates snapshots of the first logical storage unit to the second logical storage unit, said first processing including: at a first point in time while performing said synchronous replication, the first storage system suspending initiating of processing of new write requests for the first logical storage unit that are received at the first storage system from the host system after the first point in time; after said suspending, recording at least a first outstanding write request for the first logical storage unit on the first storage system, wherein each outstanding write request of the at least first outstanding write request is received from the host system at the first storage system and is outstanding at the first point in time when initiating processing of new write requests for the first logical storage unit is suspended by said suspending, and wherein said each outstanding write request is outstanding in that servicing of the said each outstanding write request has been initiated and the first storage system has not yet returned an acknowledgement to the host system regarding completion of said each outstanding write request; after said recording, taking the first snapshot on the first storage system; after said taking the first snapshot on the first storage system, the first storage system sending an instruction to the second storage system to initiate taking a second snapshot of the second logical storage unit; responsive to the second storage system receiving, from the first storage system, the instruction to initiate the second storage system taking the second snapshot, the second storage system taking the second snapshot of the second logical storage unit; responsive to taking the second snapshot, sending an acknowledgment from the second storage system to the first storage system regarding the taking of the second snapshot of the second logical storage unit; and after the recording, the taking the first snapshot and the taking the second snapshot, performing processing including: resuming the initiating of processing of new write requests for the first logical storage unit on the first storage system; and applying the at least first outstanding write request to the second snapshot so that after performing said applying, the second snapshot is a remote replica of the first snapshot. 2. The method of claim 1 , wherein the applying is performed as part of a process executing independently of, and concurrently with, one or more processes that are remotely replicating write operations of the first logical storage unit to the second logical storage unit. 3. The method of claim 1 , wherein said applying the at least first outstanding write request includes, for each outstanding write request of the at least first outstanding write request: determining whether the outstanding write request requires modification of snapshot data of the second snapshot; and if it is determined that the outstanding write request requires modification of the second snapshot, modifying the snapshot data and snapshot metadata of the second snapshot on the second storage system based on the outstanding write request. 4. The method of claim 3 , wherein the first outstanding write request specifies a write operation for a first logical storage element corresponding to a second logical storage element of the second logical storage unit, and wherein said determining whether the first outstanding write request requires modification of snapshot data of the second snapshot includes: determining whether first snapshot metadata of the first snapshot references a first current value of the first logical storage element on the first storage system; determining whether second snapshot metadata of the second snapshot references a second current value of the second logical storage element on the second storage system; and determining whether to modify the snapshot data and snapshot metadata of the second snapshot based at least in part on whether the first snapshot metadata references the first current value and whether the second snapshot metadata references the second current value. 5. The method of claim 4 , wherein said determining whether the first outstanding write request requires modification of snapshot data of the second snapshot includes: determining that the first snapshot metadata references the first current value of the first logical storage element; determining that the second snapshot metadata does not reference the second current value of the second logical storage element; and modifying the snapshot metadata of the second snapshot to reference the second current value of the second logical storage element. 6. The method of claim 4 , wherein said determining whether the first outstanding write request requires modification of snapshot data of the second snapshot includes: determining whether a first value of the second logical storage element specified by the second snapshot metadata is a same value as a second value of the second logical storage element specified by the write operation; and determining whether to modify the snapshot data and snapshot metadata of the second snapshot based at least in part on whether the first value is the same value as the second value. 7. The method of claim 4 , wherein said determining whether the first outstanding write request requires modification of snapshot data of the second snapshot includes: determining that the first snapshot metadata does not reference the first current value of the first logical storage element; determining that the second snapshot metadata does not reference the second current value of the second logical storage element; storing the second value of the second logical storage element at a location on the second storage system; and modifying the snapshot metadata of the second snapshot to reference the location. 8. A system comprising: a first storage system; a second storage system; a third storage system; a logical storage unit synchronously replicated between the first storage system and the second system, wherein the logical storage unit is asynchronously replicated from the first storage system to the third storage system and asynchronously replicated from the second storage system to the third storage system; and executable logic that implements a method including: while performing synchronous replication synchronously replicating write requests, that are directed to the first logical storage unit of the first storage system, to the second logical storage unit of the second data storage system, concurrently performing first processing that remotely replicates snapshots of the first logical storage unit to the second logical storage unit, said first processing including: at a first point in time while performing said synchronous replication, the first storage system suspending initiating of processing of new write requests for the first logical storage unit that are received at the first storage system from the host system after the first point in time; after said

Assignees

Inventors

Classifications

  • Point-in-time backing up or restoration of persistent data · CPC title

  • Using snapshots, i.e. a logical point-in-time copy of the data · CPC title

  • Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title

  • Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion (error detection or correction of the data by redundancy in operations or in hardware G06F11/14, G06F11/16) · CPC title

  • G06F16/275Primary

    Synchronous replication · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12008018B2 cover?
Snapshots from a first LSU (R1) on a first storage system (A1) may be replicated to a second replica LSU (R2) on a second storage system (A2), for example, concurrently to remotely replicating (e.g., synchronously) write operations for R1 to R2. A process, P, on A1 executing the replication of the snapshots from R1 to R2 may be a separate process than the one or more processes on A1 executing r…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F16/275. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 11 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).