Automated initialization and configuration of virtual storage pools in software-defined storage

US10324643B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-10324643-B1
Application numberUS-201514870475-A
CountryUS
Kind codeB1
Filing dateSep 30, 2015
Priority dateSep 30, 2015
Publication dateJun 18, 2019
Grant dateJun 18, 2019

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.

A computer implemented method, a computer program product, and a system for automated virtual storage pools within a software-defined storage comprising: receiving a set of physical storage resources that is enabled to have different storage capabilities; receiving a set of applications, wherein each application of the set of applications is enabled to require different storage capabilities; finding most frequently preferred storage capabilities requirements from capabilities of the set of applications; identifying a number of virtual storage pools based on the set of applications; and clustering at least some of the set of physical storage resources into the number of identified virtual storage pools.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer implemented method for automating creation of virtual storage pools within software-defined storage, the method comprising: receiving a set of physical storage resources that is enabled to have different storage capabilities, wherein each of the physical storage resources in the set of physical storage resources with different capabilities is represented as a physical storage multi-dimensional capability vector; receiving a set of applications, wherein each application of the set of applications is enabled to require a different storage capability and is comprised of a different application type; arranging the set of applications into classes of applications according to corresponding application types and assigning a priority level to each of the classes of applications, wherein each of the applications in the set of applications enabled to have a different physical storage requirement and application type is represented, following the arranging, as a multi-dimensional application requirement vector, wherein the dimensions in the multi-dimensional application requirement vector represent corresponding physical storage requirements, application type, and associated priority level; finding most frequently preferred physical storage requirements from the multi-dimensional application requirement vectors; identifying a number of virtual storage pools based on the set of applications, wherein the virtual storage pools are represented as a virtual storage pool multi-dimensional capability vector for a grouping of the physical storage resources; clustering at least some of the set of physical storage resources into the number of identified virtual storage pools; and processing the physical storage multi-dimensional capability vector, the virtual storage pool multi-dimensional capability vector, and the multi-dimensional application requirement vector to organize the physical storage resources managed by the software-defined storage into the virtual storage pools for meeting requirements of workloads of the set of applications; wherein organizing the physical storage resources into the virtual storage pools is further implemented as a function of the priority levels assigned to the classes of applications. 2. The method of claim 1 , wherein the clustering of the virtual storage pools comprises clustering physical storage resources with similar capability vectors into virtual storage pools according to application workloads. 3. The method of claim 1 , wherein identifying the number of virtual storage pools comprises combining the classes of applications with similar multi-dimensional application requirement vectors to create a corresponding number of virtual storage pools. 4. The method of claim 1 , wherein clustering at least some of the set of physical storage resources into the virtual storage pools comprises calculating similarity between most frequently preferred physical storage requirements for the set of applications. 5. The method of claim 1 , further comprising configuring the virtual storage pools to initialize and be configured before a platform for the software-defined storage is deployed. 6. The method of claim 1 , further comprising configuring the virtual storage pools to initialize and be configured after a platform for the software-defined storage is deployed. 7. The method of claim 1 , wherein the capabilities represented in the physical storage multi-dimensional capability vector include capacity, input/output operations per second, and disaster recovery support. 8. The method of claim 1 , wherein the virtual storage pool multi-dimensional capability vector and the multi-dimensional application requirement vector each share a portion of the same dimensions as the physical storage multi-dimensional capability vector. 9. A computer program product for automating creation of virtual storage pools within software-defined storage, the computer program product comprising: a non-transitory computer-readable storage medium encoded with computer-executable program code enabling: receiving a set of physical storage resources that is enabled to have different storage capabilities, wherein each of the physical storage resources in the set of physical storage resources with different capabilities is represented as a physical storage multi-dimensional capability vector; receiving a set of applications, wherein each application of the set of applications is enabled to require a different storage capability and is comprised of a different application type; arranging the set of applications into classes of applications according to corresponding application types and assigning a priority level to each of the classes of applications, wherein each of the applications in the set of applications enabled to have a different physical storage requirement and application type is represented, following the arranging, as a multi-dimensional application requirement vector, wherein the dimensions in the multi-dimensional application requirement vector represent corresponding physical storage requirements, application type, and associated priority level finding most frequently preferred physical storage requirements from the multi-dimensional application requirement vector; identifying a number of virtual storage pools based on the set of applications, wherein the virtual storage pools are represented as a virtual storage pool multi-dimensional capability vector for a grouping of the physical storage resources; clustering at least some of the set of physical storage resources into the number of identified virtual storage pools; and processing the physical storage multi-dimensional capability vector, the virtual storage pool multi-dimensional capability vector, and the multi-dimensional application requirement vector to organize the physical storage resources managed by the software-defined storage into the virtual storage pools for meeting requirements of workloads of the set of applications; wherein organizing the physical storage resources into the virtual storage pools is further implemented as a function of the priority levels assigned to the classes of applications. 10. The computer program product of claim 9 , wherein the clustering of the virtual storage pools comprises clustering physical storage resources with similar capability vectors into virtual storage pools according to application workloads. 11. The computer program product of claim 9 , wherein identifying the number of virtual storage pools comprises combining the classes of applications with similar multi-dimensional application requirement vectors to create a corresponding number of virtual storage pools. 12. The computer program product of claim 9 , wherein clustering at least some of the set of physical storage resources into the virtual storage pools comprises calculating similarity between most frequently preferred physical storage requirements for the set of applications. 13. A system for automating creation of virtual storage pools within software-defined storage, the system comprising: a computer having a memory and a processor; computer-executable program code operating in the memory on the processor, wherein the computer-executable program code is configured to enable the processor to execute the following: receiving a set of physical storage resources that is enabled to have different storage capabilities, wherein each of the physical storage resources in the set of physical storage resources with different capabilities is represented as a physical storage multi-dimensional capability vector; receiving a set of applications, wherein each application of

Assignees

Inventors

Classifications

  • G06F3/067Primary

    Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

  • G06F3/0631Primary

    by allocating resources to storage systems · CPC title

  • Management of space entities, e.g. partitions, extents, pools · CPC title

  • by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device · CPC title

  • Improving I/O performance · 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 US10324643B1 cover?
A computer implemented method, a computer program product, and a system for automated virtual storage pools within a software-defined storage comprising: receiving a set of physical storage resources that is enabled to have different storage capabilities; receiving a set of applications, wherein each application of the set of applications is enabled to require different storage capabilities; fi…
Who is the assignee on this patent?
Emc Corp, Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/067. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 18 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).