Using a recovery snapshot during live migration
US-2015378831-A1 · Dec 31, 2015 · US
US9823973B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-9823973-B1 |
| Application number | US-201414578663-A |
| Country | US |
| Kind code | B1 |
| Filing date | Dec 22, 2014 |
| Priority date | Dec 22, 2014 |
| Publication date | Nov 21, 2017 |
| Grant date | Nov 21, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The described system provides that backend array-based snapshots may be created separately on each site of a cluster, and then the snapshots fixed so as to be consistent and/or otherwise identical among the plurality of sites. The system advantageously allows creation of a consistent cluster-wide snapshot with minimal or no I/O delays. In an embodiment, the system provides for use of a change tracker that tracks the metadata of all the I/Os incoming to the volumes being snapped. When the system wants to create a snapshot on all sites, the change tracker is activated on each site separately for the volumes being snapped. A snapshot is then created on each of the cluster sites/backend storage arrays separately. The change trackers are then ordered to stop tracking. A snapshot fixing procedure is then initiated.
Opening claim text (preview).
What is claimed is: 1. A method for providing a consistent point-in-time copy of data, comprising: tracking information of input/outputs (I/Os) of data on each site of a plurality of sites each having at least one storage array; replicating data from at least one of the sites to at least one other ones of the sites; creating separate point-in-time copies of the data at each site of the plurality of sites using snapshots at each of the sites, wherein each of the snapshots preserves data from a corresponding storage location therefor in response to the storage location being overwritten using a change tracker device at each of the plurality of sites to track data corresponding to all incoming I/O operations at each of the storage devices; selecting one of the sites as a target site; suspending the change tracker device at each of the sites; and adjusting the snapshots at the target site after suspending the change tracker device to provide the consistent point-in-time copy of the data among the plurality of sites by modifying the data preserved at the snapshots at the target site according to differences between information of input/outputs of data tracked at the target site and information of input/outputs of data tracked at the other sites. 2. The method of claim 1 , wherein the information of the I/Os is metadata of the I/Os. 3. The method according to claim 1 , wherein adjusting the point-in-time copies of the data includes: stopping the tracking of the information of the I/Os; and merging the tracked information of the I/Os from each of the plurality of sites into the target site to create a list of changes at the target site corresponding to differences between information of input/outputs of data tracked at the target site and information of input/outputs of data tracked at the other sites. 4. The method of claim 3 , wherein the information of the I/Os is tracked using at least one change tracker for the plurality of sites. 5. The method of claim 4 , wherein the at least one change tracker includes separate change trackers at each site of the plurality of sites. 6. The method of claim 4 , further comprising: after modifying the point-in-time copy at the target site, erasing the at least one change tracker for the plurality of sites; and after erasing the at least one change tracker, restarting the at least one change tracker to track information of further I/Os at each site. 7. The method of claim 1 , further comprising: before creating the point-in-time copies separately at each site, flushing open I/Os at each of the sites. 8. A non-transitory computer-readable medium storing software for providing a consistent point-in-time copy of data, the software comprising: executable code that tracks information of input/outputs (I/Os) of data on each site of a plurality of sites each having at least one storage array; executable code that replicates data from at least one of the sites to at least one other ones of the sites; executable code that creates separate point-in-time copies of the data at each site of the plurality of sites using snapshots at each of the sites, wherein each of the snapshots preserves data from a corresponding storage location therefor in response to the storage location being overwritten using a change tracker device at each of the plurality of sites to track data corresponding to all incoming I/O operations at each of the storage devices; executable code that selects one of the sites as a target site; executable code that suspends the change tracker device at each of the sites; and executable code that adjusts the snapshots at the target site while the change tracker device is suspended to provide the consistent point-in-time copy of the data among the plurality of sites by modifying the data preserved at the snapshots at the target site according to differences between information of input/outputs of data tracked at the target site and information of input/outputs of data tracked at the other sites. 9. The non-transitory computer-readable medium of claim 8 , wherein the information of the I/Os is metadata of the I/Os. 10. The non-transitory computer-readable medium of claim 8 , wherein the executable code that adjusts the point-in-time copies includes: executable code that stops the tracking of the information of the I/Os; and executable code that merges the tracked information of the I/Os from each of the plurality of sites into the target site to create a list of changes at the target site corresponding to differences between information of input/outputs of data tracked at the target site and information of input/outputs of data tracked at the other sites. 11. The non-transitory computer-readable medium of claim 10 , wherein the information of the I/Os is tracked using at least one change tracker for the plurality of sites. 12. The non-transitory computer-readable medium of claim 11 , wherein the at least one change tracker includes separate change trackers at each site of the plurality of sites. 13. The non-transitory computer-readable medium of claim 11 , wherein the software further comprises: executable code that, after the point-in-time copy is modified at the target site, erases the change tracker at each site of the plurality of sites; and executable code that, after the change tracker is erased at each site, restarts the change tracker at each site to track information of further I/Os at each site. 14. The non-transitory computer-readable medium of claim 8 , wherein the software further comprises: executable code that, before the point-in-time copies are created separately at each site, flushes open I/Os at each of the sites. 15. A system, comprising: a plurality of sites having storage arrays; a non-transitory computer-readable medium storing software for providing a consistent point-in-time copy of data, the software including: executable code that tracks information of input/outputs (I/Os) of data on each site of the plurality of sites; executable code that replicates data from at least one of the sites to at least one other ones of the sites; executable code that creates point-in-time copies of the data separately at each site of the plurality of sites using snapshots at each of the sites, wherein each of the snapshots preserves data from a corresponding storage location therefor in response to the storage location being overwritten using a change tracker device at each of the plurality of sites to track data corresponding to all incoming I/O operations at each of the storage devices; executable code that selects one of the sites as a target site; executable code that suspends the change tracker device at each of the sites; and executable code that adjusts the point-in-time snapshot at the target site while the change tracker device is suspended to provide the consistent point-in-time copy of the data among the plurality of sites by modifying the data preserved at the snapshots at the target site according to differences between information of input/outputs of data tracked at the target site and information of input/outputs of data tracked at the other sites. 16. The system of claim 15 , wherein the information of the I/Os is metadata of the I/Os. 17. The system of claim 15 , wherein the executable code that adjusts the point-in-time copies includes: executable code that stops the tracking of the information of the I/Os; and executable code that merges the tracked information of the I/Os from each of the plurality of sites into the target site to create a list of changes at the target site corres
Using snapshots, i.e. a logical point-in-time copy of the data · CPC title
in relation to data integrity, e.g. data losses, bit errors · CPC title
involving logging of persistent data for recovery · CPC title
Point-in-time backing up or restoration of persistent data · CPC title
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.