Systems, methods and computer readable media for business continuity and disaster recovery (BCDR)

US10860442B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10860442-B2
Application numberUS-201815996103-A
CountryUS
Kind codeB2
Filing dateJun 1, 2018
Priority dateJun 1, 2018
Publication dateDec 8, 2020
Grant dateDec 8, 2020

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.

Disclosed systems, methods, and computer readable media relate to business continuity and disaster recovery (BCDR). According to some embodiments, disclosed systems, methods, and computer readable media can replicate a set of data blocks from a source computer to a target computer while the source computer is in operation and contents of the set of data blocks are changing. In some embodiments, disclosed systems, methods, and computer readable media can replicate a set of data blocks from a recovery computer to a target computer while the recovery computer is in operation and contents of the set of data blocks are changing, wherein the recovery computer is built from a protected computer.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of replicating a set of data blocks from a source computer to a target computer while the source computer is in operation and contents of the set of data blocks are changing, the method comprising: capturing a first crash-consistent snapshot of the source computer that performs computer functions, the first crash-consistent snapshot including contents of the set of data blocks at the source computer at a first point in time, wherein the contents at the first point in time comprise data that implements an operating system running on the source computer at the first point in time and files that are stored on the source computer at the first point in time; issuing an instruction to build the target computer based on the first crash-consistent snapshot such that the target computer is prepared to take over the computer functions of the source computer and replicate an operating state of the source computer at the first point in time; capturing a second crash-consistent snapshot of the source computer, the second crash-consistent snapshot including contents of the set of data blocks at the source computer at a second point in time, wherein the contents at the second point in time comprise data that implements an operating system running on the source computer at the second point in time and files that are stored on the source computer at the second point in time; incrementally updating the target computer by: computing a first data difference between the first crash-consistent snapshot and the second crash-consistent snapshot, and when the first data difference is not null, issuing one or more first additional instructions, based on the first data difference, to the target computer to prepare the target computer to replicate the operating state of the source computer at the second point in time and to take over the computer functions of the source computer; and upon issuing an instruction, to the target computer, to perform the computer functions of the source computer, capturing a finalization snapshot of the source computer, the finalization snapshot including contents of the set of data blocks at the source computer at a last point in time, wherein the contents at the last point in time comprise data that implements an operating system running on the source computer at the last point in time and files that are stored on the source computer at the last point in time, computing a last data difference between a most recent crash-consistent snapshot and the finalization snapshot, and issuing one or more final additional instructions, based on the last data difference, to the target computer to prepare the target computer to replicate the operating state of the source computer at the last point in time and to take over the computer functions of the source computer, wherein the source computer is a recovery computer, and before capturing the first crash-consistent snapshot of the source computer, capturing a snapshot of a protected computer and provisioning the source computer based on the snapshot of the protected computer. 2. The method of claim 1 , wherein the snapshot of the protected computer is a finalization snapshot. 3. The method of claim 1 , wherein the protected computer is a physical machine and the source computer is a virtual machine (VM). 4. The method of claim 1 , wherein provisioning the source computer is based on at least one of a suspected malfunction, decommission, upgrade, and maintenance process of the protected computer. 5. The method of claim 1 , wherein the first crash-consistent snapshot is the most recent crash-consistent snapshot of the source computer when the instruction to build the target computer is issued based on the first crash-consistent snapshot. 6. The method of claim 1 , wherein the second crash-consistent snapshot is the most recent crash-consistent snapshot of the source computer when the first data difference between the first crash-consistent snapshot and the second crash-consistent snapshot is computed. 7. The method of claim 1 , wherein the second crash-consistent snapshot is the most recent crash-consistent snapshot of the source computer. 8. The method of claim 1 , wherein the instruction to the target computer to perform the computer functions of the source computer is issued based on at least one of a user-initiated event and a computer-initiated event. 9. The method of claim 1 , wherein when the target computer performs the computer functions of the source computer, the target computer overtakes a time-incremental schedule that is used by the source computer to capture one or more crash-consistent snapshots. 10. The method of claim 1 , upon receiving the instruction to perform the computer functions of the source computer, the target computer performs: synchronizing the file system of the target computer with the file system of the source computer; rebooting; and testing the target computer to verify at least one of functionality and data integrity. 11. The method of claim 1 , the method further comprising determining whether the source computer is operating within desired parameters, wherein the instruction to build the target computer based on the first crash-consistent snapshot is issued when the source computer is determined to not be operating within the desired parameters. 12. A method of replicating a set of data blocks from a recovery computer to a target computer while the recovery computer is in operation and contents of the set of data blocks are changing, wherein the recovery computer is built from a protected computer, the method comprising: capturing a snapshot of the protected computer; provisioning the recovery computer based on the snapshot of the protected computer; capturing a first snapshot of the recovery computer that performs computer functions, the first snapshot including contents of the set of data blocks at the recovery computer at a first point in time, wherein the contents at the first point in time comprise data that implements an operating system running on the recovery computer at the first point in time and files that are stored on the recovery computer at the first point in time; issuing an instruction to build the target computer based on the first snapshot such that the target computer is prepared to take over the computer functions of the recovery computer and replicate an operating state of the recovery computer at the first point in time; capturing a second snapshot of the recovery computer, the second snapshot including contents of the set of data blocks at the recovery computer at a second point in time, wherein the contents at the second point in time comprise data that implements an operating system running on the recovery computer at the second point in time and files that are stored on the recovery computer at the second point in time; wherein a plurality of snapshots of the recovery computer, including the first snapshot and the second snapshot, are captured based on a time-incremental schedule of the recovery computer that is based on a time-incremental schedule of the protected computer; incrementally updating the target computer by: computing a data difference between the first snapshot and the second snapshot; and when the data difference is not null, issuing one or more additional instructions, based on the data difference, to the target computer to prepare the target computer to replicate the operating state of the recovery computer at the second point in time and to take over the computer functions of the recovery computer; and issuing an instruction, to the target computer, to perform the computer functions of the recovery computer,

Assignees

Inventors

Classifications

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 US10860442B2 cover?
Disclosed systems, methods, and computer readable media relate to business continuity and disaster recovery (BCDR). According to some embodiments, disclosed systems, methods, and computer readable media can replicate a set of data blocks from a source computer to a target computer while the source computer is in operation and contents of the set of data blocks are changing. In some embodiments,…
Who is the assignee on this patent?
Datto Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/1451. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 08 2020 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 9 related publications on this page (citations in our corpus or others sharing the same primary CPC).