Enabling data integrity checking and faster application recovery in synchronous replicated datasets

US2017242599A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2017242599-A1
Application numberUS-201615049410-A
CountryUS
Kind codeA1
Filing dateFeb 22, 2016
Priority dateFeb 22, 2016
Publication dateAug 24, 2017
Grant date

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.

One or more techniques and/or computing devices are provided for utilizing snapshots for data integrity validation and/or faster application recovery. For example, a first storage controller, hosting first storage, has a synchronous replication relationship with a second storage controller hosting second storage. A snapshot replication policy rule is defined to specify that a replication label is to be used for snapshot create requests, targeting the first storage, that are to be replicated to the second storage. A snapshot creation policy is created to issue snapshot create requests comprising the replication label. Thus a snapshot of the first storage and a replication snapshot of the second storage are created based upon a snapshot create request comprising the replication label. The snapshot and the replication snapshot may be compared for data integrity validation (e.g., determine whether the snapshots comprise the same data) and/or quickly recovering an application after a disaster.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method comprising: defining, by a storage server, a snapshot replication policy rule for a synchronous replication relationship between a first storage controller, hosting first storage, and a second storage controller hosting second storage, the snapshot replication policy rule specifying that a replication label will be used for snapshot create requests, targeting the first storage, that are to be replicated to the second storage; creating a snapshot creation policy to issue snapshot create requests comprising the replication label; responsive to receiving a snapshot create request comprising the replication label: creating a snapshot of the first storage at the first storage controller; and creating a replication snapshot of the second storage at the second storage controller; and comparing the snapshot and the replication snapshot for data integrity validation. 2 . The method of claim 1 , comprising: responsive to receiving a second snapshot create request not comprising the replication label, creating a second snapshot of the first storage at the first storage controller without creating a corresponding replication snapshot of the second storage at the second storage controller. 3 . The method of claim 1 , comprising: receiving an operation, targeting a storage object within the first storage, from a client; responsive to determining that the synchronous replication relationship applies to the storage object, splitting the operation into a replication operation; locally implementing the operation upon the storage object; sending the replication operation to the second storage controller for remote implementation upon a replicated storage object within the second storage, the replicated storage object corresponding to a backup replication of the storage object; and responsive to the operation and the replication operation completing, acknowledging back to the client. 4 . The method of claim 3 , wherein the locally implementing comprises: draining inflight operations targeting the storage object before locally implementing the operation. 5 . The method of claim 3 , wherein the locally implementing comprises: receiving a new operation, targeting the storage object, while locally implementing the operation; queueing the new operation into a queue as a queued operation; and responsive to locally implementing the operation, dequeuing and implementing the queued operation. 6 . The method of claim 1 , wherein the comparing comprises: responsive to the snapshot and the replication snapshot comprising different data, determining that synchronous replication, between the first storage controller and the second storage controller based upon the synchronous replication relationship, is not being performed correctly. 7 . The method of claim 1 , wherein the comparing comprises: verifying a dependent write order consistency of replicating operations to the second storage. 8 . The method of claim 1 , wherein the snapshot is an application consistent snapshot associated with an application that utilizes the first storage and the replication snapshot is a replication application consistent snapshot, and the method comprising: identifying a failure of the first storage controller; performing a switchover operation from the first storage controller to the second storage controller for providing clients with failover access to replicated data within the second storage; and utilizing the replication application consistent snapshot to recover the application to utilize the second storage in place of the first storage. 9 . The method of claim 1 , wherein the snapshot is an application consistent snapshot associated with an application that utilizes the first storage and the replication snapshot is a replication application consistent snapshot, and the method comprising: receiving a failover command to failover from the first storage controller to the second storage controller; performing a failover operation from the first storage controller to the second storage controller for providing clients with failover access to replicated data within the second storage based upon the failover command; and utilizing the replication application consistent snapshot to recover the application to utilize the second storage in place of the first storage. 10 . The method of claim 9 , comprising: triggering the failover operation within a threshold amount of time from the creation of the snapshot and the replication snapshot. 11 . The method of claim 8 , comprising: generating the application consistent snapshot, at an application consistent point in time for the application, based upon a snapshot request received from an application aware plugin associated with the application. 12 . The method of claim 11 , wherein the sending the snapshot create request comprises: receiving, from a storage system replication module integrated with the application, a storage operation system API command, comprising the replication label, as the snapshot request. 13 . A non-transitory machine readable medium having stored thereon instructions for performing a method comprising machine executable code which when executed by at least one machine, causes the machine to: define a snapshot replication policy rule for a synchronous replication relationship between a first storage controller, hosting first storage, and a second storage controller hosting second storage, the snapshot replication policy rule specifying that a replication label will be used for snapshot create requests, targeting the first storage, that are to be replicated to the second storage; responsive to receiving a snapshot create request comprising the replication label: create a snapshot of the first storage at the first storage controller as an application consistent snapshot associated with an application; and create a replication snapshot of the second storage at the second storage controller as a replication application consistent snapshot; perform a failover operation from the first storage controller to the second storage controller for providing clients with failover access to replicated data within the second storage; and utilize the replication application consistent snapshot to recover the application to utilize the second storage in place of the first storage. 14 . The non-transitory machine readable medium of claim 13 , wherein the machine executable code causes the machine to: perform the failover operation based upon identifying a failure of the first storage controller. 15 . The non-transitory machine readable medium of claim 13 , wherein the machine executable code causes the machine to: receive a failover command to failover from the first storage controller to the second storage controller; and trigger the failover operation within a threshold amount of time from the creation of the snapshot and the replication snapshot. 16 . The non-transitory machine readable medium of claim 13 , wherein the machine executable code causes the machine to: creating the replication application consistent snapshot and the replication application consistent snapshot, at an application consistent point in time for the application, based upon the snapshot create request being received from an application aware plugin associated with the application. 17 . The non-transitory machine readable medium of claim 13 , wherein the machine executable code causes the machine to: compare the snapshot and the replication snapshot for data integrity validation

Assignees

Inventors

Classifications

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

  • the resynchronized component or unit being a persistent storage device (re-synchronization of failed mirror storage G06F11/2082; rebuild or reconstruction of parity RAID storage G06F11/1008) · CPC title

  • Data synchronisation · CPC title

  • Solving problems relating to consistency · CPC title

  • Synchronous techniques · 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 US2017242599A1 cover?
One or more techniques and/or computing devices are provided for utilizing snapshots for data integrity validation and/or faster application recovery. For example, a first storage controller, hosting first storage, has a synchronous replication relationship with a second storage controller hosting second storage. A snapshot replication policy rule is defined to specify that a replication label …
Who is the assignee on this patent?
Netapp Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/2076. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Aug 24 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).