Data storage system utilizing proxy device for storage operations
US-9298715-B2 · Mar 29, 2016 · US
US11016820B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11016820-B2 |
| Application number | US-201314010275-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 26, 2013 |
| Priority date | Aug 26, 2013 |
| Publication date | May 25, 2021 |
| Grant date | May 25, 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.
Embodiments presented herein techniques for balancing a multidimensional set of resources of different types within a distributed resources system. Each host computer providing the resources publishes a status on current resource usage by guest clients. Upon identifying a local imbalance, the host computer determines a source workload to migrate to or from the resources container to minimize the variance in resource usage. Additionally, when placing a new resource workload, the host computer selects a resources container that minimizes the variance to further balance resource usage.
Opening claim text (preview).
We claim: 1. A computer-implemented method for placing a virtual disk component of a virtual disk in a distributed storage system having a plurality of physical computing devices, the method comprising: retrieving a current usage of each physical storage device of each group of physical storage devices in a plurality of groups of physical storage devices, the plurality of groups of physical storage devices constituting a pool of groups of storage, wherein each group of physical storage devices is housed in one of the plurality of physical computing devices and each physical computing device has a hypervisor running at least one virtual machine with a virtual disk, and wherein the virtual disk is configured as a pair of mirrored virtual drives, each mirrored virtual drive has a plurality of virtual disk components that are virtual stripes of the mirrored virtual drive, each virtual disk component of the virtual disk is mappable to any one of the groups in the pool of storage, and each virtual disk component to be placed has an associated workload that affects usages of physical storage devices; identifying candidate groups of physical storage devices among the plurality of groups of physical storage devices based on the current usage of each physical storage device, wherein each candidate group of physical storage devices has a current variance of the current usages of its physical storage devices; for each candidate group of physical storage devices, determining an expected increased or reduced variance of usage that would result if one of the virtual disk components of the virtual disk with its associated workload were mapped to the candidate group of physical storage devices; and mapping the one virtual disk component of the virtual disk to one of the candidate groups of physical storage devices having an expected reduced variance over the current variance. 2. The computer-implemented method of claim 1 , wherein the distributed storage system is a software-defined storage area network. 3. The computer-implemented method of claim 2 , wherein each physical computing device publishes the current usages to other physical computing devices in the software-defined storage area network. 4. The computer-implemented method of claim 1 , wherein the one of at least one candidate group of physical storage devices with the expected reduced variance is selected at random. 5. The computer-implemented method of claim 1 , further comprising, publishing the usage of the candidate group of physical storage devices to which the virtual disk component of the virtual disk is mapped. 6. The computer-implemented method of claim 1 , wherein identifying the candidate groups of physical storage devices comprises: measuring usage caused by the workload for each physical storage device in the group of physical storage devices; and determining the candidate group of physical storage devices capable of handling the associated workload based on the measurements of each of the groups of physical storage devices. 7. A non-transitory computer-readable storage medium storing instructions, which, when executed on a processor, performs an operation for placing a virtual disk component of a virtual disk in a distributed storage system having a plurality of physical computing devices, the operation comprising: retrieving current usage of each physical storage device of each group of physical storage devices in a plurality of groups of physical storage devices, the plurality of groups of physical storage devices constituting a pool of groups of storage, wherein each group of physical storage devices is housed in one physical computing device of the plurality of physical computing devices and each physical computing device has a hypervisor running at least one virtual machine with a virtual disk; and wherein the virtual disk is configured as a pair of mirrored virtual drives, each mirrored virtual drive comprising a plurality of virtual disk components that are virtual stripes of the mirrored virtual drive, each virtual disk component of the virtual disk is mappable to any one of the groups of physical storage devices in the physical computing devices of the distributed storage system, each virtual disk component to be placed having an associated workload that affects usages of physical storage devices; identifying candidate groups of physical storage devices among the plurality of groups of physical storage devices based on the current usage of each physical storage device, wherein each candidate group of physical storage devices has a current variance of the current usages of its physical storage devices; for each candidate group of physical storage devices, determining an expected increased or reduced variance of usage that would result if one of the virtual disk components of the virtual disk with its associated workload were mapped to the candidate group of physical storage devices; and mapping the one virtual disk component of the virtual disk to one of the candidate groups of physical storage devices having an expected reduced variance over the current variance. 8. The computer-readable storage medium of claim 7 , wherein the distributed storage system is a software-defined storage area network. 9. The computer-readable storage medium of claim 8 , wherein each physical computing device publishes the usage to other physical computing devices in the software-defined storage area network. 10. The computer-readable storage medium of claim 7 , wherein the one of at least one candidate group of physical storage devices with the expected reduced variance is selected at random. 11. The computer-readable storage medium of claim 7 , wherein the operation further comprises publishing to each physical computing device the usage of the candidate group of physical storage devices to which the virtual disk component of the virtual disk is mapped. 12. The computer-readable storage medium of claim 7 , wherein identifying the candidate groups of physical storage devices comprises: measuring usage caused by the workload for each type of physical storage device in the group of physical storage devices; and determining the candidate groups of physical storage devices capable of handling the associated workload based on the measurements of each of the groups of physical storage devices. 13. A system comprising: a processor and a memory hosting an application, which, when executed on the processor, performs an operation for placing a virtual disk component of a virtual disk in a distributed storage system having a plurality of physical computing devices, the operation comprising: retrieving current usage of each physical storage device of each group of physical storage devices in a plurality of groups of physical storage devices, the plurality of groups of physical storage devices constituting a pool of groups of storage, wherein each group of physical storage devices is housed in one physical computing device of the plurality of physical computing devices and each physical computing device has a hypervisor running at least one virtual machine with a virtual disk, and wherein the virtual disk is configured as a pair of mirrored virtual drives, each mirrored virtual drive comprising a plurality of virtual disk components that are virtual stripes of the mirrored virtual drive, each virtual disk component of the virtual disk is mappable to any one of the groups in the pool of storage, each virtual disk component to be placed having an associated workload that affects usages of physical storage devices; identifying candidate groups of physical storage devices among the plurality of groups of physical sto
the resource being the memory · CPC title
Techniques for rebalancing the load in a distributed system · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.