11003557

Dynamic Data Restoration from Multiple Recovery Sites Implementing Synchronous Remote Mirroring

PublishedMay 11, 2021
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
20 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A computer-implemented method, comprising: detecting an outage at a production site; transferring input/output (I/O) functionality to a first recovery site; in response to determining that the outage at the production site has been resolved, receiving a first out-of-sync bitmap from the first recovery site; receiving a second out-of-sync bitmap from a second recovery site, wherein the second recovery site serves as a synchronous mirrored copy to the first recovery site; merging the first and second out-of-sync bitmaps into a merged out-of-sync bitmap; receiving performance data which corresponds to achievable throughput from each of the first and second recovery sites to the production site; using the performance data to divide the merged out-of-sync bitmap into two portions, wherein a size of a first of the two portions correlates to the achievable throughput from the first recovery site to the production site, wherein a size of a second of the two portions correlates to the achievable throughput from the second recovery site to the production site; sending a request to the first recovery site for data which corresponds to the first portion of the merged out-of-sync bitmap; sending a request to the second recovery site for data which corresponds to the second portion of the merged out-of-sync bitmap; and receiving the data which corresponds to the first and second portions of the merged out-of-sync bitmap respectively, in parallel.

2

2. The computer-implemented method of claim 1 , wherein the data which corresponds to the first and second portions of the merged out-of-sync bitmap respectively, is fully received in substantially a same amount of time.

3

3. The computer-implemented method of claim 1 , comprising: detecting that a difference between actual performance and the performance data used to divide the merged out-of-sync bitmap into the two portions has exceeded a predefined threshold; sending a request to the first recovery site for an updated version of the first out-of-sync bitmap; sending a request to the second recovery site for an updated version of the second out-of-sync bitmap; merging the updated first and second out-of-sync bitmaps into an updated merged out-of-sync bitmap; using the actual performance to divide the updated merged out-of-sync bitmap into two updated portions, wherein a size of a first of the two updated portions correlates to actual throughput experienced from the first recovery site to the production site, wherein a size of a second of the two updated portions correlates to actual throughput experienced from the second recovery site to the production site; sending a request to the first recovery site for data which corresponds to the first updated portion of the updated merged out-of-sync bitmap; sending a request to the second recovery site for data which corresponds to the second updated portion of the updated merged out-of-sync bitmap; and receiving the data which corresponds to the first and second updated portions of the updated merged out-of-sync bitmap respectively, in parallel.

4

4. The computer-implemented method of claim 3 , wherein the data which corresponds to the first and second updated portions of the updated merged out-of-sync bitmap respectively, are fully received in substantially a same amount of time.

5

5. The computer-implemented method of claim 3 , wherein a total amount of time spent receiving the data which corresponds to the first and second updated portions of the updated merged out-of-sync bitmap is reduced by using the actual performance to divide the updated merged out-of-sync bitmap into the two updated portions.

6

6. The computer-implemented method of claim 1 , wherein the performance data is selected from the group consisting of: data granularity, response time, distance between sites, a number of data paths between sites, and data throughput.

7

7. The computer-implemented method of claim 1 , comprising: sending a data loss bitmap to each of the first and second recovery sites, wherein the out-of-sync bitmaps received from the first and second recovery sites are formed using the data loss bitmap.

8

8. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions readable and/or executable by a processor to cause the processor to: detect, by the processor, an outage at a production site; transfer, by the processor, input/output (I/O) functionality to a first recovery site; in response to determining that the outage at the production site has been resolved, receive, by the processor, a first out-of-sync bitmap from the first recovery site; receive, by the processor, a second out-of-sync bitmap from a second recovery site, wherein the second recovery site serves as a synchronous mirrored copy to the first recovery site; merge, by the processor, the first and second out-of-sync bitmaps into a merged out-of-sync bitmap; receive, by the processor, performance data which corresponds to achievable throughput from each of the first and second recovery sites to the production site; use, by the processor, the performance data to divide the merged out-of-sync bitmap into two portions, wherein a size of a first of the two portions correlates to the achievable throughput from the first recovery site to the production site, wherein a size of a second of the two portions correlates to the achievable throughput from the second recovery site to the production site; send, by the processor, a request to the first recovery site for data which corresponds to the first portion of the merged out-of-sync bitmap; send, by the processor, a request to the second recovery site for data which corresponds to the second portion of the merged out-of-sync bitmap; and receive, by the processor, the data which corresponds to the first and second portions of the merged out-of-sync bitmap respectively, in parallel.

9

9. The computer program product of claim 8 , wherein the data which corresponds to the first and second portions of the merged out-of-sync bitmap respectively, is fully received in substantially a same amount of time.

10

10. The computer program product of claim 8 , the program instructions readable and/or executable by the processor to cause the processor to: detect, by the processor, that a difference between actual performance and the performance data used to divide the merged out-of-sync bitmap into the two portions has exceeded a predefined threshold; send, by the processor, a request to the first recovery site for an updated version of the first out-of-sync bitmap; send, by the processor, a request to the second recovery site for an updated version of the second out-of-sync bitmap; merge, by the processor, the updated first and second out-of-sync bitmaps into an updated merged out-of-sync bitmap; use, by the processor, the actual performance to divide the updated merged out-of-sync bitmap into two updated portions, wherein a size of a first of the two updated portions correlates to actual throughput experienced from the first recovery site to the production site, wherein a size of a second of the two updated portions correlates to actual throughput experienced from the second recovery site to the production site; send, by the processor, a request to the first recovery site for data which corresponds to the first updated portion of the updated merged out-of-sync bitmap; send, by the processor, a request to the second recovery site for data which corresponds to the second updated portion of the updated merged out-of-sync bitmap; and receive, by the processor, the data which corresponds to the first and second updated portions of the updated merged out-of-sync bitmap respectively, in parallel.

11

11. The computer program product of claim 10 , wherein the data which corresponds to the first and second updated portions of the updated merged out-of-sync bitmap respectively, are fully received in substantially a same amount of time.

12

12. The computer program product of claim 10 , wherein a total amount of time spent receiving the data which corresponds to the first and second updated portions of the updated merged out-of-sync bitmap is reduced by using the actual performance to divide the updated merged out-of-sync bitmap into the two updated portions.

13

13. The computer program product of claim 8 , wherein the performance data is selected from the group consisting of: data granularity, response time, distance between sites, a number of data paths between sites, and data throughput.

14

14. The computer program product of claim 8 , the program instructions readable and/or executable by the processor to cause the processor to: send, by the processor, a data loss bitmap to each of the first and second recovery sites, wherein the out-of-sync bitmaps received from the first and second recovery sites are formed using the data loss bitmap.

15

15. A system, comprising: a hardware processor; and logic integrated with the hardware processor, executable by the hardware processor, or integrated with and executable by the hardware processor, the logic being configured to: detect, by the hardware processor, an outage at a production site; transfer, by the hardware processor, input/output (I/O) functionality to a first recovery site; in response to determining that the outage at the production site has been resolved, receive, by the hardware processor, a first out-of-sync bitmap from the first recovery site; receive, by the hardware processor, a second out-of-sync bitmap from a second recovery site, wherein the second recovery site serves as a synchronous mirrored copy to the first recovery site; merge, by the hardware processor, the first and second out-of-sync bitmaps into a merged out-of-sync bitmap; receive, by the hardware processor, performance data which corresponds to achievable throughput from each of the first and second recovery sites to the production site; use, by the hardware processor, the performance data to divide the merged out-of-sync bitmap into two portions, wherein a size of a first of the two portions correlates to the achievable throughput from the first recovery site to the production site, wherein a size of a second of the two portions correlates to the achievable throughput from the second recovery site to the production site; send, by the hardware processor, a request to the first recovery site for data which corresponds to the first portion of the merged out-of-sync bitmap; send, by the hardware processor, a request to the second recovery site for data which corresponds to the second portion of the merged out-of-sync bitmap; and receive, by the hardware processor, the data which corresponds to the first and second portions of the merged out-of-sync bitmap respectively, in parallel.

16

16. The system of claim 15 , wherein the data which corresponds to the first and second portions of the merged out-of-sync bitmap respectively, is fully received in substantially a same amount of time.

17

17. The system of claim 15 , the logic being configured to: detect, by the hardware processor, that a difference between actual performance and the performance data used to divide the merged out-of-sync bitmap into the two portions has exceeded a predefined threshold; send, by the hardware processor, a request to the first recovery site for an updated version of the first out-of-sync bitmap; send, by the hardware processor, a request to the second recovery site for an updated version of the second out-of-sync bitmap; merge, by the hardware processor, the updated first and second out-of-sync bitmaps into an updated merged out-of-sync bitmap; use, by the hardware processor, the actual performance to divide the updated merged out-of-sync bitmap into two updated portions, wherein a size of a first of the two updated portions correlates to actual throughput experienced from the first recovery site to the production site, wherein a size of a second of the two updated portions correlates to actual throughput experienced from the second recovery site to the production site; send, by the hardware processor, a request to the first recovery site for data which corresponds to the first updated portion of the updated merged out-of-sync bitmap; send, by the hardware processor, a request to the second recovery site for data which corresponds to the second updated portion of the updated merged out-of-sync bitmap; and receive, by the hardware processor, the data which corresponds to the first and second updated portions of the updated merged out-of-sync bitmap respectively, in parallel.

18

18. The system of claim 17 , wherein the data which corresponds to the first and second updated portions of the updated merged out-of-sync bitmap respectively, are fully received in substantially a same amount of time.

19

19. The system of claim 17 , wherein a total amount of time spent receiving the data which corresponds to the first and second updated portions of the updated merged out-of-sync bitmap is reduced by using the actual performance to divide the updated merged out-of-sync bitmap into the two updated portions.

20

20. The system of claim 15 , the logic being configured to: send, by the hardware processor, a data loss bitmap to each of the first and second recovery sites, wherein the out-of-sync bitmaps received from the first and second recovery sites are formed using the data loss bitmap.

Patent Metadata

Filing Date

Unknown

Publication Date

May 11, 2021

Inventors

Gang Lyu
Bo Zou
Yang Liu

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “DYNAMIC DATA RESTORATION FROM MULTIPLE RECOVERY SITES IMPLEMENTING SYNCHRONOUS REMOTE MIRRORING” (11003557). https://patentable.app/patents/11003557

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.

DYNAMIC DATA RESTORATION FROM MULTIPLE RECOVERY SITES IMPLEMENTING SYNCHRONOUS REMOTE MIRRORING — Gang Lyu | Patentable