Layered clustered scale-out storage system

US10929018B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10929018-B2
Application numberUS-201916577794-A
CountryUS
Kind codeB2
Filing dateSep 20, 2019
Priority dateMar 17, 2017
Publication dateFeb 23, 2021
Grant dateFeb 23, 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 mega cluster storage system includes clusters of multiple storage modules. Each module is able to access a portion of the data within the mega cluster and serves as a proxy in order for another storage module to access the remaining portion of the data. A cluster is assigned to a unique cluster volume and all the data within the cluster volume is accessible by all of the modules within the cluster. Each host connection to the mega cluster is associated with a particular cluster volume. A module that receives a host I/O request determines whether the I/O request should be satisfied by a module within its own cluster or be satisfied by a module within a different cluster. The module may forward the I/O request to a module within a different cluster as indicated by a distribution data structure that is allocated and stored within each storage module.

First claim

Opening claim text (preview).

What is claimed is: 1. A layered clustered scale-out storage system comprising: a first cluster comprising a plurality of storage modules; a second cluster comprising a plurality of storage modules; a first storage module, within the first cluster, comprising a processor that is configured to: receive an I/O read request and a logical address associated with requested data of the I/O read request from a requesting host computer; determine that the requested data is not located within any of a plurality of storage modules also within the first cluster; determine that the requested data is located within the second cluster; a second storage module, within the second cluster, comprising a processor that is configured to: receive the I/O read request from the processor of the first storage module; determine that the requested data is stored within a third storage module also within the second cluster; a third storage module, within the second cluster, comprising a processor that is configured to: receive the I/O read request from the processor of the second storage module; access the requested data; and returns the requested data to the requesting host computer. 2. The system of claim 1 , wherein the processor of the second storage module is further configured to: query a distribution data structure stored within each of the plurality of storage modules utilizing the logical address as a query input; determine from the distribution data structure query which storage device within the third storage module stores the requested data; and determine from the distribution data structure query a physical address of the storage device within the third storage module where the requested data is stored. 3. The system of claim 1 , wherein the second storage module is connected to the third storage module by a local node interface. 4. The system of claim 1 , wherein the first storage module is connected to the second storage module by a remote node interface. 5. The system of claim 1 , wherein the first storage module comprises a host interface that is communicatively connected to the host computer. 6. The system of claim 1 , wherein the first storage module comprises a remote node interface and wherein the processor of the first storage module sends the I/O read request to the second storage module across the remote node interface. 7. The system of claim 1 , wherein the second storage module is connected to the third storage module by a peripheral connection. 8. The system of claim 1 , wherein the first storage module is connected to the second storage module by a network connection. 9. The system of claim 2 , wherein each of the plurality of storage modules are configured to: populate the distribution data structure, upon writing of data associated with an I/O write request thereto, with a logical address that is associated with the I/O write request, with a storage module identifier, with a storage device identifier, and with a physical address of the storage device; and allocate the distribution data structure to each of the other plurality of storage modules. 10. A layered clustered scale-out storage system comprising: a first cluster comprising a plurality of storage modules; a second cluster comprising a plurality of storage modules; a first storage module, within the first cluster, comprising a processor that is configured to: receives an I/O read request and a logical address associated with requested data of the I/O read request from a requesting host computer; determines that the requested data is not located within any of a plurality of storage modules also within the first cluster; determines that the requested data is located within the second cluster; a second storage module, within the second cluster, comprising a processor that is configured to: receives the I/O read request from the processor of the first storage module; determines that the requested data is stored within a third storage module also within the second cluster; directly accesses the requested data within the third storage module bypassing a processor and operating system of the third storage module; and returns the requested data to the requesting host computer. 11. The system of claim 10 , wherein the processor of the first storage module is further configured to determine that the second cluster is assigned to the requesting host computer. 12. The system of claim 10 , wherein the processor of the second storage module is further configured to: query a distribution data structure stored within the second storage module which to determine which storage device within the third storage module stores the requested data; and query the distribution data structure to determine a physical address where the requested data is stored in the storage device within the third storage module. 13. The system of claim 10 , wherein the second storage module is connected to the third storage module by a local node interface. 14. The system of claim 10 , wherein the first storage module is connected to the second storage module by a remote node interface. 15. The system of claim 12 , wherein each of the plurality of storage modules are configured to: populate the distribution data structure, upon writing of data associated with an I/O write request thereto, with a logical address that is associated with the I/O write request, with a storage module identifier, with a storage device identifier, and with a physical address of the storage device; and allocate the distribution data structure to each of the other plurality of storage modules. 16. A computer program product for satisfying an input output (I/O) read request with a layered clustered scale-out storage system, the computer program product comprising computer readable storage mediums having program instructions embodied therewith, the program instructions are readable to cause: a processor of a first storage module to receive an I/O read request and a logical address associated with requested data of the I/O read request from a requesting host computer; the processor of the first storage module to determine that the requested data is not located within any of a plurality of storage modules within a same first cluster as that of the first storage module; the processor of the first storage module to determine that the requested data is located within a second cluster that comprises a plurality of storage modules; the processor of the first storage module to forward the I/O read request to a second storage module that is comprised within the second cluster; the processor of the second storage module to determine that the requested data is stored within a third storage module that is comprised the second cluster; the processor of the second storage module to directly access the requested data within the third storage module bypassing a processor and operating system of the third storage module; and the processor of the second storage module to return the requested data to the requesting host computer. 17. The computer program product of claim 16 , wherein program instructions are readable to cause: the processor of the first storage module to determine that the second cluster is assigned to the requesting host computer. 18. The computer program product of claim 16 , wherein program instructions are readable to cause: the processor of the second storage module to query a distribution data structure stored within the second storage module to determine which storage device within the third storage

Assignees

Inventors

Classifications

  • G06F3/0604Primary

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

  • Controller construction arrangements · CPC title

  • by changing the path, e.g. traffic rerouting, path reconfiguration · CPC title

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · 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 US10929018B2 cover?
A mega cluster storage system includes clusters of multiple storage modules. Each module is able to access a portion of the data within the mega cluster and serves as a proxy in order for another storage module to access the remaining portion of the data. A cluster is assigned to a unique cluster volume and all the data within the cluster volume is accessible by all of the modules within the cl…
Who is the assignee on this patent?
IBM
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 Feb 23 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 11 related publications on this page (citations in our corpus or others sharing the same primary CPC).