Data recovery using bitmap data structure
AssigneeMicrosoft Technology Licensing, LLC
InventorsRoopesh Battepati, Michael C. Johnson, Manoj Kadam, Raymond Wang, Ganesh Prasad, Ziquan Zhu
Life of this patent
Estimating the term…
Loading patent…
AssigneeMicrosoft Technology Licensing, LLC
InventorsRoopesh Battepati, Michael C. Johnson, Manoj Kadam, Raymond Wang, Ganesh Prasad, Ziquan Zhu
Estimating the term…
Examples of the present disclosure describe implementing bitmap-based data replication when a primary form of data replication between a source device and a target device cannot be used. According to one example, a temporal identifier may be received from the target device. If the source device determines that the primary replication method is unable to be used to replicate data associated with the temporal identifier, a secondary replication method may be initiated. The secondary replication method may utilize a recovery bitmap identifying data blocks that have changed on the source device since a previous event.
A method comprising:
A data replication system comprising:
A method for data replication from a source device to a plurality of target devices, the method comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
At machine instruction level: checkpointing the instruction stream
Management of the data involved in backup or backup restore: by selection of backup contents
Using a plurality of controllers: asynchronous techniques
By mirroring: data synchronisation
About 7 years 11 months of term left · ends 12 Sep 2034 (estimated)
Systems may utilize log-based replication for replicating data between a source and target. Updates of a source device may be captured in a log, and the log may be sent to one or more target devices for replication. During operation, a log of a target may lose synchronization with a log of a source. It is with respect to this general technical environment that the present application is directed.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
Examples of the present disclosure describe implementing bitmap-based replication when synchronization is lost between a source device and a target device. According to one example, a temporal identifier may be received from the target device. If the source device determines that a primary replication method is unable to be used to replicate data associated with the temporal identifier, a secondary replication method may be initiated. The secondary replication method may utilize a recovery bitmap identifying data blocks that have changed on the source device since a previous event.
Non-limiting and non-exhaustive examples are described with reference to the following figures.
FIG. 1A illustrates an overview of a system that may be used to implement examples described herein.
FIG. 1B illustrates an overview of a system including a source and a target, which may be used to implement examples described herein.
Examples of the present disclosure describe implementing a secondary replication method that utilizes bitmap data structures when synchronization is lost between a source device and a target device.
Replication systems share log records identified by log sequence numbers LSNs with other replication systems as a part of a replication protocol with the goal of synchronizing source and target data stores. When applications issue updates to data stores, a replication system synchronously records the updates to the replication log and satisfies the application request. The updates to the data store itself may be applied from the replication log when it is convenient for device to process the updates.
Logging exists to ensure that if a crash occurs, a committed transaction will be correctly reflected in a data store after the crash. It ensures that an uncommitted transaction will be correctly rolled back and not reflected in the data store after the crash. The LSN of a log record is used for constructing the correct restore sequences during a recovery protocol enforced by the replication systems. Log Sequence numbers can be compared when constructing restore sequences in recovery protocols. Further, replication using logs permits a target device to maintain synchronization without requiring large amounts of data to be transmitted to the target device. Rather, upon initialization, the target device receives a full replication of the source device's data store, and thereafter the source device keeps a log of any transactions that affect the source device data store. The log of the transactions is periodically sent to the target device so that such transactions can be replayed at the target device data store to keep the two data stores in synchronization.