Method and apparatus for expanding cache size for cache array

US10261908B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10261908-B2
Application numberUS-201615387790-A
CountryUS
Kind codeB2
Filing dateDec 22, 2016
Priority dateDec 30, 2015
Publication dateApr 16, 2019
Grant dateApr 16, 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.

There is provided a method and apparatus of expanding capacity for a cache array. The method includes in response to detecting that a first new cache disk is to be added to a first cache array, initializing the first new cache disk without disabling other cache disks in the first cache array; allocating a storage space for a cache page metadata based on a result of the initializing; storing the cache page metadata into an initialized directory logical unit number, DIR LUN; storing a copy of the cache page metadata from a memory into the DIR LUN to facilitate the first cache disk to be in a ready state; and in response to the first new cache disk being in the ready state, configuring the first new cache disk as being in an initialized state to expand the capacity of the first cache array.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of expanding a capacity of a cache array, comprising: in response to detecting that a first new cache disk is to be added to a first cache array, initializing the first new cache disk without disabling other cache disks in the first cache array; allocating a storage space for a cache page metadata based on a result of the initializing; storing the cache page metadata into an initialized directory logical unit number, DIR LUN; storing a copy of the cache page metadata from a memory into the DIR LUN to facilitate the first cache disk to be in a ready state; and in response to the first new cache disk being in the ready state, configuring the first new cache disk as being in an initialized state to expand the capacity of the first cache array; if a failure occurs in adding the first new cache disk: in response to a failure confirmation message being received by the first cache array, configuring the first cache array as being in a failure state, so that the first new cache disk can be removed from the first cache array; wherein in response to a failure confirmation message being received by the first cache array, the first cache array is configured as being in a failure state, so that the first new cache disk can be removed from the first cache array comprises: sending a failure message from the first cache array to the second cache array to indicate a failure occurring at any step of the capacity expansion of the first cache array; in response to the failure message being accepted by the second cache array, configuring the first cache array as being in the failure state to enable the first new cache disk to be removed from the first cache array; and in response to the failure message being rejected by the second cache array, configuring the first cache array as being in a waiting state to wait for the second cache array to receive the failure message, wherein, if the capacity of the second cache array is unexpanded, the second cache array rejects the failure message from the first cache array, and wherein, if the capacity of the second cache array is expanded, the second cache array receives the failure message from the first cache array. 2. The method according to claim 1 , wherein initializing the first new cache disk comprises: creating a DIR LUN and a data logical unit number, DATA LUN. 3. The method according to claim 1 , further comprising: detecting whether the first new cache disk is inserted into the first cache array; and in response to detecting that the first new cache disk is inserted into the first cache array, determining whether the first new cache disk is to be added to the first cache array. 4. The method according to claim 3 , wherein the determining whether the first new cache disk is to be added to the first cache array comprises: configuring a first count value and a second count value, wherein the first count value indicates a count value of pages that have been accessed and cached in the first cache array, and the second count value indicates a count value of pages that have been accessed but not promoted to the first cache array; and if the first count value is less than the second count value, determining that the first new cache disk is to be added into the first cache array. 5. The method according to claim 1 , wherein in response to the first new cache disk being in the ready state, determining the first new cache disk as being in an initialized state to expand the capacity of the first cache array comprises: in response to the first new cache disk being in the ready state and a second new cache disk in a second cache array also being in the ready state, expanding the capacity of the first cache array, wherein the second cache array is configured as an peer cache array of the first cache array. 6. The method according to claim 5 , wherein in response to the first new cache disk being in the ready state and the second new cache disk in the second cache array also being in the ready state, expanding the capacity of the first cache array comprises: in response to the first new cache disk being in the ready state, sending, from the first cache array to the second cache array, an indication indicating that the first new cache disk is in the ready state; and in response to the first cache array receiving from the second cache array an indication indicating that the second new cache disk is also in the ready state, configuring the first new cache disk as being in the initialized state to expand the capacity of the first cache array. 7. An apparatus for expanding a capacity of cache array, comprising: an initialization unit configured for initializing a first new cache disk in response to detecting the first new cache disk that is to be added to the first cache array, without disabling other cache disks in the first cache array; a storage space allocating unit configured for allocating a storage space for a cache page metadata based on a result of the initializing; a first writing unit configured for storing the cache page metadata into an initialized directory logical unit number, DIR LUN; a second writing unit configured for storing a copy of the cache page metadata from a memory into the DIR LUN to facilitate the first cache disk to be in a ready state; and a capacity expansion determining unit configured for configuring the first new cache disk as being in an initialized state in response to the first new cache disk being in the ready state, to expand the capacity of the first cache array; a failure detection unit configured for: if a failure occurs in adding the first new cache disk: in response to a failure confirmation message being received by the first cache array, configuring the first cache array to be a the failure state, so that the first new cache disk can be removed from the first cache array; wherein the failure detection unit comprises: a failure message sending unit configured for sending the failure message from the first cache array to the second cache array to indicate a failure occurs at any of the capacity expansion steps for the first cache array; and an identifying unit configured for in response to the failure message being received by the second cache array, configuring the first cache array as being in the failure state to enable the first new cache disk to be removed from the first cache array; and, in response to the failure message being rejected by the second cache array , configuring the first cache array as being in a waiting state to wait for the second cache array to receive the failure message, wherein if the capacity expansion of the second cache array is unexpanded, the second cache array rejects the failure message from the first cache array, and wherein, if the capacity expansion of the second cache array is expanded, the second cache array receives the failure message from the first cache array. 8. The apparatus according to claim 7 , wherein the initialization unit is configured for creating a DIR LUN and a data logical unit number, DATA LUN. 9. The apparatus according to claim 7 , further comprising: a detecting unit configured for detecting whether the first new cache disk is inserted into the first cache array; and a first judging unit configured for determining whether the first new cache disk is to be added to the first cache array, in response to detecting that the first new cache disk is inserted into the first cache array. 10. The apparatus according to claim 9 , the first judging unit comprises: a count value configuration unit configured for configuring the first count value and the second count value, wherein the first count value indicates a count value o

Assignees

Inventors

Classifications

  • Real-time · CPC title

  • Redundant storage or storage space (G06F11/2056 takes precedence) · CPC title

  • G06F3/061Primary

    Improving I/O performance · CPC title

  • Disk arrays, e.g. RAID, JBOD · CPC title

  • Data buffering arrangements · 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 US10261908B2 cover?
There is provided a method and apparatus of expanding capacity for a cache array. The method includes in response to detecting that a first new cache disk is to be added to a first cache array, initializing the first new cache disk without disabling other cache disks in the first cache array; allocating a storage space for a cache page metadata based on a result of the initializing; storing the…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/061. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 16 2019 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).