Managing data relocations in storage systems
US-10809932-B1 · Oct 20, 2020 · US
US11100047B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11100047-B2 |
| Application number | US-201916238710-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 3, 2019 |
| Priority date | Apr 20, 2018 |
| Publication date | Aug 24, 2021 |
| Grant date | Aug 24, 2021 |
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.
Techniques delete snapshots. The techniques involve: in response to a data block to which a plurality of snapshots of a file to be deleted point being shared, determining whether a physical address of the data block to which the plurality of snapshots to be deleted point is the same as a target physical address of a data block to which a target snapshot of the file points. The techniques further involve: in response to the physical address of the data block to which the plurality of snapshots to be deleted point being the same as the target physical address, setting flag bits associated with the plurality of snapshots to be deleted to a first state. The techniques further involve: in response to detecting the first state, updating a target weight with a sum of weights of the plurality of snapshots to be deleted (e.g., respective quotas).
Opening claim text (preview).
We claim: 1. A method of deleting snapshots, comprising: in response to a data block to which a plurality of snapshots of a file to be deleted point being shared, determining whether a physical address of the data block to which the plurality of snapshots to be deleted point is the same as a target physical address of a data block to which a target snapshot of the file points; in response to the physical address of the data block to which the plurality of snapshots to be deleted point being the same as the target physical address, setting flag bits associated with the plurality of snapshots to be deleted to a first state; and in response to detecting the first state, updating a target weight with a sum of weights of the plurality of snapshots to be deleted, the weights of the plurality of snapshots to be deleted and the target weight indicating quotas of the plurality of snapshots to be deleted and a quota of the target snapshot sharing the pointed data block, respectively. 2. The method according to claim 1 , wherein updating the target weight comprises: comparing a sum of the weights of the plurality of snapshots to be deleted and the target weight with a threshold weight; and in response to the sum of the weights of the plurality of snapshots to be deleted and the target weight being below the threshold weight, updating the target weight with the sum of the weights of the plurality of snapshots to be deleted and the target weight. 3. The method according to claim 1 , further comprising: in response to a first physical address of a data block to which a first snapshot of the plurality of snapshots to be deleted being different from the target physical address, setting flag bits associated with the first snapshot to a second state, the second state being different from the first state, and storing the first physical address. 4. The method according to claim 3 , further comprising: in response to a second physical address of a data block to which a second snapshot of the plurality of snapshots to be deleted being different from the target physical address, the second snapshot being different from the first snapshot, determining whether the second physical address is the same as the first physical address, in response to the second physical address being the same as the first physical address, setting the flag bits associated with the first snapshot and flag bits associated with the second snapshot to a third state, the third state being different from the first state and the second state, and in response to detecting the third state, updating a total weight associated with the data block to which the first snapshot points with a sum of a first weight of the first snapshot and a second weight of the second snapshot, the first weight and the second weight each accounting for a respective proportion of the total weight. 5. The method according to claim 4 , further comprising: storing a physical address of block metadata associated with the data block to which the first snapshot points, the block metadata recording the total weight. 6. The method according to claim 4 , further comprising: comparing the sum of the first weight and the second weight with the total weight; in response to the sum of the first weight and the second weight being equal to the total weight, changing the third state of the flag bits associated with the first snapshot and the flag bits associated with the second snapshot to a fourth state; and in response to detecting the fourth state, releasing the data block to which the first snapshot points. 7. The method according to claim 1 , further comprising: determining the physical address of the data block to which the plurality of snapshots to be deleted point based on a file offset of the plurality of snapshots to be deleted, a size of the data block to which the plurality of snapshots to be deleted point, and a size of a leaf indirect block associated with the plurality of snapshots to be deleted. 8. An electronic device, comprising: at least one processor; and at least one memory comprising computer program instructions, the at least memory and the computer program instructions being configured to, with the at least one processor, cause the device to perform acts comprising: in response to a data block to which a plurality of snapshots of a file to be deleted point being shared, determining whether a physical address of the data block to which the plurality of snapshots to be deleted point is the same as a target physical address of a data block to which a target snapshot of the file points, in response to the physical address of the data block to which the plurality of snapshots to be deleted point being the same as the target physical address, setting flag bits associated with the plurality of snapshots to be deleted to a first state, and in response to detecting the first state, updating a target weight with a sum of weights of the plurality of snapshots to be deleted, the weights of the plurality of snapshots to be deleted and the target weight indicating quotas of the plurality of snapshots to be deleted and the target snapshot sharing the pointed data block, respectively. 9. The electronic device according to claim 8 , wherein updating the target weight comprises: comparing a sum of the weights of the plurality of snapshots to be deleted and the target weight with a threshold weight; and in response to the sum of the weights of the plurality of snapshots to be deleted and the target weight being below the threshold weight, updating the target weight with the sum of the weights of the plurality of snapshots to be deleted and the target weight. 10. The electronic device according to claim 8 , wherein the acts further comprise: in response to a first physical address of a data block to which a first snapshot of the plurality of snapshots to be deleted being different from the target physical address, setting flag bits associated with the first snapshot to a second state, the second state being different from the first state, and storing the first physical address. 11. The electronic device according to claim 10 , wherein the acts further comprise: in response to a second physical address of a data block to which a second snapshot of the plurality of snapshots to be deleted being different from the target physical address, the second snapshot being different from the first snapshot, determining whether the second physical address is the same as the first physical address, in response to the second physical address being the same as the first physical address, setting the flag bits associated with the first snapshot and flag bits associated with the second snapshot to a third state, the third state being different from the first state and the second state, and in response to detecting the third state, updating a total weight associated with the data block to which the first snapshot points with a sum of a first weight of the first snapshot and a second weight of the second snapshot, the first weight and the second weight each taking a respective proportion of the total weight. 12. The electronic device according to claim 11 , wherein the acts further comprise: storing a physical address of block metadata associated with the data block to which the first snapshot points, the block metadata recording the total weight. 13. The electronic device according to claim 11 , wherein the acts further comprise: comparing the sum of the first weight and the second weight with the total weight; in response to the sum of the first weight and the second weight being equal to the total weight, changing the th
Using snapshots, i.e. a logical point-in-time copy of the data · CPC title
by selection of backup contents · CPC title
Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion (error detection or correction of the data by redundancy in operations or in hardware G06F11/14, G06F11/16) · CPC title
Management of the data involved in backup or backup restore · CPC title
Threshold · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.