Technique for quantifying logical space trapped in an extent store
US-2016070480-A1 · Mar 10, 2016 · US
US11301330B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11301330-B2 |
| Application number | US-201916262005-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 30, 2019 |
| Priority date | Jan 30, 2019 |
| Publication date | Apr 12, 2022 |
| Grant date | Apr 12, 2022 |
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 method, computer program product, and computing system for identifying one or more metadata pages stored in a storage array, thus defining a primary set of metadata pages. An alternative set of metadata pages may be generated from the primary set of metadata pages. A log of changes associated with the primary set of metadata pages may be generated. A copy of at least a portion of the primary set of metadata pages may be generated based upon, at least in part, the alternative set of metadata pages and the log of changes associated with the primary set of metadata pages. The alternative set of metadata pages may lag behind in time from the primary set of metadata pages by a predefined amount of time.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method, executed on a computing device, comprising: creating a multi-layer metadata architecture for one or more metadata pages stored in a storage array, wherein the multi-layer metadata architecture comprises a first layer, wherein the first layer includes one or more first layer metadata blocks, a second layer, wherein the second layer includes one or more second layer metadata blocks and is configured to isolate a logical address of a metadata block from a physical location of a metadata block by mapping a logical block address (LBA) of one or more first layer metadata blocks included in the first layer to one or more second layer metadata blocks in the second layer and is configured to allow for user data associated with a second layer metadata block to be relocated without updating the first layer metadata blocks, and a third layer, wherein the third layer includes one or more third layer metadata blocks, wherein one or more second layer metadata blocks are mapped to the one or more third layer metadata blocks, wherein the one or more third layer metadata blocks are configured to store user data and describe a physical location of the user data; identifying, via the computing device, one or more metadata pages comprised of one or more third layer metadata blocks, wherein the one or more metadata pages are stored in a storage array, thus defining a primary set of metadata pages; generating an alternative set of metadata pages from the primary set of metadata pages; generating a log of changes associated with the primary set of metadata pages; generating a copy of at least a portion of the primary set of metadata pages based upon, at least in part, the alternative set of metadata pages and the log of changes associated with the primary set of metadata pages; and clearing, in response to generating the copy of at least a portion of the primary set of metadata pages based upon, at least in part, the alternative set of metadata pages and the log of changes associated with the primary set of metadata pages, at least a portion of the log of changes associated with the primary set of metadata pages from the log of changes. 2. The computer-implemented method of claim 1 , wherein the alternative set of metadata pages lags behind in time from the primary set of metadata pages by a predefined amount of time. 3. The computer implemented method of claim 1 , wherein generating the copy of the at least a portion of the primary set of metadata pages includes: reading at least one metadata page from the alternative set of metadata pages; identifying one or more changes associated with the at least one metadata page from the log of changes associated with the primary set of metadata pages; and merging the identified one or more changes to the at least one metadata page read from the alternative set of metadata pages. 4. The computer implemented method of claim 1 , further comprising: restoring the at least a portion of the primary set of metadata pages from the generated copy of the at least a portion of the primary set of metadata pages. 5. The computer-implemented method of claim 4 , wherein restoring the at least a portion of the primary set of metadata pages from the generated copy of the at least a portion of the primary set of metadata pages is in response to detecting corruption of the at least a portion of the primary set of metadata pages. 6. The computer-implemented method of claim 1 , wherein generating the copy of the at least a portion of the primary set of metadata pages includes generating the copy of the at least a portion of the primary set of metadata pages at a predefined time interval. 7. The computer-implemented method of claim 1 , wherein the log of changes associated with the primary set of metadata pages includes a plurality of tuples representative of the changes to the primary set of metadata pages. 8. A computer program product residing on a non-transitory computer readable medium having a plurality of instructions stored thereon which, when executed by a processor, cause the processor to perform operations comprising: creating a multi-layer metadata architecture for one or more metadata pages stored in a storage array, wherein the multi-layer metadata architecture comprises a first layer, wherein the first layer includes one or more first layer metadata blocks, a second layer, wherein the second layer includes one or more second layer metadata blocks and is configured to isolate a logical address of a metadata block from a physical location of a metadata block by mapping a logical block address (LBA) of one or more first layer metadata blocks included in the first layer to one or more second layer metadata blocks in the second layer and is configured to allow for user data associated with a second layer metadata block to be relocated without updating the first layer metadata blocks, and a third layer, wherein the third layer includes one or more third layer metadata blocks, wherein one or more second layer metadata blocks are mapped to the one or more third layer metadata blocks, wherein the one or more third layer metadata blocks are configured to store user data and describe a physical location of the user data; identifying, via the computing device, one or more metadata pages comprised of one or more third layer metadata blocks, wherein the one or more metadata pages are stored in a storage array, thus defining a primary set of metadata pages; generating an alternative set of metadata pages from the primary set of metadata pages; generating a log of changes associated with the primary set of metadata pages; generating a copy of at least a portion of the primary set of metadata pages based upon, at least in part, the alternative set of metadata pages and the log of changes associated with the primary set of metadata pages; and clearing, in response to generating the copy of at least a portion of the primary set of metadata pages based upon, at least in part, the alternative set of metadata pages and the log of changes associated with the primary set of metadata pages, at least a portion of the log of changes associated with the primary set of metadata pages from the log of changes. 9. The computer program product of claim 8 , wherein the alternative set of metadata pages lags behind in time from the primary set of metadata pages by a predefined amount of time. 10. The computer program product of claim 8 , wherein generating the copy of the at least a portion of the primary set of metadata pages includes: reading at least one metadata page from the alternative set of metadata pages; identifying one or more changes associated with the at least one metadata page from the log of changes associated with the primary set of metadata pages; and merging the identified one or more changes to the at least one metadata page read from the alternative set of metadata pages. 11. The computer program product of claim 8 , further comprising: restoring the at least a portion of the primary set of metadata pages from the generated copy of the at least a portion of the primary set of metadata pages. 12. The computer program product of claim 11 , wherein restoring the at least a portion of the primary set of metadata pages from the generated copy of the at least a portion of the primary set of metadata pages is in response to detecting corruption of the at least a portion of the primary set of metadata pages. 13. The computer program product of claim 8 , wherein generating the copy of the at least a portion of the primary set of metadata pages includes generating the copy of the at least
Backup restoration techniques · CPC title
Distributed indices · CPC title
using file system or storage system metadata · CPC title
Database-specific techniques · CPC title
Solving problems relating to consistency · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.