IP Library Granted Patent US 9,454,317
Granted Patent B2
US 9,454,317 · App. 14/476,108 · Granted Sep 27, 2016

Tiered storage system, storage controller and method of substituting data transfer between tiers

Inventor: Kouta Ishizaki (Kodaira Tokyo, JP)
Assignees: Kabushiki Kaisha Toshiba; Toshiba Solutions Corporation
G06F3/0619G06F3/0665G06F3/0689G06F12/0848G06F12/0868G06F12/0888G06F12/0895
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 9,454,317
App. No.
14/476,108
Granted
Sep 27, 2016
Kind
B2
Abstract

According to one embodiment, there is provided a storage controller for use in a tiered storage system. The tiered storage system includes a first storage device having the first physical volume of a first tier, and a second storage device having the second physical volume of a second tier lower than the first tier. The cache controller of the storage controller divides the storage area of the first physical volume into a set of data areas and a set of cache areas. The cache controller changes the first cache area of the first physical volume to a first data area, when first data to be transferred from the second physical volume to the first physical volume is also stored in the first cache area.

Claims (76)

1. A storage controller in a tiered storage system comprising a first storage device including a first physical volume, and a second storage device including a second physical volume, having a lower access speed than the first storage device, and having a greater storage capacity than the first storage device, the first and second physical volumes each comprising a set of storage areas having a certain size, the storage controller processing an input/output request from a host computer, the storage controller comprising:

a logical volume management unit which provides the host computer with a logical volume logically constructed using the first and second physical volumes;

a tier management unit which manages the first physical volume as a first tier and the second physical volume as a second tier lower than the first tier;

a cache controller which defines part of the set of storage areas of the first physical volume as a set of data areas for storing data, and which defines another part of the set of storage areas of the first physical volume as a set of cache areas for storing cache data, and which causes the set of cache areas to function as a cache for the tiered storage system; and

an input/output controller which writes data designated by a write request from the host computer to any one of a data area of the first physical volume and a storage area of the second physical volume, and which reads data designated by a read request from the host computer from any one of a data area of the first physical volume and a storage area of the second physical volume when the data designated by the read request is not in the cache,

wherein:

the cache controller stores, as cache data, the read data in a cache area of the first physical volume when the read request designates a data read from the second physical volume;

the tier management unit determines storage areas storing data to be transferred from the second physical volume to the first physical volume, based on a descending order of access frequencies of the storage areas of the second physical volume;

the cache controller redefines, as a first data area, a first storage area of the first physical volume defined as a first cache area, instead of transferring first data stored in a second storage area of the second physical volume to the first physical volume, when the determined storage areas include the second storage area and when the first data is also stored as first cache data in the first cache area; and

the tier management unit transfers the first data to a free data area of the first physical volume when the determined storage areas include the second storage area and when the first data is not stored in the cache.

2. The storage controller of claim 1 , wherein the cache controller

suppresses caching of the read data in a cache area of the first physical volume when the read request designates a data read from the first physical volume.

3. The storage controller of claim 1 , wherein:

the cache controller selects storage areas corresponding to a first size from storage areas of the first physical volume defined as data areas, based on an ascending order of access frequencies of the storage areas of the first physical volume defined as the data areas, when a size of the cache is reduced from a target size by the first size; and

the cache controller redefines the selected storage areas as cache areas.

4. The storage controller of claim 1 , wherein:

the cache controller selects storage areas corresponding to a second size from storage areas of the first physical volume defined as cache areas, based on an ascending order of access frequencies of the storage areas of the first physical volume defined as the cache areas, when the first physical volume is short of data areas corresponding to the second size; and

the cache controller redefines the selected storage areas as data areas.

5. The storage controller of claim 1 , wherein:

the cache controller

selects a second cache area which newly stores third data as third cache data in accordance with a write request from the host computer after storing, as second cache data, second data read from the second physical volume, when a cache synchronization request is received, the cache synchronization request being a request of cache synchronization of copying data stored in a cache area to the second physical volume;

the cache controller determines whether the cache synchronization is needed, based on an access frequency of a third storage area defined as the selected second cache area;

the cache controller replaces the second data in the second physical volume with the third data when the cache synchronization is needed; and

the cache controller redefines the third storage area as a data area when the cache synchronization is not needed.

6. A tiered storage system comprising:

a first storage device including a first physical volume;

a second storage device including a second physical volume, having a lower access speed than the first storage device, and having a greater storage capacity than the first storage device; and

a storage controller which processes an input/output request from a host computer,

wherein:

the first and second physical volumes each comprise a set of storage areas having a certain size; and

the storage controller comprises

a logical volume management unit which provides the host computer with a logical volume logically constructed using the first and second physical volumes;

a tier management unit which manages the first physical volume as a first tier and the second physical volume as a second tier lower than the first tier;

a cache controller which defines part of the set of storage areas of the first physical volume as a set of data areas for storing data, and which defines another part of the set of storage areas of the first physical volume as a set of cache areas for storing cache data, and which causes the set of cache areas to function as a cache for the tiered storage system; and

an input/output controller which writes data designated by a write request from the host computer to any one of a data area of the first physical volume and a storage area of the second physical volume, and which reads data designated by a read request from the host computer from any one of a data area of the first physical volume and a storage area of the second physical volume when the data designated by the read request is not in the cache,

wherein:

the cache controller stores, as cache data, the read data in a cache area of the first physical volume when the read request designates a data read from the second physical volume;

the tier management unit determines storage areas storing data to be transferred from the second physical volume to the first physical volume, based on a descending order of access frequencies of the storage areas of the second physical volume;

the cache controller redefines, as a first data area, a first storage area of the first physical volume defined as a first cache area, instead of transferring first data stored in a second storage area of the second physical volume to the first physical volume, when the determined storage areas include the second storage area and when the first data is also stored as first cache data in the first cache area; and

the tier management unit transfers the first data to a free data area of the first physical volume when the determined storage areas include the second storage area and when the first data is not stored in the cache.

7. The tiered storage system of claim 6 , wherein the cache controller

suppresses caching of the read data in a cache area of the first physical volume when the read request designates a data read from the first physical volume.

8. The tiered storage system of claim 6 , wherein:

the cache controller selects storage areas corresponding to a first size from storage areas of the first physical volume defined as data areas, based on an ascending order of access frequencies of the storage areas of the first physical volume defined as the data areas, when a size of the cache is reduced from a target size by the first size; and

the cache controller redefines the selected storage areas as cache areas.

9. The tiered storage system of claim 6 , wherein;

the cache controller selects storage areas corresponding to a second size from storage areas of the first physical volume defined as cache areas, based on an ascending order of access frequencies of the storage areas of the first physical volume defined as the cache areas, when the first physical volume is short of data areas corresponding to the second size; and

the cache controller redefines the selected storage areas as data areas.

10. The tiered storage system of claim 6 , wherein:

the cache controller

selects a second cache area which newly stores third data as third cache data in accordance with a write request from the host computer after storing, as second cache data, second data read from the second physical volume, when a cache synchronization request is received, the cache synchronization request being a request of cache synchronization of copying data stored in a cache area to the second physical volume;

the cache controller determines whether the cache synchronization is needed, based on an access frequency of a third storage area defined as the selected second cache area;

the cache controller replaces the second data in the second physical volume with the third data when the cache synchronization is needed; and

the cache controller redefines the third storage area as a data area when the cache synchronization is not needed.

11. A method of substituting a data transfer between tiers, implemented on a storage controller which processes an input/output request from a host computer, the storage controller being included in a tiered storage system that comprises a first storage device including a first physical volume, and a second storage device including a second physical volume, having a lower access speed than the first storage device, and having a greater storage capacity than the first storage device, the first and second physical volumes each comprising a set of storage areas having a certain size, the storage controller providing the host computer with a logical volume logically constructed using the first and second physical volumes, and managing the first physical volume as a first tier and the second physical volume as a second tier lower than the first tier, the method comprising:

defining part of the set of storage areas of the first physical volume as a set of data areas for storing data;

defining another part of the set of storage areas of the first physical volume as a set of cache areas for storing cache data;

causing the set of cache areas to function as a cache for the tiered storage system;

writing data designated by a write request from the host computer to any one of a data area of the first physical volume and a storage area of the second physical volume;

reading data designated by a read request from the host computer from any one of a data area of the first physical volume and a storage area of the second physical volume when the data designated by the read request is not in the cache;

storing, as cache data, the read data in a cache area of the first physical volume when the read request designates a data read from the second physical volume;

determining storage areas storing data to be transferred from the second physical volume to the first physical volume, based on a descending order of access frequencies of the storage areas of the second physical volume; and

redefining, as a first data area, a first storage area of the first physical volume defined as a first cache area, instead of transferring first data stored in a second storage area of the second physical volume to the first physical volume, when the determined storage areas include the second storage area and when the first data is also stored as first cache data in the first cache area; and

transferring the first data to a free data area of the first physical volume when the determined storage areas include the second storage area and when the first data is not stored in the cache.

12. The method of claim 11 , further comprising suppressing caching of the read data in a cache area of the first physical volume when the read request designates a data read from the first physical volume.

13. The method of claim 11 , further comprising:

selecting storage areas corresponding to a first size from storage areas of the first physical volume defined as data areas, based on an ascending order of access frequencies of the storage areas of the first physical volume defined as the data areas, when a size of the cache is reduced from a target size by the first size; and

redefining the selected storage areas as cache areas.

14. The method of claim 11 , further comprising:

selecting a second cache area which newly stores third data as third cache data in accordance with a write request from the host computer after storing, as second cache data, second data read from the second physical volume, when a cache synchronization request is received, the cache synchronization request being a request of cache synchronization of copying data stored in a cache area to the second physical volume;

determining whether the cache synchronization is needed, based on an access frequency of a third storage area defined as the selected second cache area;

replacing the second data in the second physical volume with the third data when the cache synchronization is needed; and

redefining the third storage area as a data area when the cache synchronization is not needed.

15. The method of claim 11 , further comprising:

selecting storage areas corresponding to a second size from storage areas of the first physical volume defined as cache areas, based on an ascending order of access frequencies of the storage areas of the first physical volume defined as the cache areas, when the first physical volume is short of data areas corresponding to the second size; and

redefining the selected storage areas as data areas.

Assignments (3)
CHANGE OF NAME Recorded Jan 7, 2019
From: TOSHIBA SOLUTIONS CORPORATION
To: TOSHIBA DIGITAL SOLUTIONS CORPORATION
Reel/Frame 048030/0866 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SECOND ASSIGNEE"S ADDRESS PREVIOUSLY RECORDEDON REEL 033677 FRAME 0723. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 6, 2016
From: ISHIZAKI, KOUTA
To: KABUSHIKI KAISHA TOSHIBA; TOSHIBA SOLUTIONS CORPORATION
Reel/Frame 039189/0972 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2014
From: ISHIZAKI, KOUTA
To: KABUSHIKI KAISHA TOSHIBA; TOSHIBA SOLUTIONS CORPORATION
Reel/Frame 033677/0723 →
Continuity (2)
Continuation PCTJP2014052309 · Jan 31, 2014
Related Publication 20150220280A1 · Aug 6, 2015