Storage system interface

US11199969B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11199969-B2
Application numberUS-201916683561-A
CountryUS
Kind codeB2
Filing dateNov 14, 2019
Priority dateDec 28, 2015
Publication dateDec 14, 2021
Grant dateDec 14, 2021

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 request to generate a storage system model is received. The storage system model represents at least a portion of a storage system. In response to receiving the request, a storage system interface configuration is loaded. The storage system interface configuration comprises an attribute of an entity model. The attribute corresponds to an attribute of a storage system entity of the storage system. Further in response to receiving the request, the entity model is identified as representing the storage system entity. In response to identifying the entity model as representing the storage system entity, the entity model is instantiated.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: instantiating a first entity model representing a storage entity of a storage system at a first level of abstraction and a second entity model representing the storage entity at a second level of abstraction that is model specific based upon the first entity model; and loading attribute values of the storage entity into the first entity model and the second entity model to generate a system model where the first entity model is a parent to the second entity model, wherein the first entity model comprises a first attribute and first operation implementation common to storage entities having a same type as the storage entity and the second entity model comprises a second attribute specific to storage entities of a same type and model as the storage entity, wherein loading the attribute values comprises: utilizing the second attribute of the second entity model to override the first attribute of the first entity model; and passing control from the second entity model to the first entity model to implement an operation request using attributes and operation implementations of the first entity model and using the second attribute of the second entity model used to override the first attribute of the first entity model. 2. The method of claim 1 , wherein the first entity model and the second entity model are arranged in a hierarchy within the system model, wherein the method comprises: traversing the hierarchy to identify functionality implemented by the first entity model that is not implemented by the second entity model; and in response to the first entity model being the parent of the second entity model, copying the functionality from the first entity model into the second entity model. 3. The method of claim 1 , wherein the first entity model and the second entity model are arranged in a hierarchy within the system model, wherein the method comprises: traversing up the hierarchy with a complier during compilation to identify the first entity model as implementing a method defined by the first entity model; and in response to determining that first entity model is the parent of the second entity model and that the second entity model does not implement the method, copying, by the complier, the method from the first entity model into the second entity model. 4. The method of claim 1 , comprising: generating the system model utilizing configuration data specifying whether the attribute values are loaded on demand into entity models, which storage entities of the storage system are initially included within the system model, and mappings between the storage entities and the entity models. 5. The method of claim 1 , comprising: in response to the first entity model being represented as a struct, creating a new struct; and instantiating the first entity model using the new struct. 6. The method of claim 1 , comprising: querying the storage entity for a third attribute value corresponding to a third attribute within the first entity model. 7. The method of claim 1 , comprising: generating a partial system model based upon a subset of storage entities of the storage system; and in response to the storage entity not being part of the subset of storage entities used to generate the partial system model, loading the attribute values of the storage entity into the first entity model and the second entity model to update the partial system model to generate the system model to take into account the storage entity. 8. The method of claim 1 , comprising: evaluating an interface configuration to identify an on-demand attribute and an instantiation attribute of the first entity. 9. The method of claim 1 , comprising: in response to the first entity model being represented as a class, creating an instance of an object corresponding to the class; and instantiating the first entity model using the object corresponding to the class. 10. The method of claim 1 , comprising: determining whether an attribute value of the storage entity has been loaded based upon whether at least one of the first entity model or the second model are being instantiated; and in response to the attribute value of the storage entity not being loaded, loading the attribute value of the storage entity into at least one of the first entity model or the second entity model. 11. The method of claim 8 , comprising: obtaining a value for the on-demand attribute of the storage entity based upon a request for the storage entity. 12. The method of claim 1 , comprising: determining whether an attribute value of the storage entity has been loaded based upon whether a variable corresponding to the attribute value has been initialized and whether the variable has been set to a predetermined default value; and in response to the attribute value of the storage entity not being loaded, loading the attribute value of the storage entity into at least one of the first entity model or the second entity model. 13. The method of claim 1 , wherein the first entity model and the second entity model are arranged in a hierarchy within the system model. 14. The method of claim 13 , comprising: selecting and traversing the hierarchy to an instance of the second entity model to determine whether the second entity model implements a requested operation. 15. The method of claim 14 , comprising: utilizing the second entity model to perform the requested operation based upon a determination that the second entity model implements the requested operation. 16. The method of claim 14 , comprising: determining whether an instance of the first entity model implements the requested operation based upon a determination that the second entity model does not implement the requested operation. 17. The method of claim 1 , comprising: loading an interface configuration based upon a request to connect to the storage system, wherein the request comprises a storage system identifier of the storage system. 18. The method of claim 1 , comprising: loading an interface configuration based upon a request to instantiate the interface configuration. 19. A non-transitory machine readable medium comprising instructions for performing a method, which when executed by a machine, causes the machine to: instantiate a first entity model representing a storage entity of a storage system at a first level of abstraction and a second entity model representing the storage entity at a second level of abstraction that is model specific based upon the first entity model; and load attribute values of the storage entity into the first entity model and the second entity model to generate a system model where the first entity model is a parent to the second entity model, wherein the first entity model comprises a first attribute and first operation implementation common to storage entities having a same type as the storage entity and the second entity model comprises a second attribute specific to storage entities of a same type and model as the storage entity, comprising: overriding the first attribute with the second attribute; and passing control from the second entity model to the first entity model to implement an operation request using attributes and operation implementations of the first entity model and using the second attribute of the second entity model used to override the first attribute of the first entity model. 20. A computing device comprising: a memory comprising machine executable code for performing a method; and a pr

Assignees

Inventors

Classifications

  • G06F3/0604Primary

    Improving or facilitating administration, e.g. storage management · CPC title

  • by allocating resources to storage systems · CPC title

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

  • G06F3/0653Primary

    Monitoring storage devices or systems · CPC title

  • Management of space entities, e.g. partitions, extents, pools · 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 US11199969B2 cover?
A request to generate a storage system model is received. The storage system model represents at least a portion of a storage system. In response to receiving the request, a storage system interface configuration is loaded. The storage system interface configuration comprises an attribute of an entity model. The attribute corresponds to an attribute of a storage system entity of the storage sys…
Who is the assignee on this patent?
Netapp Inc
What technology area does this patent fall under?
Primary CPC classification G06F3/0604. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 14 2021 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).