Methods, devices, and a computer program product for processing an access request and updating a storage system

US11269548B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11269548-B2
Application numberUS-201916508220-A
CountryUS
Kind codeB2
Filing dateJul 10, 2019
Priority dateFeb 1, 2019
Publication dateMar 8, 2022
Grant dateMar 8, 2022

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.

Techniques for processing an access request and updating a storage system are provided. For instance, a method comprises: receiving an access request for an object associated with a storage system, the storage system including a plurality of physical nodes, each of the plurality of physical nodes including at least one set of virtual units, each set of virtual units including at least one virtual unit; determining, from a plurality of sets of virtual units included in the plurality of physical nodes of the storage system, a target set of virtual units associated with the object; and determining, from the target set of virtual units, a target virtual unit corresponding to the object. With the technical solution of the present disclosure, not only a set of virtual units on a physical node may be easily split and merged, but also huge computing resources that need to be allocated may be saved, so better user experience may be brought about at a lower cost.

First claim

Opening claim text (preview).

We claim: 1. A method, comprising: receiving, by a system comprising a processor, an access request for an object associated with a storage system, the storage system including a plurality of physical nodes, each of the plurality of physical nodes including at least one set of virtual units, each set of virtual units including at least one virtual unit; determining, from a plurality of sets of virtual units included in the plurality of physical nodes of the storage system, a target set of virtual units associated with the object based on performing a first hash on a first identifier of the object, the target set of virtual units being stored on a first node of the plurality of physical nodes; determining, from the target set of virtual units, a target virtual unit of the first node corresponding to the object, based on performing a second hash on the first identifier of the object and a second identifier of the target set of virtual units; and in response to adding a second node to the storage system, moving the target set of virtual units to the second node, wherein an updated first hash identifies the target set of virtual units and the second node, and wherein the second hash remains constant to identify the target virtual unit of the target set of virtual units on the second node. 2. The method according to claim 1 , wherein the determining the target set of virtual units comprises: determining the first identifier of the object; determining a plurality of set identifiers of the plurality of sets of virtual units in the storage system; determining, from the plurality of set identifiers, a set identifier associated with the first identifier of the object; and determining a set of virtual units identified by the associated set identifier as the target set of virtual units. 3. The method according to claim 1 , wherein the determining the target virtual unit comprises: determining a third identifier of the object; determining at least one virtual unit identifier of at least one virtual unit in the target set of virtual units; determining, from the at least one virtual unit identifier, a virtual unit identifier corresponding to the third identifier of the object; and determining a virtual unit identified by the virtual unit identifier as the target virtual unit. 4. The method according to claim 1 , further comprising: allocating, to the target set of virtual units, a computing resource, for processing the access request, the computing resource being shared by virtual units in the target set of virtual units. 5. The method according to claim 4 , wherein the allocating the computing resource comprises: determining a maximum computing resource supported by a physical node that includes the target set of virtual units; and evenly allocating the maximum computing resource to sets of virtual units included in the physical node. 6. The method according to claim 1 , further comprising: in response to the access request being a write request, writing the object to the target virtual unit. 7. The method according to claim 1 , further comprising: in response to the access request being a read request, reading the object from the target virtual unit. 8. A device, comprising: at least one processing unit; at least one memory coupled to the at least one processing unit and storing instructions to be executed by the at least one processing unit, the instructions, when being executed by the at least one processing unit, causing the device to perform acts comprising: receiving an access request for an object associated with a storage system, the storage system including a plurality of physical nodes, each of the plurality of physical nodes including at least one set of virtual units, each set of virtual units including at least one virtual unit; determining, from a plurality of sets of virtual units included in the plurality of physical nodes of the storage system, a target set of virtual units associated with the object, based on performing a first hash on a first identifier of the object; determining, from the target set of virtual units, a target virtual unit corresponding to the object, based on performing a second hash on the first identifier of the object and a second identifier of the target set of virtual units; and in response to adding a first node to the storage system, moving the target set of virtual units to the first node, wherein an updated first hash identifies the target set of virtual units and the first node, and wherein the second hash is unalterable and is used to identify the target virtual unit of the target set of virtual units on the second node. 9. The device according to claim 8 , wherein the determining the target set of virtual units comprises: determining the first identifier of the object; determining a plurality of set identifiers of the plurality of sets of virtual units in the storage system; determining, from the plurality of set identifiers, a set identifier associated with the first identifier of the object; and determining a set of virtual units identified by the associated set identifier as the target set of virtual units. 10. The device according to claim 8 , wherein the determining the target virtual unit comprises: determining a third identifier of the object; determining at least one virtual unit identifier of at least one virtual unit in the target set of virtual units; determining, from the at least one virtual unit identifier, a virtual unit identifier corresponding to the third identifier of the object; and determining a virtual unit identified by the virtual unit identifier as the target virtual unit. 11. The device according to claim 8 , wherein the acts further comprise: allocating, to the target set of virtual units, a computing resource, for processing the access request, the computing resource being shared by virtual units in the target set of virtual units. 12. The device according to claim 11 , wherein the allocating the computing resource comprises: determining a maximum computing resource supported by a physical node that includes the target set of virtual units. 13. The device according to claim 12 , wherein the allocating the computing resource further comprises: evenly allocating the maximum computing resource to sets of virtual units included in the physical node. 14. The device according to claim 8 , wherein the acts further comprise: in response to the access request being a write request, writing the object to the target virtual unit. 15. The device according to claim 8 , wherein the acts further comprise: in response to the access request being a read request, reading the object from the target virtual unit. 16. A non-transitory computer-readable medium comprising instructions that, in response to execution, cause a system comprising a processor to perform operations, comprising: receiving an access request for an object associated with a storage system, the storage system comprising physical nodes, comprising respective sets of virtual units, each comprising at least one virtual unit; determining, from sets of the respective sets of virtual units, a target set of virtual units associated with the object, based on performing a first hash on a first identifier of the object; and determining, from the target set of virtual units, a target virtual unit corresponding to the object, based on performing a second hash on the first identifier of the object and a second identifier of the target set of virtual units; and in response to adding a first node to the storage system, moving the target s

Assignees

Inventors

Classifications

  • at device level, e.g. emulation of a storage device or system · CPC title

  • Single storage device · CPC title

  • Hash-based (content-based indexing of textual data G06F16/31) · CPC title

  • G06F3/0659Primary

    Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title

  • the resources being hardware resources other than CPUs, Servers and Terminals · 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 US11269548B2 cover?
Techniques for processing an access request and updating a storage system are provided. For instance, a method comprises: receiving an access request for an object associated with a storage system, the storage system including a plurality of physical nodes, each of the plurality of physical nodes including at least one set of virtual units, each set of virtual units including at least one virtu…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/0659. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 08 2022 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).