IP Library Granted Patent US 10,482,019
Granted Patent B2
US 10,482,019 · App. 15/776,135 · Granted Nov 19, 2019

Storage apparatus and control method thereof

Inventors: Taku Adachi (Tokyo, JP); Hisaharu Takeuchi (Tokyo, JP)
Assignee: Hitachi, Ltd.
G06F12/0862G06N20/00G06F2212/1021G06F2212/6022G06F2212/6026
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,482,019
App. No.
15/776,135
Granted
Nov 19, 2019
Kind
B2
Abstract

Proposed are a storage apparatus and a control method thereof capable of improving the response performance to a read access of various access patterns. When data to be read is not retained in a data buffer memory, upon staging the data to be read, a processor performs sequential learning of respectively observing an access pattern in units of blocks of a predetermined size and an access pattern in units of slots configured from a plurality of the blocks regarding an access pattern of the read access from the host apparatus, and expands a data range to be staged as needed based on a learning result of the sequential learning.

Claims (53)

1. A storage apparatus which provides, to a host apparatus, a storage area for reading or writing data, comprising:

one or more storage devices which provide the storage area;

a plurality of processors, each of which reads data to be read from the storage area according to a read request given from the host apparatus; and

a data buffer memory which temporarily retains the data read from the storage area,

wherein each processor of the plurality of processors:

when the data to be read is not retained in the data buffer memory, executes staging of reading the data to be read from the storage area into the data buffer memory, and sends the staged data to be read to the host apparatus; and

upon staging the data to be read, performs sequential learning of respectively observing an access pattern in units of blocks of a predetermined size and an access pattern in units of slots configured from a plurality of the blocks regarding an access pattern of the read access from the host apparatus, and expands a data range to be staged as needed based on a learning result of the sequential learning; and

wherein each processor shares first access observation information as a learning result of the sequential learning in units of the blocks and second access observation information as a learning result of the sequential learning in units of the slots, updates the first access observation information based on the learning result of the sequential learning in units of the blocks, and updates the second access observation information based on the learning result of the sequential learning in units of the slots.

2. The storage apparatus according to claim 1 ,

wherein each processor expands the data range to be staged upon detecting, as the access pattern of the read access, continuity of an access destination of the read access in the block units or the slot units.

3. The storage apparatus according to claim 2 ,

wherein each processor:

learns, for each access area configured from a plurality of the slots, an access pattern of the read access to the access area in units of the slots; and

even when continuity of an access destination of the read access in the block units or the slot units could not be detected as the access pattern of the read access, expands the data range to be staged when a count of the read access to the access area exceeds a threshold.

4. The storage apparatus according to claim 3 ,

wherein each processor expands the data range to be staged to all of the corresponding slots, or to a back-end block of the corresponding slot, based on a learning result of the sequential learning in units of the blocks and a learning result of the sequential learning in units of the slots.

5. The storage apparatus according to claim 1 ,

wherein the first access observation information is local access observation information and the learning result of the sequential learning in units of the slots comprises observation result of the access pattern of a most recent read access to a corresponding slot obtained by observing a previous read access and a current read access to the corresponding slot.

6. The storage apparatus according to claim 1 , further comprising:

a shared memory which is shared by each of the processors,

wherein the first access observation information and the second access observation information are stored in the shared memory.

7. The storage apparatus according to claim 1 ,

wherein each of the processors:

shares the second access observation information of a predetermined number of the access areas in which a count of the read access is high among the access areas configured from a plurality of the slots; and

when the read access is designating the access area without the second access observation information as an access destination, replaces the second access observation information corresponding to the access area with a lowest access count among the second access observation information with the second access observation information corresponding to the access area of the access destination of the read access.

8. The storage apparatus according to claim 5 ,

wherein the second access observation information is broad-range access observation information to be used for observing the access pattern of the read access to the corresponding access area in the slot units.

9. A control method of a storage apparatus which provides, to a host apparatus, a storage area for reading or writing data,

wherein the storage apparatus includes:

one or more storage devices which provide the storage area;

plurality of processors each of which reads data to be read from the storage area according to a read request given from the host apparatus; and

a data buffer memory which temporarily retains the data read from the storage area,

wherein the control method comprises:

a first step of each processor of the plurality of processors, when the data to be read is not retained in the data buffer memory, executing staging of reading the data to be read from the storage area into the data buffer memory, sending the staged data to be read to the host apparatus, and, upon staging the data to be read, performing sequential learning of respectively observing an access pattern in units of blocks of a predetermined size and an access pattern in units of slots configured from a plurality of the blocks regarding an access pattern of the read access from the host apparatus; and

a second step of each processor expanding a data range to be staged as needed based on a learning result of the sequential learning; and

wherein, in the first step, each of the processors shares first access observation information as a learning result of the sequential learning in units of the blocks and second access observation information as a learning result of the sequential learning in units of the slots, updates the first access observation information based on the learning result of the sequential learning in units of the blocks, and updates the second access observation information based on the learning result of the sequential learning in units of the slots.

10. The control method of a storage apparatus according to claim 9 ,

wherein, in the second step, each processor expands the data range to be staged upon detecting, as the access pattern of the read access, continuity of an access destination of the read access in the block units or the slot units.

11. The control method of a storage apparatus according to claim 10 ,

wherein, in the first step, each processor learns, for each access area configured from a plurality of the slots, an access pattern of the read access to the access area in units of the slots; and

wherein, in the second step, each processor, even when continuity of an access destination of the read access in the block units or the slot units could not be detected as the access pattern of the read access, expands the data range to be staged when a count of the read access to the access area exceeds a threshold.

12. The control method of a storage apparatus according to claim 11 ,

wherein, in the second step, each processor expands the data range to be staged to all of the corresponding slots, or to a back-end block of the corresponding slot, based on a learning result of the sequential learning in units of the blocks and a learning result of the sequential learning in units of the slots.

13. The control method of a storage apparatus according to claim 9 ,

wherein the storage apparatus further includes a shared memory which is shared by each of the processors, and

wherein the first access observation information and the second access observation information are stored in the shared memory.

14. The control method of a storage apparatus according to claim 9 ,

wherein each of the processors shares the second access observation information of a predetermined number of the access areas in which a count of the read access is high among the access areas configured from a plurality of the slots; and

wherein, in the first step, each of the processors, when the read access is designating the access area without the second access observation information as an access destination, replaces the second access observation information corresponding to the access area with a lowest access count among the second access observation information with the second access observation information corresponding to the access area of the access destination of the read access.

15. The control method of a storage apparatus according to claim 9 ,

wherein the first access observation information is local access observation information and the learning result of the sequential learning in units of the slots comprises observation result of the access pattern of a most recent read access to a corresponding slot obtained by observing a previous read access and a current read access to the corresponding slot.

16. The control method of a storage apparatus according to claim 15 ,

wherein the second access observation information is broad-range access observation information to be used for observing the access pattern of the read access to the corresponding access area in the slot units.

Assignments (2)
COMPANY SPLIT Recorded Aug 20, 2024
From: HITACHI, LTD.
To: HITACHI VANTARA, LTD.
Reel/Frame 069518/0761 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2018
From: ADACHI, TAKU; TAKEUCHI, HISAHARU
To: HITACHI, LTD.
Reel/Frame 045804/0246 →
Continuity (1)
Related Publication 20180329824A1 · Nov 15, 2018