Synchronizing a stale component of a distributed object using a delta component during maintenance

US11947827B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11947827-B2
Application numberUS-202016875624-A
CountryUS
Kind codeB2
Filing dateMay 15, 2020
Priority dateMay 15, 2020
Publication dateApr 2, 2024
Grant dateApr 2, 2024

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.

The disclosure herein describes enhancing data durability of a base component using a delta component. A delta component is generated based on the base component becoming unavailable. The delta component is configured to include unwritten storage space with an address space matching the base component and a tracking bitmap associated with data blocks of the address space of the delta component. Write operations targeted for the base component are routed to the delta component. Based on the routed write operations, bits associated with data blocks affected by the write operations are changed in the tracking bitmap. Based on the base component becoming available, data blocks affected by routed write operations are identified based on the tracking bitmap and the identified data blocks are synchronized from the delta component to the base component. The delta component is then removed.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for enhancing data durability of a base component using a temporary component and a mirrored component, the method comprising: copying, by the mirrored component, all write operations directed to the base component to the mirrored component; generating, by a processor, a temporary component based on the base component becoming unavailable, wherein the temporary component is configured to include blank storage space with an address space matching an address space of the base component and a tracking component that includes a plurality of bits associated with data blocks of the address space of the temporary component; routing, by the processor, a write operation targeted for the base component to the temporary component, and the mirrored component; based on routing the write operation targeted for the base component to the temporary component and the mirrored component, writing data associated with the write operation to (i) a data block of the data blocks of the address space of the temporary component and (ii) the mirrored component; based on writing the data to the data block of the temporary component, changing, by the processor, a bit associated with the data block in the tracking component; based on detecting the base component becoming available, selecting the temporary component over the mirrored component as a source for synchronizing the base component to include the data associated with the write operation that was routed to the temporary component and the mirrored component while the base component was unavailable; estimating, by the processor, a synchronization workload using the tracking component; filtering out unwritten portions of the synchronization workload from the temporary component, the filtering out leaving written portions of the synchronization workload in the temporary component; and copying data of the written portions of the synchronization workload from the temporary component to the base component. 2. The method of claim 1 , wherein copying data of the written portions of the synchronization workload from the temporary component to the base component includes identifying a subset of data locations in the temporary component; and writing the identified subset of data locations from the temporary component to the base component. 3. The method of claim 1 , wherein generating the temporary component is based on receiving a notification prior to the base component becoming unavailable; and wherein the temporary component is generated prior to the base component becoming unavailable. 4. The method of claim 1 , further comprising: determining that the copying data of the written portions of the synchronization workload from the temporary component to the base component is not complete and the temporary component is unavailable; based on the determining of the temporary component becoming unavailable, restarting synchronization of the base component using the mirrored component. 5. The method of claim 1 , wherein the base component is part of a redundant array of independent disks (RAID) and generating the temporary component includes placing the temporary component into a temporary RAID level configured to mirror write operations targeted at the base component. 6. The method of claim 1 , further comprising transitioning the temporary component to a degraded state and notifying a cleanup process to delete the temporary component. 7. A computer system for enhancing data durability of a base component using a temporary component and a mirrored component, the computer system comprising: a processor; and a non-transitory computer readable medium having stored thereon program code for transferring data to another computer system, the program code causing the processor to: copy all write operations directed to the base component to the mirrored component; generate a temporary component based on the base component becoming unavailable, wherein the temporary component is configured to have an address space matching an address space of the base component and a tracking component that includes a plurality of bits associated with data blocks of the address space of the temporary component; route a write operation targeted for the base component to the temporary component, and the mirrored component; based on routing the write operation targeted for the base component to the temporary component and the mirrored component, write data associated with the write operation to (i) a data block of the data blocks of the address space of the temporary component and (ii) the mirrored component; based on writing the data to the data block of the temporary component, change a bit associated with the data block in the tracking component; based on detecting the base component becoming available, select the temporary component over the mirrored component as a source for synchronizing the base component to include the data associated with the write operation that was routed to the temporary component and the mirrored component while the base component was unavailable; estimate, by the processor, a synchronization workload using the tracking component; filter out unwritten portions of the synchronization workload from the temporary component, the filtering out leaving written portions of the synchronization workload in the temporary component; and copy data of the written portions of the synchronization workload from the temporary component to the base component. 8. The computer system of claim 7 , wherein copying data of the written portions of the synchronization workload from the temporary component to the base component includes identifying a subset of data locations in the temporary component; and writing the identified subset of data locations from the temporary component to the base component. 9. The computer system of claim 7 , wherein generating the temporary component is based on receiving a notification prior to the base component becoming unavailable; and wherein the temporary component is generated prior to the base component becoming unavailable. 10. The computer system of claim 7 , wherein the program code is further operative to: determine that the copying data of the written portions of the synchronization workload from the temporary component to the base component is not complete and the temporary component is unavailable; based on the determining of the temporary component becoming unavailable, restart synchronization of the base component using the mirrored component. 11. The computer system of claim 7 , wherein the base component is part of a redundant array of independent disks (RAID) and generating the temporary component includes placing the temporary component into a temporary RAID level configured to mirror write operations targeted at the base component. 12. The computer system of claim 7 , further comprising transitioning the temporary component to a degraded state and notifying a cleanup process to delete the temporary component. 13. A non-transitory computer storage medium having stored thereon program code executable by a first computer system at a first site, the program code embodying a method comprising: copying, by a mirrored component, all write operations directed to a base component to the mirrored component; generating a temporary component based on a base component becoming unavailable, wherein the temporary component is configured to include blank storage space with an address space matching an address space of the base component and a tracking component including a plurality of bits associated with data blocks of the address space of the temporary componen

Assignees

Inventors

Classifications

  • G06F3/065Primary

    Replication mechanisms · CPC title

  • in relation to availability · CPC title

  • Disk arrays, e.g. RAID, JBOD · CPC title

  • G06F3/067Primary

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

  • in relation to data integrity, e.g. data losses, bit errors · 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 US11947827B2 cover?
The disclosure herein describes enhancing data durability of a base component using a delta component. A delta component is generated based on the base component becoming unavailable. The delta component is configured to include unwritten storage space with an address space matching the base component and a tracking bitmap associated with data blocks of the address space of the delta component.…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification G06F3/065. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 02 2024 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).