System and method for recovering file systems without a replica
US-9990253-B1 · Jun 5, 2018 · US
US10795579B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10795579-B2 |
| Application number | US-201916358615-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 19, 2019 |
| Priority date | Sep 30, 2018 |
| Publication date | Oct 6, 2020 |
| Grant date | Oct 6, 2020 |
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.
Embodiments of the present disclosure provide methods, apparatuses, a system and computer program products for managing storage units. According to embodiments of the present disclosure, it is determined whether a first storage unit allocated at a first node is reclaimable, wherein data in the first storage unit is backed up to a second storage unit at a second node. In response to determining that the first storage unit is reclaimable, a condition to be satisfied for reclaiming the second storage unit is determined. A command indicating the condition is sent to the second node, such that the second node reclaims the second storage unit in response to the condition being satisfied. Moreover, in response to the command being sent, the first storage unit is reclaimed. The embodiments of the present disclosure enable timely reclaiming of storage units, thereby improving utilization of the storage space effectively.
Opening claim text (preview).
We claim: 1. A method of reclaiming storage units, comprising: receiving, by a system comprising a processor, a request to perform an operation from an application; in response to the operation being performed, recording the operation in a journal recording of a sequence of operations that have been performed, wherein the operation is part of the sequence of operations; determining that a first storage unit, allocated to store one or more objects at a first node, is reclaimable to store second data representative of a second object created at the first node, wherein first data representative of a first object in the first storage unit is backed up to a second storage unit at a second node; in response to the determining that the first storage unit is reclaimable to store the second data representative of the second object created at the first node, determining a condition to be satisfied for reclaiming the second storage unit; sending a command indicating the condition to the second node, such that the second node reclaims the second storage unit in response to the condition being satisfied; and in response to the command being sent, reclaiming the first storage unit to store the second data representative of the second object created at the first node. 2. The method of claim 1 , wherein the determining that the first storage unit is reclaimable comprises: determining a reference count of the first storage unit, wherein the reference count indicates a number of objects currently stored in the first storage unit; and in response to the reference count being a predetermined value, determining that the first storage unit is reclaimable. 3. The method of claim 2 , wherein the operation is performed on one object of the one or more objects, and the method further comprises: in response to the first storage unit being determined to be reclaimable, initializing the reference count with a predetermined initial value; in response to receiving, from the application, the request to perform the operation on the one object of the one or more objects, performing the operation on the one object of the one or more objects; and updating the reference count based on a result of the operation performed on the one object of the one or more objects. 4. The method of claim 3 , wherein the journal recording of the sequence of operations is performed on the one or more objects, and the method further comprises: in response to the operation on the one object of the one or more objects being performed, recording the operation performed on the one object of the one or more objects in the journal recording of the sequence of the operations performed on the one or more objects, wherein the operation performed on the one object of the one or more objects is part of the sequence of operations performed on the one or more objects; and sending, to the second node, the journal recording of the sequence of operations performed on the one or more objects, such that the second node is synchronized with the first node by performing the sequence of operations. 5. The method of claim 3 , wherein the performing the operation comprises: in response to receiving, from the application, a first request to create the second object in the one or more objects, obtaining the second data representative of the second object from the first request; and in response to an available first storage area being present in the first storage unit, creating the first object at least by storing the second data representative of the second object in the first storage area; and wherein the updating the reference count comprises: in response to the second data representative of the second object being stored in the first storage unit, incrementing the reference count. 6. The method of claim 3 , wherein the performing the operation comprises: in response to receiving, from the application, a first request to create the second object in the one or more objects, obtaining the second data representative of the second object from the first request; in response to an available storage area being absent in the first storage unit, backing up the first data representative of the first object in the first storage unit to the second storage unit; allocating, at the first node, a third storage unit different from the first storage unit for storing the second data representative of the second object; and creating the second object at least by storing the second data representative of the second object in the third storage unit; and wherein the updating the reference count comprises: in response to the second data representative of the second object being stored in the third storage unit, keeping the reference count unchanged. 7. The method of claim 5 , wherein the performing the operation comprises: in response to receiving, from the application, a second request to update the second object to create an updated second object, obtaining third data representative of the updated second object from the second request; and in response to an available second storage area being present in the first storage unit, updating the second object at least by setting the first storage area to be reclaimed and by storing the second data representative of the second object in the second storage area, wherein the second storage area is different from the first storage area; and wherein the updating the reference count comprises: in response to the third data representative of the updated second object being stored in the first storage unit, keeping the reference count unchanged. 8. The method of claim 5 , wherein the performing the operation comprises: in response to receiving, from the application, a second request to update the second object to create an updated second object, obtaining third data representative of the updated second object from the second request; in response to an available storage area being absent in the first storage unit, backing up the second data representative of the second object in the first storage unit to the second storage unit; allocating, at the first node, a third storage unit different from the first storage unit for storing the third data representative of the updated second object; and updating the second object at least by setting the first storage area to be reclaimed and by storing the third data representative of the updated second object in the third storage unit; and wherein the updating the reference count comprises: in response to the third data representative of the updated second object being stored in the third storage unit, decrementing the reference count. 9. The method of claim 5 , wherein the performing the operation comprises: in response to receiving, from the application, a second request to delete the second object, deleting the second object at least by setting the first storage area to be reclaimed; and wherein the updating the reference count comprises: in response to the second object being deleted, decrementing the reference count. 10. The method of claim 1 , wherein the first storage unit includes one or more storage areas, and wherein the determining that the first storage unit is reclaimable comprises: in response to each storage area of the one or more storage areas being set to be reclaimed, determining that the first storage unit is reclaimable. 11. The method of claim 1 , wherein the journal recording of the sequence of operations is performed on the one or more objects, and wherein the determining the condition comprises: determining, from the journal recording of the sequence of operations performed on the one or more objects, a reference count operat
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Saving storage space on storage systems · CPC title
Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title
for networked environments · CPC title
Management of space entities, e.g. partitions, extents, pools · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.