Apparatus, system, and method for managing eviction of data
US-9678874-B2 · Jun 13, 2017 · US
US9946485B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-9946485-B1 |
| Application number | US-201615386042-A |
| Country | US |
| Kind code | B1 |
| Filing date | Dec 21, 2016 |
| Priority date | Dec 21, 2016 |
| Publication date | Apr 17, 2018 |
| Grant date | Apr 17, 2018 |
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.
A changed block bitmap of a volume of storage is represented by a data marker that includes an offset to a first dirty block and an offset to a last dirty block. The blocks between the first and last dirty blocks are represented by contiguous clean block identifiers, contiguous dirty block identifiers, and contiguous mixed clean and dirty block identifiers. The contiguous clean block identifiers and contiguous dirty block identifiers use one or two bits to indicate identifier type. The remaining bits indicate a numerical count of contiguous clean or dirty blocks. The contiguous mixed clean and dirty block identifiers may use one bit per block to indicate change status. The data marker may be smaller than a corresponding changed block bitmap.
Opening claim text (preview).
What is claimed is: 1. An apparatus comprising: a plurality of interconnected computing nodes, each of the computing nodes comprising at least one processor and non-transitory memory; a plurality of groups of data storage drives, each group of data storage drives connected with one of the computing nodes; first program code, stored on non-transitory memory, that maintains a logical storage volume comprising contiguous logical block addresses that map to non-contiguous addresses of the data storage drives; and second program code, stored on non-transitory memory, that generates a data marker that represents changes to the logical storage volume, the data marker comprising a first field that indicates an offset to a first dirty block and a second field that indicates an offset to a last dirty block. 2. The apparatus of claim 1 wherein the second program code generates the data marker with at least one bitmap field that represents contiguous clean blocks. 3. The apparatus of claim 2 wherein the bitmap field is two bytes in length and a most significant bit of the two bytes indicates that the bitmap field represents contiguous clean blocks. 4. The apparatus of claim 3 wherein fifteen bits following the most significant bit indicate a numerical count of contiguous clean blocks. 5. The apparatus of claim 1 wherein the second program code generates the data marker with at least one bitmap field that represents contiguous dirty blocks. 6. The apparatus of claim 5 wherein the bitmap field is two bytes in length and two most significant bits of the two bytes indicates that the bitmap field represents contiguous dirty blocks. 7. The apparatus of claim 6 wherein fourteen bits following the two most significant bits indicate a numerical count of contiguous dirty blocks. 8. The apparatus of claim 1 wherein the second program code generates the data marker with at least one bitmap field that represents contiguous mixed clean and dirty blocks. 9. The apparatus of claim 8 wherein the bitmap field is two bytes in length and two most significant bits of the two bytes indicates that the bitmap field represents contiguous mixed clean and dirty blocks. 10. The apparatus of claim 9 wherein fourteen bits following the two most significant bits each indicate change status of an individual block. 11. A method comprising: in a storage array comprising a plurality of interconnected computing nodes, each of the computing nodes comprising at least one processor and non-transitory memory, and a plurality of groups of data storage drives, each group of data storage drives connected with one of the computing nodes: maintaining a logical storage volume comprising contiguous logical block addresses that map to non-contiguous addresses of the data storage drives; and generating a data marker that represents changes to the logical storage volume, comprising: generating a first field that indicates an offset to a first dirty block; and generating a second field that indicates an offset to a last dirty block. 12. The method of claim 11 wherein generating the data marker comprises generating at least one bitmap field that represents contiguous clean blocks. 13. The method of claim 12 comprising generating the bitmap field with a length of two bytes and a most significant bit of the two bytes indicating that the bitmap field represents contiguous clean blocks. 14. The method of claim 13 comprising using fifteen bits following the most significant bit to indicate a numerical count of contiguous clean blocks. 15. The method of claim 11 wherein generating the data marker comprises generating at least one bitmap field that represents contiguous dirty blocks. 16. The method of claim 15 comprising generating the bitmap field with a length of two bytes and two most significant bits of the two bytes indicating that the bitmap field represents contiguous dirty blocks. 17. The method of claim 16 comprising using fourteen bits following the two most significant bits to indicate a numerical count of contiguous dirty blocks. 18. The method of claim 11 wherein generating the data marker comprises generating at least one bitmap field that represents contiguous mixed clean and dirty blocks. 19. The method of claim 18 comprising generating the bitmap field with a length of two bytes and two most significant bits of the two bytes indicating that the bitmap field represents contiguous mixed clean and dirty blocks. 20. A method comprising: in a network comprising a data protection appliance and a storage array, the storage array comprising a plurality of interconnected computing nodes, each of the computing nodes comprising at least one processor and non-transitory memory, and a plurality of groups of data storage drives, each group of data storage drives connected with one of the computing nodes: maintaining a logical storage volume comprising contiguous logical block addresses that map to non-contiguous addresses of the data storage drives; and generating a data marker that represents changes to the logical storage volume, comprising: generating a first field that indicates an offset to a first dirty block; generating a second field that indicates an offset to a last dirty block; generating at least one bitmap field that represents contiguous clean blocks; and generating at least one bitmap field that represents contiguous dirty blocks; and sending the data marker from the storage array to the data protection appliance.
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
with a single idle spare processing component · CPC title
Replication mechanisms · CPC title
where the redundant components share neither address space nor persistent storage · CPC title
maintaining the standby controller/processing unit updated (initialisation or re-synchronisation thereof G06F11/1658 and subgroups) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.