JP2010286923A - キャッシュ制御装置及び方法 - Google Patents

キャッシュ制御装置及び方法 Download PDF

Info

Publication number
JP2010286923A
JP2010286923A JP2009138605A JP2009138605A JP2010286923A JP 2010286923 A JP2010286923 A JP 2010286923A JP 2009138605 A JP2009138605 A JP 2009138605A JP 2009138605 A JP2009138605 A JP 2009138605A JP 2010286923 A JP2010286923 A JP 2010286923A
Authority
JP
Japan
Prior art keywords
cache
area
cache area
performance
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009138605A
Other languages
English (en)
Other versions
JP4862067B2 (ja
Inventor
Yosuke Kasai
洋介 笠井
Manabu Obana
学 尾花
Akihiko Sakaguchi
明彦 坂口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2009138605A priority Critical patent/JP4862067B2/ja
Priority to US12/511,769 priority patent/US8285935B2/en
Publication of JP2010286923A publication Critical patent/JP2010286923A/ja
Application granted granted Critical
Publication of JP4862067B2 publication Critical patent/JP4862067B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】I/O状況の変化によってI/O性能が低下してしまうことを防ぐ。
【解決手段】アクセス元とストレージ装置とを有する計算機システムにキャッシュ制御装置が備えられる。その装置が、アクセス元からのI/Oコマンドに従うI/Oの状況を表す情報であるI/O状況情報を基に、アクセス元からのI/Oの性能が低下するか否かを判断する。その判断の結果が肯定的の場合、キャッシュ制御装置は、キャッシュ領域に関するキャッシュ使用状況を表す情報であるキャッシュ使用状況情報から特定されるキャッシュ使用状況をI/O性能が向上するようなキャッシュ使用状況に変更する。
【選択図】図11

Description

本発明は、キャッシュの制御に関する。
キャッシュ領域にデータを保持することは一般に行われている。例えば、ストレージ装置は、ディスク装置(例えばハードディスク)の他にキャッシュメモリを有する(例えば特許文献1)。ストレージ装置は、アクセス元からのライトコマンドに従うライト対象のデータをキャッシュメモリに保持したり、アクセス元からのリードコマンドに従うリード対象のデータをキャッシュメモリから読み出してアクセス元に提供したりする。これにより、I/O(Input/Output)性能(例えばデータ転送速度)の向上が期待できる。
特表2007−537548号公報
アクセス元からのI/O状況が一定であるとは限らない。このため、I/O性能が低下してしまう可能性がある。
本発明の目的は、I/O状況の変化によってI/O性能が低下してしまうことを防ぐことにある。
アクセス元とストレージ装置とを有する計算機システムに、キャッシュ制御装置が備えられる。
アクセス元は、I/Oコマンドを発行する。アクセス元としては、例えば、ホスト装置或いはホスト装置で実行されるコンピュータプログラム(例えば、アプリケーションプログラム、或いはオペレーションシステム)を採用することができる。
ストレージ装置は、複数の記憶デバイスと、キャッシュメモリを有するコントローラとを有する。キャッシュメモリは、割り当てられたキャッシュ領域を含む。コントローラは、アクセス元からのI/Oコマンドに従ってデータの入出力を行う。その際、コントローラは、キャッシュ領域を利用する。
キャッシュ制御装置は、記憶資源と、記憶資源に接続されたプロセッサとを有する。前記記憶資源が、キャッシュ領域に関するキャッシュ使用状況を表す情報であるキャッシュ使用状況情報と、アクセス元からのI/Oコマンドに従うI/Oの状況を表す情報であるI/O状況情報とを記憶する。これらの情報は、プロセッサによって収集された情報であっても良いし、外部の装置から入力された情報であっても良い。
プロセッサが、以下の処理(X)及び(Y):
(X)I/O状況情報を基に、アクセス元からのI/Oの性能が低下するか否かを判断する;
(Y)上記(X)の判断の結果が肯定的の場合に、キャッシュ使用状況情報から特定されるキャッシュ使用状況をI/O性能が向上するようなキャッシュ使用状況に変更するキャッシュ制御を行う、
を行う。
上記(X)の判断の結果が肯定的になる原因としては、幾つか考えられるが、特に、下記の2つの原因:
(原因1)キャッシュ領域の使用状況が、I/O特性にあっていない;
(原因2)キャッシュ領域の使用状況が、I/O特性にあっているが、割り当てられたキャッシュ領域の総容量が不足している、
が考えられる。
(原因1)の解決方法としては、ストレージ装置内のキャッシュ領域の使用状況を正しい状況にする方法が考えられる。具体的には、例えば、キャッシュ制御として、以下の(a)又は(b)の処理:
(a)キャッシュ領域に存在するリードデータのより多くを常駐化する;
(b)キャッシュ領域についてのキャッシュモードを、キャッシュ領域に常駐化されるデータがより多くなる別のキャッシュモードに変更する、
を行う方法が考えられる。
一方、(原因2)の解決方法としては、新たなキャッシュ領域を追加的に割り当てる方法が考えられる。具体的には、例えば、キャッシュ制御として、以下の(c)又は(d)の処理:
(c)未割当てのキャッシュ領域である第一の余剰キャッシュ領域を追加的に割り当てる;
(d)他のキャッシュ領域の少なくとも一部を解除し、解除された部分である第二の余剰キャッシュ領域を追加的に割り当てる、
を行う方法が考えられる。
上記第一及び/又は第二の余剰キャッシュ領域は、アクセス元からストレージ装置への経路上の装置であってストレージ装置より上位の装置、例えば、アクセス元とストレージ装置との通信を中継する中継装置内のキャッシュメモリにあることが好ましい。具体的には、例えば、図11Aにグレーで示すように、ストレージ装置1105内のキャッシュメモリ1106が有する全ての領域が、キャッシュ領域として割り当てられている場合、図11Bにグレーで示すように、中継装置1101内のキャッシュメモリ1102が有する第一(又は第二)の余剰キャッシュ領域が追加的に割り当てられることが好ましい。これにより、中継装置1101内のキャッシュメモリ1102が有するキャッシュ領域(追加的に割り当てられた余剰キャッシュ領域)に、アクセス元1103が所望するリード対象のデータが存在するケースが生じ、そのケースでは、そのキャッシュ領域からリード対象のデータがアクセス元1103に提供される。このため、I/O性能が向上する。
また、キャッシュ制御として、ボリュームマイグレーションが考えられる。具体的には、例えば、図12Aにグレーで示すように、ストレージ装置1105内のキャッシュメモリ1106が有する全ての領域が、キャッシュ領域としてアクセス元1103に割り当てられている場合において、図12Bに示すように、アクセス元1103が使用する論理ボリューム#1が、ストレージ装置1105から別のストレージ装置2105にマイグレーションされたとする(例えば、キャッシュメモリ1106に、論理ボリューム#1に格納されていないデータ(ダーティデータ)があれば、そのデータは、論理ボリューム#1に格納される)。マイグレーション後は、図12Bに示すように、キャッシュメモリ1106に記憶されているデータのうち、論理ボリューム#1に入出力されるデータは不要となる。このため、論理ボリューム#1がマイグレーションされた後、キャッシュメモリ1106は、論理ボリューム#2に対して入出力されるデータをより多く記憶できる。それ故、論理ボリューム#2に対するデータのI/Oの性能が向上することが期待できる。
プロセッサは、コンピュータプログラムを実行することにより前述した処理を行うことができるが、そのコンピュータプログラムは、遠隔のサーバからインストールされても良いし、記憶媒体(例えば、CD−ROM、DVD(Digital Versatile Disk)などの可搬型の記憶媒体)からインストールされても良い。また、前述した処理の少なくとも一部がハードウェアで行われても良い。
図1は、本発明の一実施形態に係る計算機システムを示す。 図2Aは、AP情報管理テーブル201を示す。図2Bは、要求I/O性能が時刻によって異なることを示す。 図3Aは、I/O監視テーブル301を示す。図3Bは、実測I/O性能が時刻によって異なることを示す。 図4は、キャッシュ管理テーブル401を示す。 図5Aは、マイグレーション管理テーブル501を示す。図5Bは、データセット情報511を示す。 図6は、キャッシュ管理処理の流れを示す。 図7は、S604及びS608の詳細を示す。 図8は、領域解除処理の流れを示す。 図9は、マイグレーション管理処理の流れを示す。 図10は、S905のボリュームマイグレーション処理の流れを示す。 図11Aは、中継装置内のキャッシュメモリが有する領域がキャッシュ領域として未割当ての状態を示す。図11Bは、中継装置内のキャッシュメモリが有する領域がキャッシュ領域として割り当てられた状態を示す。 図12Aは、ボリュームマイグレーション前の状態を示す。図12Bは、ボリュームマイグレーション後の状態を示す。
以下、図面を参照して、本発明の一実施形態を説明する。なお、以後の説明では、「xxxテーブル」と表現される情報があるが、情報は、テーブル以外のデータ構造で表現されていてもよい。また、以下、コンピュータプログラムが行う処理は、実際には、そのプログラムを実行するプロセッサによって行われる。
図1は、本発明の一実施形態に係る計算機システムを示す。
LAN(Local Area Network)102に、ホスト装置(以下、ホスト)101、ファイバチャネルスイッチ装置(以下、FC−SW)106、ストレージ装置(以下、ストレージ)109、及び管理サーバ105が接続されている。但し、後述の外部ストレージはLAN102に接続されていなくて良い。
SAN(Storage Area Network)がFC−SW106を有する。FC−SW106に、ホスト101及びストレージ109が接続されている。但し、後述の外部ストレージはLAN102に接続されていなくて良い。SAN及びLANのうちの少なくとも一方が他種の通信ネットワークでも良い。また、SAN及びLANに代えて一つの通信ネットワークが採用されても良い。
ホスト101は、通信インタフェース装置(例えば、NIC(Network Interface Card)155、HBA(Host Bus Adapter)153)、CPU(Central
Processing Unit)及び記憶資源を有する。記憶資源が、例えば、アプリケーションプログラム(以下、AP)155とパス管理プログラム151とを記憶し、CPUが、それらのプログラム155及び151を実行する。
FC−SW106は、ホスト101とストレージ109間の通信を中継する。FC−SW106は、キャッシュメモリと、キャッシュメモリの使用を制御するキャッシュ機能とを有していても良い。
ストレージ109は、コントローラと、磁気ディスク群とを有する。
磁気ディスク群は、RAID(Redundant Array of Independent (or Inexpensive) Disks)グループを有する。RAIDグループは、二以上の磁気ディスク176を有する。RAIDグループを基に、1又は複数の論理ボリューム177が形成される。論理ボリューム177には、識別子として、例えば、LUN(Logical
Unit Number)が割り当てられている。磁気ディスク176は、典型的にはハードディスクドライブであるが、それに代えて、フラッシュメモリなど他種の不揮発性の記憶デバイスが採用されても良い。
コントローラは、ホスト101からのI/Oを制御する。コントローラは、例えば、CPU、キャッシュメモリ(以下、CM)173を含む。具体的には、例えば、コントローラは、チャネルアダプタ(以下、CHA)174、ディスクアダプタ(以下、DKA)175、CM173、NIC178及びスイッチデバイス(以下、SW)171を有する。
CHA174は、フロントエンドのインタフェース装置であり、ホスト101との通信を制御する。CHA174は、CPUを有する。CHA174は、ホスト101からI/Oコマンドを受け付け、そのI/Oコマンドを処理する。
DKA175は、バックエンドのインタフェース装置であり、磁気ディスク176との通信を制御する。DKA175も、CPUを有する。DKA175は、ホスト101からのI/Oコマンドで指定されているLUNに対応した論理ボリューム177の基になっている磁気ディスク176にアクセスする。
CM173は、ホスト101からのI/Oコマンドに従うデータ(ライト対象のデータ、又は、リード対象のデータ)を記憶する。CM173を基に、複数のキャッシュ領域が定義されている。
NIC178は、LAN102を介した通信を制御する。NIC178は、例えばいずれかのCHA174に接続されている。
SW11は、CHA174、DKA175及びCM173に接続されており、CHA174、DKA175及びCM173間の通信を制御する。
コントローラは、キャッシュ領域毎に、各時刻でのキャッシュ使用状況を管理している。キャッシュ使用状況としては、例えば、キャッシュヒット率(リードヒット率、ライトヒット率)、ライト割合、常駐トラックリード割合、容量及びキャッシュモードがある。これらについては後述する。
さて、図1によれば、同種の要素の名称は、名称本体と通し番号との組合せで表現されている。例えば、ホスト1、ホスト2、ホスト3、AP11、AP21、…のような表現がある。以下、同種の要素を特に区別しないで説明する場合には、名称本体と参照番号を使用し、同種の要素を区別して説明する場合には、参照番号を使用することに代えて、名称本体と通し番号との組合せを使用することにする。なお、名称本体に続く番号が参照番号であるか通し番号であるかは、番号の桁数で判別できる。3桁以上の整数は参照番号であり、2桁以下の整数は通し番号である。
ストレージ2には、外部ストレージ3及び4が接続されている。以下、外部ストレージ3及び4が有する論理ボリュームを「外部ボリューム」と言う。
ストレージ2は、外部ストレージ3及び4が有する論理ボリューム311〜313、321〜323、411〜412、421〜423を仮想化技術により一元管理する。ストレージ2は、通常の論理ボリューム(磁気ディスクが基になっている論理ボリューム)21及び22の他に、仮想的な論理ボリューム(以下、仮想ボリューム)と、仮想ボリュームと外部ボリュームとの対応関係とを管理している。ストレージ2は、仮想ボリュームを指定したI/Oコマンドを受けた場合、その仮想ボリュームに対応する外部ボリュームを特定し、CHA23又はCHA24を通じて、その外部ボリュームに対するI/Oを行う。例えば、外部ストレージ3内の外部ボリューム311に対するI/Oが行われる場合、I/O対象のデータが、外部ストレージ3内のCM31に保持される。つまり、仮想ボリュームに対してI/Oが頻繁に行われる場合、外部ストレージ3及び/又は4内のCM31及び/又は41に対してI/Oが頻繁に行われることになる。
この例によれば、ストレージ2が、ホスト101と外部ストレージ3又は4との通信を中継することになる。このため、本実施形態では、FC−SW1又は2に限らず、ストレージ2も中継装置になり得る。
以下、AP11から外部ボリューム311にアクセスされることを例に採り、各要素の機能を説明する。ボリューム311は、パス(P1−P2−P3)に関連付けられているとする。また、外部ボリューム311に対応した仮想ボリュームを、以下の説明において「仮想ボリューム311」と言う。また、CM31に基づく複数のキャッシュ領域のうちの一つが、外部ボリューム311に割り当てられているとする。以下、その一つのキャッシュ領域を、この説明において「キャッシュ領域(T1)」と言う。
AP11は、外部ボリューム311に対応した仮想ボリューム311を指定したI/Oコマンドを発行する。
パス管理プログラム1は、ホスト1で認識されている論理ボリュームへのパスを管理する。例えば、AP11から、仮想ボリューム311を指定したI/Oコマンドが発行された場合、パス管理プログラム1は、そのI/Oコマンドを、パス(P1−P2−P3)に関連しているHBA12から出力する。
FC−SW2が、仮想ボリューム311を指定したI/Oコマンドを受け、その場合、そのI/Oコマンドを、CHA21に転送する。
ストレージ2のコントローラが、そのI/Oコマンドを外部ストレージ3に転送する。具体的には、CHA21が、仮想ボリューム311を指定したI/Oコマンドを受け、そのI/Oコマンドで指定されているボリュームが仮想ボリューム311であることを特定する。その場合、CHA21が、そのI/Oコマンドを、外部ボリューム311を指定したI/Oコマンドに変更し、そのI/Oコマンドを、SW21を通じてCHA23に送信する。CHA23が、そのI/Oコマンドをストレージ3に転送する。
外部ストレージ3のコントローラ(具体的にはCHA31)が、外部ボリューム311を指定したI/Oコマンドを受けた場合、キャッシュ領域(T1)からキャッシュヒットしたか否かを判定する。「キャッシュヒットした」とは、キャッシュ領域(T1)からI/Oサブ領域が見つかったことである。I/Oコマンドがライトコマンドの場合、キャッシュヒットとはライトヒットのことであり、I/Oサブ領域は、そのライトコマンドに従うライト対象のデータが格納される領域である。一方、I/Oコマンドがリードコマンドの場合、キャッシュヒットとはリードヒットのことであり、I/Oサブ領域は、そのリードコマンドに従うリード対象のデータが格納されている領域である。
キャッシュヒットした場合、外部ストレージ3のコントローラは、見つかったI/Oサブ領域(キャッシュ領域(T1)内の領域)に対するI/Oを行う。具体的には、例えば、I/Oコマンドがライトコマンドの場合、コントローラは、I/Oサブ領域にライト対象のデータを書込み、その後、キャッシュ領域(T1)から外部ボリューム311にそのライト対象のデータを書き込む。一方、I/Oコマンドがリードコマンドの場合、コントローラは、I/Oサブ領域からリード対象のデータを読み出し、ストレージ2に転送する。そのデータは、ストレージ2からFC−SW2を通ってAP11に送られる(つまり、リード対象のデータは、パス(P1−P2−P3)を通ってAP11に送られる)。
キャッシュヒットしなかった場合(キャッシュミスだった場合)、例えば以下の処理が行われる。例えば、I/Oコマンドがライトコマンドの場合、コントローラは、クリーンデータ(外部ボリューム311に格納済みのデータ)が記憶されている領域をI/Oサブ領域として確保し、その領域に、ライト対象のデータを書込む(その後、その領域から外部ボリューム311にそのライト対象のデータが書き込まれる)。一方、I/Oコマンドがリードコマンドの場合、コントローラは、キャッシュ領域(T1)にI/Oサブ領域を確保し、外部ボリューム311からリード対象のデータを読み出し、確保したI/Oサブ領域に確保する。その後、コントローラは、I/Oサブ領域からリード対象のデータを読み出し、そのデータをストレージ2に転送する。
さて、次に、管理サーバ105について説明する。
管理サーバ105は、キャッシュ制御装置の一例としての計算機である。管理サーバ105は、LAN102を介して通信するためのNIC161と、コンピュータプログラム及び情報を記憶する記憶資源166と、NIC161及び記憶資源166に接続されたCPU163とを有する。通信ネットワーク或いは通信プロトコル等の種類に応じて、NIC161に代えて他の通信インタフェース装置が採用されても良い。
記憶資源166が記憶するコンピュータプログラムとして、例えば、アプリケーション管理プログラム(図では「AP管理PG」と略記)171、I/O監視プログラム(図では「I/O監視PG」と略記)172、キャッシュ管理プログラム(図では「CM管理PG」と略記)173及びマイグレーション管理プログラム(図では「MG管理PG」と略記)174がある。
アプリケーション管理プログラム171は、各APについての要求I/O性能を管理する。具体的には、例えば、アプリケーション管理プログラム171は、各APからの情報を基に、要求I/O性能を管理する。「要求I/O性能」とは、AP11が仮想ボリューム(外部ボリューム)311に対して行うI/Oの性能としてAP11が要求する性能である。ちなみに、I/O性能は、例えばデータ転送速度である。I/O性能は、例えば、I/Oコマンドに従うデータのサイズと、そのI/Oコマンドに対応したレスポンスタイムとに基づいて決定される。具体的には、例えば、データサイズが「10」であり、レスポンスタイム(I/Oコマンドが発行されてからそのI/Oコマンドについての処理が完了するまでの時間)が「5」の場合、I/O性能は「2」(10÷2)となる。また、例えば、データサイズが「10」であり、レスポンスタイムが10の場合、I/O性能は「1」となる。
I/O監視プログラム172は、各APが論理ボリュームに対して行うI/Oの実際の性能(実測I/O性能)を監視する。
キャッシュ管理プログラム173は、要求I/O性能と実測I/O性能とに基づいて、実測I/O性能がやがて要求I/O性能より低下するか否かを判断する。キャッシュ管理プログラム173は、その判断の結果が肯定的の場合に、どのようなキャッシュ制御が必要になるかを判定し、判定されたキャッシュ制御を実行する。
マイグレーション管理プログラム174は、ボリュームマイグレーションを行う。ボリュームマイグレーションは、後述するように、実測I/O性能を向上するためのキャッシュ制御となり得る。
以下、各プログラム171〜174について詳細に説明する。
まず、AP管理プログラム171について説明する。
AP管理プログラム171は、定期的に、以下の(A−1)及び(A−2)の処理:
(A−1)各ホストから、LAN102を通じて、各APのI/O性能を表す情報を取得する;
(A−2)取得した情報に基づいて算出される要求I/O性能を表す情報を、図2Aに示すAP情報管理テーブル201に格納する、
を行う。
テーブル201は、AP管理プログラム171に管理される情報であり、記憶資源166に記憶される。テーブル201は、図2Aに示すように、AP/ボリュームセット(APとそのAPからのI/O先となる論理ボリュームとのセット)毎に、以下の情報要素(a1)〜(a4):
(a1)AP/ボリュームセットに属するAPの名前;
(a2)そのAP/ボリュームセットについて要求I/O性能が測定された時刻;
(a3)そのAP/ボリュームセットに属する論理ボリュームに割り当てられているLUN;及び
(a4)そのAP/ボリュームセットについての要求I/O性能、
を有する。つまり、テーブル201は、各AP/ボリュームセットについての要求I/O性能の履歴(統計データ)である。各AP/ボリュームセットについて、要求I/O性能は、例えば図2Bに示すように、時刻によって異なる。各時刻での要求I/O性能が算出されテーブル201に格納される。このため、テーブル201を参照すれば、各AP/ボリュームセットについての要求I/O性能の変化がわかる。
要求I/O性能は、前述のように、各APからの情報を基に管理サーバ105が管理している。各APからは、例えば定期的に情報が取得される。なお、要求I/O性能の算出には、I/O監視プログラム172が取得したI/O性能が利用されても良い。
以上が、AP管理プログラム171についての説明である。次に、I/O監視プログラム172について説明する。
I/O監視プログラム172は、定期的に、以下の(B−1)及び(B−2)の処理:
(B−1)AP/ボリュームセット毎の実測I/O性能を表す情報を取得する;
(B−2)取得した情報を、図3Aに示すI/O監視テーブル301に格納する、
を行う。I/O監視プログラム172が、AP/ボリュームセット毎に、I/O性能を計測し管理している。
テーブル301は、I/O監視プログラム172に管理される情報であり、記憶資源166に記憶される。テーブル301は、図3Aに示すように、AP/ボリュームセット毎に、以下の情報要素(b1)〜(b5):
(b1)AP/ボリュームセットに論理ボリュームに割り当てられているLUN;
(b2)そのAP/ボリュームセットに属するAPの名前;
(b3) そのAP/ボリュームセットについての実測I/O性能が計測された時刻;
(b4)そのAP/ボリュームセットについての実測I/O性能;
(b5)そのAP/ボリュームセットについてのI/O増加率、
を有する。つまり、テーブル301は、各AP/ボリュームセットについての実測I/O性能及びI/O増加率の履歴(統計データ)である。実測I/O性能は、例えば定期的に取得される。各AP/ボリュームセットについて、実測I/O性能は、例えば図3Bに示すように、時刻によって異なる(つまり、I/O状況は変化する)。I/O増加率は、各ホスト及び/又は各ストレージによって算出されても良いし、I/O監視プログラム172によって算出されても良い。具体的には、例えば、I/O増加率は、I/O監視プログラム172が{(今回の実測I/O性能)÷(直前の時刻の実測I/O性能)×100}を計算することによって算出される。
以上が、I/O監視プログラム172についての説明である。次に、キャッシュ管理プログラム173について説明する。
キャッシュ管理プログラム173は、キャッシュ機能を有する各装置が有するキャッシュ領域を管理する。言い換えれば、キャッシュ管理プログラム173は、管理サーバ105を有する計算機システムに存在する全てのキャッシュ領域を管理することができる。つまり、キャッシュ管理プログラム173は、FC−SW106がキャッシュメモリ及びキャッシュ機能を有しているならば、ストレージ109内のキャッシュ領域だけでなく、FC−SW106内のキャッシュ領域も管理することができる。本実施形態では、FC−SW106はキャッシュ機能を有しておらず、故に、ストレージ1〜4内のキャッシュ領域が管理される。
キャッシュ管理プログラム173は、定期的に、以下の(C−1)及び(C−2)の処理:
(C−1)キャッシュ機能を有する各装置(ここでは各ストレージ)から、LAN102を通じて、各キャッシュ領域のキャッシュ使用状況を表す情報を含んだ管理情報を取得する;
(C−2)取得した管理情報から特定される所定種類の情報要素を、図4に示すキャッシュ管理テーブル401に格納する、
を行う。
テーブル401は、キャッシュ管理プログラム173に管理される情報であり、記憶資源166に記憶される。テーブル401は、図4に示すように、キャッシュ領域毎に、以下の情報要素(c1)〜(c7):
(c1)キャッシュ領域のID;
(c2)そのキャッシュ領域についてのリードヒット率;
(c3)そのキャッシュ領域についてのライトヒット率;
(c4)そのキャッシュ領域についてのライト割合;
(c5)そのキャッシュ領域についての常駐トラックリード割合;
(c6)そのキャッシュ領域の容量;及び、
(c7)そのキャッシュ領域について採用されているキャッシュモード、
を有する。このように、テーブル401では、計算機システムに存在する各キャッシュ領域に関するキャッシュ使用状況が管理される。上記(c1)〜(c7)の情報要素が、各ストレージから取得される管理情報に含まれている。テーブル401で管理されている各キャッシュ領域は、いずれかのAP/ボリュームセットに割り当てられている。どのキャッシュ領域がどの論理ボリュームに割り当てられているかは、キャッシュ管理プログラム173によって別途管理されている。また、計算機システムに存在するキャッシュメモリのうちキャッシュ領域として割り当てられていないアドレス範囲がどれであるか(以下、そのアドレス範囲に対応する領域を「プールキャッシュ領域」と言う)も、キャッシュ管理プログラム173によって別途管理されている。
キャッシュ領域のIDは、例えば、そのキャッシュ領域を有するストレージに関する情報(例えばストレージの名称)を含んでいる。これにより、キャッシュ領域のIDから、そのキャッシュ領域がどのストレージに存在するかがわかる。なお、キャッシュ領域のIDとは別に、キャッシュ領域を有する装置のIDが管理されても良い。
情報要素(c2)〜(c7)が、キャッシュ使用状況を表す情報に含まれている情報要素である。また、情報要素(c2)〜(c5)は、時間帯毎に各ストレージにおいて計測されても良い。或いは、各ストレージからの管理情報に、I/O処理履歴情報(例えば、いつどんなI/Oコマンドを受けたかやそのI/Oコマンドについてキャッシュヒットしたか否かなどを表す情報)が含まれていて、キャッシュ管理プログラム173は、そのI/O処理履歴情報を基に、情報要素(c2)〜(c5)を算出しても良い。
以下、情報要素(c2)〜(c5)、すなわち、リードヒット率、ライトヒット率、ライト割合及び常駐トラックリード割合を説明する。その際、説明を分かり易くするため、キャッシュID「STORAGE3 CLPR31」から同定されるキャッシュ領域、つまり、外部ストレージ3内のキャッシュ領域(以下、キャッシュ領域(T2))を例に採る。キャッシュ領域(T2)は、ボリューム321に割り当てられているとする。ボリューム321が指定されたライトコマンドを「特定ライトコマンド」と言い、ボリューム321が指定されたリードコマンドを「特定リードコマンド」と言う。
「リードヒット率」は、キャッシュ領域(T2)でリードヒットした確率である。具体的には、或る期間でのリードヒット率は、その期間に受信した特定リードコマンドの総数のうちリードヒットした特定リードコマンドの数の割合である。
「ライトヒット率」は、キャッシュ領域(T2)でライトヒットした確率である。具体的には、或る期間でのライトヒット率は、その期間に受信した特定ライトコマンドの総数のうちライトヒットした特定ライトコマンドの数の割合である。
「ライト割合」は、特定I/Oコマンドのうちの特定ライトコマンドの割合である。具体的には、或る期間でのライト割合は、その期間に受信した特定I/Oコマンドの総数のうちの特定ライトコマンドの数の割合である。
「常駐トラックリード割合」は、常駐化されているリードデータが読み出される割合である。具体的には、例えば、或る期間での常駐トラックリード割合は、その期間に受信した特定リードコマンドの総数のうち、常駐化されているリードデータをリード対象とした特定リードコマンドの数の割合である。なお、「リードデータ」とは、リードコマンドに応答して磁気ディスクからキャッシュ領域に読み出されたデータのことである。このため、リードヒットした場合には、キャッシュ領域に存在するリードデータのうちのいずれかがリード対象としてキャッシュ領域から読み出される。一方、APから送信されキャッシュメモリに書き込まれたデータが「ライトデータ」である。このため、ライトコマンドに従ってキャッシュ領域に書き込まれたライト対象のデータに限らず、過去にライトコマンドに従って書き込まれたデータもライトデータである。
次に、キャッシュモードについて説明する。
キャッシュモードは、キャッシュ領域毎に設定される。各ストレージ内のコントローラは、キャッシュ領域を、そのキャッシュ領域に対応付けられているキャッシュモードに従って使用する。キャッシュモードは、動的モードと静的モードの2種類に大別することができる。
動的モードとは、キャッシュ領域上のデータが動的にキャッシュ領域に常駐化されるモードである。動的モードとしては、例えば、BモードとPモードの2種類がある。
Bモードとは、ライトデータもリードデータもキャッシュ領域に常駐化させるモードである。具体的には、ライト処理では、キャッシュ領域上のライト対象データは常駐化される。そのライト対象データの磁気ディスクへの反映は、電源が遮断されるときなどに実施される。一方、リード処理では、キャッシュ領域に読み出されたリード対象データは常駐化される。キャッシュ領域上の常駐化されているデータは、そのデータが磁気ディスクに反映済みであったとしても、更新されない。
Pモードとは、ライトデータをキャッシュ領域に常駐化させないがリードデータをキャッシュ領域に常駐化させるモードである。キャッシュ領域上の常駐化されていないデータは、更新され得る。具体的には、例えば、キャッシュ領域上のライトデータは、そのライトデータを更新するためのライトコマンドが受領され、且つ、そのライトデータが記憶されている領域が確保されないとそのライトコマンドに従うライト対象データを格納できない場合に、そのライト対象データに上書きされる。
静的モードとは、キャッシュ領域上にデータが常駐化されない通常のモードである。このため、動的モードに比べて、例えば、リードヒット率は低い。
以上が、キャッシュ管理プログラム173についての説明である。次に、マイグレーション管理プログラム174について説明する。
マイグレーション管理プログラム174は、各ボリュームのマイグレーションに関するスケジュールを、図5Aに示すマイグレーション管理テーブル501に登録する。
テーブル501は、マイグレーション管理プログラム174に管理される情報であり、記憶資源166に記憶される。テーブル501は、図5Aに示すように、マイグレーション毎に、以下の情報要素(d1)〜(d5):
(d1)マイグレーションの開始の予定時刻;
(d2)マイグレーション対象の論理ボリュームを有するストレージのID;
(d3)マイグレーション対象の論理ボリュームのLUN;
(d4)マイグレーション対象の論理ボリュームの基になっているRAIDグループ(マイグレーション元RG)のID;
(d5)マイグレーション先のRAIDグループ(マイグレーション先RG)のID、
を有する。マイグレーション先RGは、マイグレーション元RGを有するストレージとは別のストレージに存在する。以下、マイグレーション先RGを有するストレージを「マイグレーション先ストレージ」と言い、マイグレーション対象の論理ボリュームを有するストレージを「マイグレーション元ストレージ」と言う。
マイグレーション管理プログラム174は、テーブル501のレコードに記録されている情報に基づくマイグレーション指示を、マイグレーション元ストレージ(及び/又は、マイグレーション先ストレージ)に送信する。その指示を受けたストレージが、マイグレーション予定開始時刻にマイグレーションを行う。本実施形態のマイグレーションでは、下記の処理(m1)及び(m2):
(m1)マイグレーション先RGに基づく論理ボリュームに、マイグレーション対象の論理ボリューム内のデータがコピーされる;
(m2)マイグレーション対象の論理ボリュームに割り当てられていたLUNが、マイグレーション先の論理ボリュームに割り当てられる、
が行われる。これにより、マイグレーション対象の論理ボリュームに割り当てられていたLUNを指定したI/Oコマンドは、マイグレーション先ストレージに送信される。また、そのI/Oコマンドに従うデータの入出力は、マイグレーション先ストレージ内のキャッシュ領域に対して行われることになる。
以上が、マイグレーション管理プログラム174についての説明である。以下、本実施形態で行われる処理の流れを説明する。
図6は、キャッシュ管理処理の流れを示す。
S601で、アプリケーション管理プログラム171が、各ホストから、各アプリケーションに関するAP管理情報を取得し、その情報から特定される各種情報要素を、アプリケーション管理テーブル201に登録する。また、キャッシュ管理プログラム173が、各ストレージから、CM管理情報(キャッシュ領域毎のキャッシュ使用状況を表す情報、及び、データセット情報を含んだ情報)を取得し、管理情報から特定される各種情報要素を、キャッシュ管理テーブル401に登録する。S601は、例えば、定期的に行われる。
なお、データセット情報とは、例えば、図5Bに示すとおりである。すなわち、データセット情報511は、論理ボリューム毎のI/O特性を表す。具体的には、例えば、データセット情報511は、各論理ボリュームについて、論理ボリュームのLBA(Logical Block Address)範囲毎に、リードとライトのどちらがより多く行われたかのI/O特性を表す情報を含む。つまり、ストレージのコントローラによって、各論理ボリュームについて、論理ボリュームのLBA範囲毎に、リードとライトのどちらがより多く行われたかが管理されている。なお、データセット情報には、LBA範囲毎に、ライトとリードのそれぞれの頻度を表す値が含まれていても良い。
再び図6を参照する。
S602で、I/O監視プログラム172が、AP/ボリューム毎の実測I/O性能及びI/O増加率を取得し、それらの情報要素などをI/O監視テーブル301に登録する。S602は、例えば定期的に行われる。
各AP/ボリュームセットについて、S603〜S612を含んだループが行われる。そのループは、I/O増加率の最も高いAP/ボリュームセットから先に行われる。一つのAP/ボリュームセットを例に採り、S603〜S611を説明する。以下、図6〜図8の説明において、そのAP/ボリュームセットを「対象セット」と言い、対象セットに属するAPを「対象AP」と言い、対象セットに属する論理ボリュームを「対象ボリューム」と言う。対象ボリュームは、外部ストレージ3内のボリューム311であるとし、そのボリューム311に対応した仮想ボリュームがストレージ2で管理されているとする。
S603で、判断6−1が行われる。判断6−1では、キャッシュ管理プログラム173が、対象セットに対応した要求I/O性能、実測I/O性能及びI/O増加率に基づいて、将来の或る時点での実測I/O性能がその要求I/O性能より低下するか否かを判断する。「将来の或る時点での実測I/O性能」は、例えば、最新の時刻でのI/O増加率と最新の時刻での実測I/O性能とを基にプログラム173によって推測された値である。判断6−1の結果が否定的であれば、対象セットについての処理が終了となり(すなわち、対象セットについては、キャッシュ使用状況を変更するためのキャッシュ制御が不要であり)、次にI/O増加率の高い別のAP/ボリュームセットについてS603が行われる。一方、判断6−1の結果が肯定的であれば、S604が行われる。
S604で、判断6−2が行われる。判断6−2では、キャッシュ管理プログラム173が、キャッシュ使用状況が適切か否かを判断する。判断6−1の結果が否定的であれば、S608が行われ、判断6−2の結果が肯定的であれば、S605が行われる。
S605で、判断6−3が行われる。判断6−3では、キャッシュ管理プログラム173が、プールキャッシュ領域のうちの少なくとも一部(以下、「第一の余剰キャッシュ領域」と言う)を、割り当て可能か否かを判断する。判断6−3の結果が肯定的であれば、S609が行われ、判断6−3の結果が否定的であれば、S606が行われる。必要とされる第一の余剰キャッシュ領域の容量以上のプールキャッシュ領域があれば、判断6−3の結果が肯定的となる。
S606で、判断6−4が行われる。判断6−4では、キャッシュ管理プログラム173が、実測I/O性能が過剰に高いAP/ボリュームセット(例えば、実測I/O性能が或る閾値以上であるAP/ボリュームセット)があるか否かを判断する。以下、そのセットを、「第一の余剰セット」と言う。判断6−4の結果が肯定的であれば、S610が行われ、判断6−4の結果が否定的であれば、S607が行われる。
S607で、判断6−5が行われる。判断6−5では、キャッシュ管理プログラム173が、I/O増加率が低く(例えばI/O増加率が或る閾値より低く)且つ要求I/O性能が減少傾向にあるAP/ボリュームセット(以下、第二の余剰セット)があるか否かを判断する。判断6−5の結果が肯定的であれば、S611が行われ、判断6−5の結果が否定的であれば、対象セットについて、このループにおける処理が終了となる(すなわち、対象セットについては、キャッシュ使用状況を変更するためのキャッシュ制御は不要である)。
S608で、キャッシュ制御が行われる。具体的には、キャッシュ管理プログラム173は、対象ボリュームに割当てられているキャッシュ領域について、キャッシュモードを変更する、又は、キャッシュ領域のうちのリードデータのより多くを常駐化する。
S609で、キャッシュ管理プログラム173は、プールキャッシュ領域のうちの必要な容量の第一の余剰キャッシュ領域を、対象ボリュームに追加的に割り当てる。
S610で、キャッシュ管理プログラム173は、上記第一の余剰セットに属するボリュームに割り当てられていたキャッシュ領域の少なくとも一部を解除し、解除した部分(以下、解除された部分を「第二の余剰キャッシュ領域」と言う)の少なくとも一部を、対象ボリュームに追加的に割り当てる。
S611で、キャッシュ管理プログラム173は、上記第二の余剰セットに属するボリュームに割り当てられていたキャッシュ領域の一部を解除し、解除した部分(第二の余剰キャッシュ領域)の少なくとも一部を、対象ボリュームに追加的に割り当てる。
このループにおける処理が全てのAP/ボリュームセットについて行われた場合に、このループから処理が抜けることになる。なお、このループは、一定時間毎に行われる。つまり、S601及びS602によって、新たな時刻での情報要素がテーブル201、301及び401に登録されているので、その新たな時刻での情報要素を基に、全てのAP/ボリュームセットについてループが行われる。その際、新たな時刻でのI/O増加率が前の時刻でのI/O増加率と異なっていれば、AP/ボリュームセットの順序(ループにおける処理が行われる順序)も前の順序とは異なる。
前述のS609を詳細に説明する。
「プールキャッシュ領域」とは、前述したように、計算機システムに存在するキャッシュメモリのうちキャッシュ領域として割り当てられていないアドレス範囲に対応する領域である。S609では、プールキャッシュ領域のうち、対象APと対象ボリュームとの間におけるパスが経由する装置であって、対象ボリュームを有するストレージよりも上位の装置(ホスト側の装置)内のキャッシュ領域(第一の余剰キャッシュ領域)が、対象ボリュームを有するストレージ内のキャッシュ領域よりも優先的に割り当てられる。
キャッシュ管理プログラム173は、余剰キャッシュ領域の割り当ての指示(キャッシュ割当て指示)を、余剰キャッシュ領域を有する中継装置に送信する。中継装置は、例えば、ストレージ2であるが、FC−SW2がキャッシュ機能を有していれば、FC−SW2がその中継装置になり得る。キャッシュ管理プログラム173からのキャッシュ割当て指示は、例えば、
(K1)対象ボリュームのLUN;
(K2)余剰キャッシュ領域のアドレス範囲;及び
(K3)そのアドレス範囲に対応付けるLBA範囲(対象ボリュームのLBA範囲)、
を含む。その指示を受けた装置は、その指示に含まれている(K1)〜(K3)の情報要素を保持する。これにより、余剰キャッシュ領域の割り当てが完了する。その後、例えば、対象ボリュームのLUN及びLBAを含んだI/Oコマンドを中継装置が受けた場合、その中継装置は、I/Oコマンドに含まれているLUN及びLBAに対応したアドレス範囲が、その中継装置が有するキャッシュメモリ内のアドレス範囲であれば、そのアドレス範囲に対応した領域に対して、そのI/Oコマンドに従うデータの入出力を行う。このため、例えば、その領域にリード対象データが保持されていれば、中継装置が、I/Oコマンドに応答して、保持されているリード対象データを対象APに提供する。
なお、余剰キャッシュ領域の割当ての方法についての上記の説明は、第一の余剰キャッシュ領域の割り当てに限らず、第二の余剰キャッシュ領域(つまり、前述の第一又は第二の余剰セットに属する論理ボリュームに割当てられているキャッシュ領域から解除された部分)が対象ボリュームに割当てられる場合についても同様である。
次に、前述のS604及びS608を、図7を参照して詳細に説明する。
図7に示す処理は、前述のS604及びS608の詳細である。具体的には、図7のS701〜S705が、S604の詳細であり、S707及びS708が、S608の詳細である。
S701では、判断7−1が行われる。判断7−1では、キャッシュ管理プログラム173が、キャッシュ管理テーブル401を参照し、対象ボリュームに割り当てられているキャッシュ領域(以下、キャッシュ領域(T3))についてのリードヒット率が高いか否か(例えば、そのリードヒット率が或る閾値以上か否か)を判断する。判断7−1の結果が否定的であれば、S702が行われ、判断7−1の結果が肯定的であれば、S704が行われる。
S702では、判断7−2が行われる。判断7−2では、キャッシュ管理プログラム173が、キャッシュ管理テーブル401を参照し、キャッシュ領域(T3)についてのライト割合が高いか否か(例えば、そのライト割合が或る閾値以上か否か)を判断する。判断7−2の結果が否定的であれば、S703が行われ、判断7−2の結果が肯定的であれば、S704が行われる。
S703では、判断7−3が行われる。判断7−3では、キャッシュ管理プログラム173が、キャッシュ管理テーブル401を参照し、キャッシュ領域(T3)についてのキャッシュモードがBモードか否かを判断する。判断7−3の結果が否定的であれば、S706が行われ、判断7−3の結果が肯定的であれば、図6のS605が行われる。
S704では、判断7−4が行われる。判断7−4では、キャッシュ管理プログラム173が、キャッシュ管理テーブル401を参照し、キャッシュ領域(T3)についての常駐トラックリード割合が高いか否か(例えば、その常駐トラックリード割合が或る閾値以上か否か)を判断する。判断7−4の結果が否定的であれば、S705が行われ、判断7−4の結果が肯定的であれば、図6のS605が行われる。
S705では、判断7−5が行われる。判断7−5では、キャッシュ管理プログラム173が、キャッシュ領域(T3)に、リードが多く且つ常駐化されていないデータがあるか否かを判断する。キャッシュ領域(T3)に常駐化されていないデータがあるか否かは、例えば、ストレージからのCM管理情報に含まれているサブ領域管理情報を参照することで、判断することができる。サブ領域管理情報は、キャッシュ領域の各サブ領域(スロット)に記憶されているデータが常駐化されているか否かを表す情報を含む。また、リードが多いデータがあるか否かは、例えば、キャッシュ領域(T3)におけるどのデータが対象ボリュームのどのLBA範囲に対応するかを表す情報(例えば上記CM管理情報に含まれている情報)や、前述したデータセット情報を基に判断することができる。判断7−5の結果が肯定的であれば、S707が行われ、判断7−5の結果が否定的であれば、図6のS605が行われる。
S706では、キャッシュ管理プログラム173が、キャッシュ領域(T3)についてのキャッシュモードをBモードに変更することのモード変更指示を、キャッシュ領域(T3)を有するストレージに送信する。これにより、キャッシュ領域(T3)を有するストレージにおいて、キャッシュ領域(T3)についてBモードが設定され、その後、Bモードに従ってキャッシュ領域(T3)が使用される。
S707では、キャッシュ管理プログラム173が、キャッシュ領域(T3)に存在するリードデータのうちのリードが多いリードデータを常駐化することのデータ常駐指示を、キャッシュ領域(T3)を有するストレージに送信する。これにより、キャッシュ領域(T3)において、より多くのリードデータが常駐化される。リードデータのうちのどれがリードが多いかは、例えば、キャッシュ領域(T3)におけるどのデータが対象ボリュームのどのLBA範囲に対応するかを表す情報(例えば上記CM管理情報に含まれている情報)や、上記データセット情報を基に判断することができる。
図7に基づく以上の説明によれば、以下のことがわかる。
すなわち、キャッシュ領域(T3)について、リードヒット率が高くなく、ライト割合が低くなく、且つ、キャッシュモードがBモードでは無い場合に、キャッシュ制御として、キャッシュ領域(T3)のキャッシュモードがBモードに変更される。
また、キャッシュ領域(T3)について、リードヒット率が高く(又は、リードヒット率が高くないがライト割合が低く)、常駐トラックリード割合が高くなく、且つ、リードが多く常駐化されていないデータがある場合、キャッシュ制御として、より多くのデータが常駐化される。
さらに、キャッシュ領域(T3)について、以下の(A)乃至(C):
(A)リードヒット率が高く(又は、リードヒット率が高くないがライト割合が低く)、且つ、常駐トラックリード割合が高い場合;
(B)リードヒット率が高く(又は、リードヒット率が高くないがライト割合が低く)、常駐トラックリード割合が高くなく、且つ、リードが多く常駐化されていないデータがない場合;
(C)リードヒット率が高くなく、ライト割合が低くなく、且つ、キャッシュモードがBモードである場合、
のいずれかの場合、S605を経て、第一の余剰キャッシュ領域(対象APと対象ボリュームとのパス上における上位のキャッシュ領域)が、対象ボリュームに追加的に割り当てられる。なお、割り当てられる第一の余剰キャッシュ領域の容量は、例えば、対象セットについての要求I/O性能、実測I/O性能及びI/O増加率を基に決定されて良い。これにより、第一の余剰キャッシュ領域の容量が無駄に多くならないようにすることが期待できる。また、追加的に割り当てられた第一の余剰キャッシュ領域についてのキャッシュモードとしては、上記(A)及び(B)の場合ではPモードが採用され、上記(C)の場合ではBモードが採用されて良い。
図6の前述のS610及びS611での領域解除処理を詳細に説明する。
図8は、領域解除処理の流れを示す。
S801では、判断8−1が行われる。判断8−1では、キャッシュ管理プログラム173が、余剰セット(第一又は第二の余剰セット)に属する論理ボリュームに割り当てられているキャッシュ領域(以下、解除保有キャッシュ領域)において、常駐化されており且つリードヒット率の低いデータがあるか否かを判断する。解除保有キャッシュ領域におけるデータ毎のヒット率(リードヒット率/ライトヒット率)は、前述したサブ領域管理情報(キャッシュ領域の各サブ領域(スロット)に記憶されているデータが常駐化されているか否かを表す情報を含んだ情報)から特定することができる。判断8−1の結果が肯定的であれば、S803が行われ、判断8−1の結果が否定的であれば、S802が行われる。
S802では、判断8−2が行われる。判断8−2では、キャッシュ管理プログラム173が、解除保有キャッシュ領域において、ライトヒット率の低いライトデータがあるか否かを判断する。判断8−2の結果が肯定的であれば、S804が行われ、判断8−2の結果が否定的であれば、S805が行われる。
S803では、キャッシュ管理プログラム173が、リードヒット率の最も低い常駐データが記憶されている領域から優先的に割当てを解除する。
S804では、キャッシュ管理プログラム173が、ライトヒット率の最も低いライトデータが記憶されている領域から優先的に割当てを解除する。
S805では、キャッシュ管理プログラム173が、リードヒット率の最も低いリードデータが記憶されている領域から優先的に割当てを解除する。
S803〜S805では、プログラム173が、例えば、該当部分を解除保有キャッシュ領域から解除することの割当て解除指示を、解除保有キャッシュ領域を有する装置に送信する。割り当て解除された部分が、前述した第二の余剰キャッシュ領域である。第二の余剰キャッシュ領域の容量は、例えば、余剰セットについての要求I/O性能、実測I/O性能及びI/O増加率を基に決定されて良い。これにより、第二の余剰キャッシュ領域の容量が無駄に多くならないようにすることが期待できる。
第二の余剰キャッシュ領域の少なくとも一部が、図6のS610又はS611において、対象ボリュームに追加的に割当てられる。割当てられる領域の容量は、例えば、対象セットについての要求I/O性能、実測I/O性能及びI/O増加率を基に決定されて良い。これにより、追加的に割当てられる領域の容量が無駄に多くならないようにすることが期待できる。もし、第二の余剰キャッシュ領域の一部だけが追加的に割り当てられた場合、残りの領域は、プールキャッシュ領域として管理されて良い。
さて、図6〜図8を参照して説明した処理とは別に、マイグレーション管理処理が実行される。
図9は、マイグレーション管理処理の流れを示す。
S901及びS902で、図6のS601及びS602と同様の処理が行われる。S901及びS902は、S601及びS602それ自体であっても良いし、それとは別の処理であっても良い。
各AP/ボリュームセットについて、S903〜S905を含んだループが行われる。そのループは、I/O増加率の最も高いAP/ボリュームセットから先に行われる。一つのAP/ボリュームセットを例に採り、S903〜S905を説明する。以下、図9及び図10の説明において、そのAP/ボリュームセットを「対象セット」と言い、対象セットに属するAPを「対象AP」と言い、対象セットに属する論理ボリュームを「対象ボリューム」と言う。対象ボリュームは、外部ストレージ3内のボリューム311であるとし、そのボリューム311に対応した仮想ボリュームがストレージ2で管理されているとする。
S903で、判断9−1が行われる。判断9−1では、マイグレーション管理プログラム174が、図6の判断6−1と同様の方法で、将来の或る時点での実測I/O性能がその要求I/O性能より低下するか否かを判断する。判断9−1の結果が否定的であれば、対象セットについての処理が終了となり、次にI/O増加率の高い別のAP/ボリュームセットについてS903が行われる。一方、判断9−1の結果が肯定的であれば、S904が行われる。
S904で、判断9−2が行われる。判断9−2では、マイグレーション管理プログラム174が、対象セットについて図6の処理が行われたか否かを判断する。判断9−2の結果が肯定的であれば、図6の処理が行われても実測I/O性能が低下するということなので、S905が行われる。一方、判断9−2の結果が否定的であれば、対象セットについて図6の処理が行われれば実測I/O性能が低下しない可能性があるので、S905が行われることなく対象セットについての処理が終了となる。
S905で、ボリュームマイグレーション処理が行われる。
なお、前述の判断9−2は、図6のS603〜S611のループに相当する。具体的には、例えば、図6のS607の判断の結果が否定的(NO)ならば、判断9−2の結果も否定的(NO)となり、図6のS607の判断まで行われない、又は、図6のS607の判断の結果が肯定的(YES)ならば、判断9−2の結果も肯定的(YES)となる。このため、マイグレーション間隔(図9に示したループが行われる時間間隔)が、キャッシュ管理間隔(図6のS603〜S611のループが行われる時間間隔)より長い。
図10は、S905のボリュームマイグレーション処理の流れを示す。
S1001で、判断10−1が行われる。判断10−1では、マイグレーション管理プログラム174が、対象ボリューム内のデータを格納できる領域(マイグレーション先ボリューム)を有するストレージがあるかどうかを判断する。この判断は、各ストレージに関する構成情報(例えば、どのストレージがどんなボリュームを有していてそのボリュームがどのRAIDグループを基に形成されているかを表す情報を含んだ情報)を参照することで、行うことができる。判断10−1の結果が否定的であれば、このマイグレーション処理が終了する。一方、判断10−1の結果が肯定的であれば、S1002が行われる。
S1002で、判断10−2が行われる。判断10−2では、マイグレーション管理プログラム174が、S1001で見つかったストレージに対象ボリューム内のデータをマイグレーションした場合、そのストレージが過負荷になるか否かを判断する。具体的には、例えば、マイグレーション管理プログラム174が、対象セットについての実測I/O性能、I/O増加率、キャッシュ使用状況情報などを基に、対象ボリュームをマイグレーションしたと仮定した場合の、マイグレーション先ストレージ内のキャッシュメモリの使用状況の変化を予測し、予測される状況が、過負荷な状況であるか否かを判断する。判断10−2の結果が肯定的の場合、再度S1001が行われる。つまり、対象ボリューム内のデータを格納できる領域を有するストレージがあるかどうかが判断される。一方、判断10−2の結果が否定的の場合、S1003が行われる。
S1003で、マイグレーション管理プログラム174が、マイグレーションスケジュールに関する情報をマイグレーション管理テーブル501に登録する。マイグレーション開始予定時刻は、対象ボリューム内のデータの量、或いは他種の情報を基に、決定されて良い。
以上、本発明の一つの実施形態を説明したが、本発明は、この実施形態に限定されるものでなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
105…管理サーバ

Claims (20)

  1. アクセス元とストレージ装置とを有する計算機システムに備えられるキャッシュ制御装置であって、
    前記アクセス元は、I/O(Input/Output)コマンドを発行し、
    前記ストレージ装置は、複数の記憶デバイスと、キャッシュメモリを有するコントローラとを有し、
    前記キャッシュメモリは、割り当てられたキャッシュ領域を含み、
    前記コントローラが、前記アクセス元からのI/Oコマンドに従ってデータの入出力を行い、その際に、前記キャッシュ領域を利用し、
    前記キャッシュ制御装置は、
    記憶資源と、
    前記記憶資源に接続されたプロセッサと
    を有し、
    前記記憶資源が、
    前記キャッシュ領域に関するキャッシュ使用状況を表す情報であるキャッシュ使用状況情報と、
    前記アクセス元からのI/Oコマンドに従うI/Oの状況を表す情報であるI/O状況情報と
    を記憶し、
    前記プロセッサが、
    (X)前記I/O状況情報を基に、前記アクセス元からのI/Oの性能が低下するか否かを判断し;
    (Y)前記(X)の判断の結果が肯定的の場合に、前記キャッシュ使用状況情報から特定されるキャッシュ使用状況をI/O性能が向上するようなキャッシュ使用状況に変更するキャッシュ制御を行う、
    キャッシュ制御装置。
  2. 前記アクセス元は、論理ボリュームを指定したI/Oコマンドを発行するアプリケーションであり、
    複数のアプリケーションが一以上のホスト装置で実行され、
    一以上のホスト装置と前記ストレージ装置との間に、キャッシュメモリを有する中継装置があり、
    前記複数の記憶デバイスは、複数の論理ボリュームであり、
    前記記憶資源は、アプリケーション管理情報を記憶し、
    前記I/O状況情報は、アプリケーション/ボリュームセット毎に、実際のI/O性能とI/O増加率とを表し、
    前記キャッシュ使用状況情報は、キャッシュ領域毎に、I/O特性と、複数のキャッシュモードから選択されたキャッシュモードとを表し、
    前記アプリケーション管理情報は、アプリケーション/ボリュームセット毎の要求I/O性能を表し、
    前記アプリケーション/ボリュームセットは、アプリケーションとそのアプリケーションから入出力される論理ボリュームとのセットであり、
    前記要求I/O性能は、アプリケーションから要求されるI/O性能であり、アプリケーションからのI/Oの性能の履歴に基づく値であり、
    前記プロセッサは、前記一以上のホスト装置及び/又は前記ストレージ装置から情報を取得し、その情報を基に、前記I/O状況情報、前記キャッシュ使用状況情報及び前記アプリケーション管理情報を更新し、
    各キャッシュモードは、キャッシュ領域に常駐化させておくデータの種類及び/又は容量によって定義されたモードであり、
    前記プロセッサは、第一のアプリケーションと第一の論理ボリュームとのアプリケーション/ボリュームセットである第一のセットについて、以下の処理(A)及び(B):
    (A)前記(X)において、前記第一のセットに対応する要求I/O性能、実際のI/O性能及びI/O増加率を基に、前記第一のセットについて、将来の或る時点でI/O性能がその要求I/O性能より低下するか否かを判断し;
    (B)前記(Y)において、前記(X)の判断の結果が肯定的な場合に、以下の処理(b1)〜(b6):
    (b1)前記第一の論理ボリュームに割り当てられたキャッシュ領域である対象キャッシュ領域についてのキャッシュモードが、前記対象キャッシュ領域についてのI/O特性に適しているか否かを判断する;
    (b2)前記(b1)の判断の結果が否定的な場合、前記キャッシュ制御として、前記対象キャッシュ領域についてのI/O特性に応じて、前記対象キャッシュ領域についてのキャッシュモードを別のキャッシュモードに変更するか、或いは、前記対象キャッシュ領域に記憶されているデータのうち頻繁にリードされるデータを前記対象キャッシュ領域に常駐化させる;
    (b3)前記(b1)の判断の結果が肯定的な場合、第一のパスに関わる第一の余剰キャッシュ領域があるか否かを判断する;
    (b4)前記(b3)の判断の結果が肯定的な場合、前記キャッシュ制御として、前記第一の余剰キャッシュ領域を追加的に前記第一の論理ボリュームに割り当てる;
    (b5)前記(b3)の判断の結果が否定的な場合、別のアプリケーション/ボリュームセットである第二のセットについての実際のI/O性能、I/O増加率及び要求I/O性能を基に、前記第二のセットに属する第二の論理ボリュームに割り当てられているキャッシュ領域の少なくとも一部を解除可能か否か判断する;
    (b6)前記(b5)の判断の結果が肯定的な場合、前記キャッシュ制御として、前記第二の論理ボリュームに割り当てられているキャッシュ領域の少なくとも一部である第二の余剰キャッシュ領域を解除し、且つ、解除した前記第二の余剰キャッシュ領域の少なくとも一部を、前記第一の論理ボリュームに追加的に割り当てる、
    を行い、
    前記第一のパスは、前記第一のアプリケーションと前記第一の論理ボリュームとの間のパスであり、
    前記第一の余剰キャッシュ領域は、前記第一のパスが経由する中継装置内のキャッシュメモリにおける記憶領域であって、いずれの論理ボリュームにも割り当てられていないキャッシュ領域であり、
    前記第二の余剰キャッシュ領域の容量は、前記第二のセットについて実際のI/O性能、I/O増加率及び要求I/O性能を基に決定された容量である、
    請求項1記載のキャッシュ制御装置。
  3. 前記計算機システムが、別のストレージ装置を有し、
    前記ストレージ装置が有する論理ボリュームを前記別のストレージ装置にマイグレーションすることが可能であり、
    前記プロセッサが、以下の(P)及び(Q)の条件に適合する場合に、前記第一の論理ボリュームを前記ストレージ装置から前記別のストレージ装置にマイグレーションさせる:
    (P)前記(B)の処理が行われても、前記第一のセットについてのI/O性能が将来の或る時点でその要求I/O性能より低下すると判断される;
    (Q)前記第一の論理ボリュームが前記ストレージ装置から前記別のストレージ装置にマイグレーションされても前記別のストレージ装置にとって過負荷とならないと推測される、
    請求項2記載のキャッシュ制御装置。
  4. 前記(A)及び(B)の処理が、各アプリケーション/ボリュームセットについて行われ、その際、I/O増加率の最も高いアプリケーション/ボリュームセットから先に行われる、
    請求項2又は3記載のキャッシュ制御装置。
  5. 前記プロセッサは、前記キャッシュ制御として、未割当てのキャッシュ領域である第一の余剰キャッシュ領域を追加的に割り当てる、
    請求項1記載のキャッシュ制御装置。
  6. 前記アクセス元と前記ストレージ装置との間に、キャッシュメモリを有する中継装置があり、
    前記第一の余剰キャッシュ領域は、前記中継装置内のキャッシュメモリが有するキャッシュ領域である、
    請求項5記載のキャッシュ制御装置。
  7. 前記プロセッサは、下記(f1)又は(f2)の場合に、前記第一の余剰キャッシュ領域を追加的に割り当て:
    (f1)常駐トラックリード割合が或る値より高い;
    (f2)常駐トラックリード割合が或る値以下であるが、前記キャッシュ領域についてライトよりもリードが多く、常駐設定されていないデータがない、
    前記常駐トラックリード割合とは、前記キャッシュ領域についての入出力のうち常駐化されているデータがリードされる割合である、
    請求項2乃至6のうちのいずれかに記載のキャッシュ制御装置。
  8. 前記(f1)は、以下の(f11)又は(f12)であり:
    (f11)リードヒット率が或る値より高く、且つ、常駐トラックリード割合が或る値より高い;
    (f12)リードヒット率が或る値以下であるがライト割合が或る値以下であり、且つ、常駐トラックリード割合が或る値より高い、
    前記リードヒット率とは、前記キャッシュ領域についてのリードのうちリード対象のデータが見つかった割合であり、
    前記ライト割合とは、前記キャッシュ領域についての入出力のうちライトが行われた割合である、
    請求項7記載のキャッシュ制御装置。
  9. 前記キャッシュ領域に対する入出力が、設定されたキャッシュモードに従って行われ、
    前記プロセッサは、前記追加的に割り当てられた第一の余剰キャッシュ領域について、ライトデータをキャッシュ領域に常駐させないがリードデータをキャッシュ領域に常駐させるためのキャッシュモードを設定する、
    請求項7又は8記載のキャッシュ制御装置。
  10. 前記キャッシュ領域に対する入出力が、設定されたキャッシュモードに従って行われ、
    前記プロセッサは、以下の(g1)及び(g2)の場合に、前記第一の余剰キャッシュ領域を追加的に割り当て:
    (g1)リードヒット率が或る値以下でありライト割合が或る値より高い;
    (g2)前記キャッシュ領域について設定されているキャッシュモードが、ライトデータ及びリードデータの両方をキャッシュ領域に常駐させるためのキャッシュモードである、
    前記リードヒット率とは、前記キャッシュ領域についてのリードのうちリード対象のデータが見つかった割合であり、
    前記ライト割合とは、前記キャッシュ領域についての入出力のうちライトが行われた割合である、
    請求項2乃至9のうちのいずれかに記載のキャッシュ制御装置。
  11. 前記プロセッサは、前記追加的に割り当てられた第一の余剰キャッシュ領域について、ライトデータ及びリードデータの両方をキャッシュ領域に常駐させるためのキャッシュモードを設定する、
    請求項10記載のキャッシュ制御装置。
  12. 前記プロセッサは、前記キャッシュ制御として、他のキャッシュ領域の少なくとも一部を解除し、解除された部分である第二の余剰キャッシュ領域の少なくとも一部を、新たなキャッシュ領域として追加的に割り当てる、
    請求項1記載のキャッシュ制御装置。
  13. 前記キャッシュ領域の利用の際に、ヒットしたか否かが判定され、
    ヒットしたとは、ライト対象のデータを格納するための領域又はリード対象のデータが格納されている領域が前記キャッシュ領域から見つかることであり、
    前記プロセッサは、前記他のキャッシュ領域のうち、ヒット率が或る値以下であるリードデータが記憶されている第一の部分よりも、ヒット率が或る値以下であるライトデータが記憶されている第二の部分を優先的に解除する、
    請求項12記載のキャッシュ制御装置。
  14. 前記プロセッサは、前記他のキャッシュ領域のうち、前記第二の部分よりも、ヒット率が或る値以下である常駐データが記憶されている第三の部分を優先的に解除する、
    請求項13記載のキャッシュ制御装置。
  15. 前記プロセッサは、アクセス元についての要求I/O性能及び実際のI/O性能を基に、解除する領域の記憶容量を決定する、
    請求項12乃至14のうちのいずれかに記載のキャッシュ制御装置。
  16. 前記プロセッサは、前記キャッシュ制御として、前記キャッシュ領域に存在するリードデータのより多くを常駐化する、
    請求項1記載のキャッシュ制御装置。
  17. 前記キャッシュ領域に対する入出力が、設定されたキャッシュモードに従って行われ、
    前記プロセッサが、前記キャッシュ制御として、前記キャッシュ領域についてのキャッシュモードを、前記キャッシュ領域に常駐化されるデータがより多くなる別のキャッシュモードに変更する、
    請求項1記載のキャッシュ制御装置。
  18. 前記複数の記憶デバイスは、複数の論理ボリュームであり、
    前記計算機システムが、別のストレージ装置を有し、
    前記プロセッサは、前記キャッシュ制御として、前記ストレージ装置から前記別のストレージ装置への論理ボリュームのマイグレーションを行う、
    請求項1記載のキャッシュ制御装置。
  19. 前記プロセッサは、前記キャッシュ制御として、以下の(h1)乃至(h4)のいずれを行ってもI/Oの性能が低下する場合に、前記マイグレーションを行う:
    (h1)未割当てのキャッシュ領域である余剰キャッシュ領域を追加的に割り当てる;
    (h2)他のキャッシュ領域の少なくとも一部を解除し、解除された部分である余剰キャッシュ領域のうちの少なくとも一部を、追加的に割り当てる;
    (h3)前記キャッシュ領域に存在するリードデータのより多くを常駐化する;
    (h4)前記キャッシュ領域についてのキャッシュモードを、前記キャッシュ領域に常駐化されるデータがより多くなる別のキャッシュモードに変更する、
    請求項18記載のキャッシュ制御装置。
  20. アクセス元とストレージ装置とを有する計算機システムで行うキャッシュ制御方法であって、
    前記アクセス元は、I/O(Input/Output)コマンドを発行し、
    前記ストレージ装置は、複数の記憶デバイスと、キャッシュメモリを有するコントローラとを有し、
    前記キャッシュメモリは、割り当てられたキャッシュ領域を含み、
    前記コントローラが、前記アクセス元からのI/Oコマンドに従ってデータの入出力を行い、その際に、前記キャッシュ領域を利用し、
    前記キャッシュ制御方法は、
    (X)前記アクセス元からのI/Oコマンドに従うI/Oの状況を表す情報であるI/O状況情報を基に、前記アクセス元からのI/Oの性能が低下するか否かを判断し、
    (Y)前記(X)の判断の結果が肯定的の場合に、前記キャッシュ領域に関するキャッシュ使用状況を表す情報であるキャッシュ使用状況情報から特定されるキャッシュ使用状況をI/O性能が向上するようなキャッシュ使用状況に変更するキャッシュ制御を行う、
    キャッシュ制御方法。
JP2009138605A 2009-06-09 2009-06-09 キャッシュ制御装置及び方法 Expired - Fee Related JP4862067B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009138605A JP4862067B2 (ja) 2009-06-09 2009-06-09 キャッシュ制御装置及び方法
US12/511,769 US8285935B2 (en) 2009-06-09 2009-07-29 Cache control apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009138605A JP4862067B2 (ja) 2009-06-09 2009-06-09 キャッシュ制御装置及び方法

Publications (2)

Publication Number Publication Date
JP2010286923A true JP2010286923A (ja) 2010-12-24
JP4862067B2 JP4862067B2 (ja) 2012-01-25

Family

ID=43301571

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009138605A Expired - Fee Related JP4862067B2 (ja) 2009-06-09 2009-06-09 キャッシュ制御装置及び方法

Country Status (2)

Country Link
US (1) US8285935B2 (ja)
JP (1) JP4862067B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014041760A1 (ja) * 2012-09-13 2014-03-20 日本電気株式会社 推定装置、データベース稼働状況推定方法およびプログラム記憶媒体
JP2015184707A (ja) * 2014-03-20 2015-10-22 日本電気株式会社 情報処理システム、情報処理装置、情報処理方法、及び、プログラム
JP2018524737A (ja) * 2015-07-13 2018-08-30 サイオス テクノロジー コーポレーションSios Technology Corporation エージェントレスリモートioキャッシングの予測および推薦
WO2018173164A1 (ja) * 2017-03-22 2018-09-27 株式会社日立製作所 データ処理システム
US10095625B2 (en) 2015-06-19 2018-10-09 Hitachi, Ltd. Storage system and method for controlling cache

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8255584B2 (en) * 2010-03-03 2012-08-28 I/O Doctors Llc Systems and methods for managing I/O throughput for large scale computing systems
US9098423B2 (en) * 2011-10-05 2015-08-04 Taejin Info Tech Co., Ltd. Cross-boundary hybrid and dynamic storage and memory context-aware cache system
US8930745B2 (en) * 2012-04-16 2015-01-06 Hitachi, Ltd. Storage subsystem and data management method of storage subsystem
WO2014094306A1 (zh) * 2012-12-21 2014-06-26 华为技术有限公司 一种Cache工作模式的设置方法和装置
JP2021099555A (ja) * 2019-12-19 2021-07-01 株式会社日立製作所 ストレージシステム及びコントローラ配置方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01314358A (ja) * 1988-06-14 1989-12-19 Nec Corp キャッシュメモリ付きデータ処理装置
JPH04191947A (ja) * 1990-11-27 1992-07-10 Oki Electric Ind Co Ltd ディスクキャッシュのモード自動設定機構
JPH10254778A (ja) * 1997-03-14 1998-09-25 Hitachi Ltd 磁気ディスクキャッシュ制御方式
JP2000089916A (ja) * 1998-09-11 2000-03-31 Fujitsu Ltd ファイル制御装置
JP2000347938A (ja) * 1999-06-03 2000-12-15 Nec Corp キャッシュメモリ制御装置およびキャッシュメモリ制御方法
JP2001175537A (ja) * 1999-12-17 2001-06-29 Hitachi Ltd 記憶装置システムのキャッシュ常駐方式
JP2006350780A (ja) * 2005-06-17 2006-12-28 Hitachi Ltd キャッシュ割当制御方法
JP2007102314A (ja) * 2005-09-30 2007-04-19 Fujitsu Ltd ディスクキャッシュ制御装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8549226B2 (en) * 2004-05-14 2013-10-01 Hewlett-Packard Development Company, L.P. Providing an alternative caching scheme at the storage area network level
JP2008112291A (ja) * 2006-10-30 2008-05-15 Hitachi Ltd 記憶制御装置及び記憶制御装置のデータ移動方法
JP2008204055A (ja) * 2007-02-19 2008-09-04 Hitachi Ltd コンテンツ管理方法、ファイルサーバおよび読み出し制御プログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01314358A (ja) * 1988-06-14 1989-12-19 Nec Corp キャッシュメモリ付きデータ処理装置
JPH04191947A (ja) * 1990-11-27 1992-07-10 Oki Electric Ind Co Ltd ディスクキャッシュのモード自動設定機構
JPH10254778A (ja) * 1997-03-14 1998-09-25 Hitachi Ltd 磁気ディスクキャッシュ制御方式
JP2000089916A (ja) * 1998-09-11 2000-03-31 Fujitsu Ltd ファイル制御装置
JP2000347938A (ja) * 1999-06-03 2000-12-15 Nec Corp キャッシュメモリ制御装置およびキャッシュメモリ制御方法
JP2001175537A (ja) * 1999-12-17 2001-06-29 Hitachi Ltd 記憶装置システムのキャッシュ常駐方式
JP2006350780A (ja) * 2005-06-17 2006-12-28 Hitachi Ltd キャッシュ割当制御方法
JP2007102314A (ja) * 2005-09-30 2007-04-19 Fujitsu Ltd ディスクキャッシュ制御装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014041760A1 (ja) * 2012-09-13 2014-03-20 日本電気株式会社 推定装置、データベース稼働状況推定方法およびプログラム記憶媒体
JP2015184707A (ja) * 2014-03-20 2015-10-22 日本電気株式会社 情報処理システム、情報処理装置、情報処理方法、及び、プログラム
US10095625B2 (en) 2015-06-19 2018-10-09 Hitachi, Ltd. Storage system and method for controlling cache
JP2018524737A (ja) * 2015-07-13 2018-08-30 サイオス テクノロジー コーポレーションSios Technology Corporation エージェントレスリモートioキャッシングの予測および推薦
WO2018173164A1 (ja) * 2017-03-22 2018-09-27 株式会社日立製作所 データ処理システム

Also Published As

Publication number Publication date
US20100312967A1 (en) 2010-12-09
US8285935B2 (en) 2012-10-09
JP4862067B2 (ja) 2012-01-25

Similar Documents

Publication Publication Date Title
JP4862067B2 (ja) キャッシュ制御装置及び方法
JP5981563B2 (ja) 情報記憶システム及び情報記憶システムの制御方法
JP5437373B2 (ja) 複数のフラッシュパッケージを有するストレージシステム
JP6114397B2 (ja) 複合型ストレージシステム及び記憶制御方法
JP4684864B2 (ja) 記憶装置システム及び記憶制御方法
US9658779B2 (en) Computer system and control method for computer system
JP5073259B2 (ja) 仮想化システム及び領域割当て制御方法
JP6807376B2 (ja) 仮想ストレージシステム
US8447946B2 (en) Storage apparatus and hierarchical data management method for storage apparatus
JP5595530B2 (ja) データ移行システム及びデータ移行方法
JP4890033B2 (ja) 記憶装置システム及び記憶制御方法
JP5427630B2 (ja) 動的ページ再割当てストレージシステムにおけるアプリケーション及び階層構成の管理
JP5512833B2 (ja) ストレージの仮想化機能と容量の仮想化機能との両方を有する複数のストレージ装置を含んだストレージシステム
WO2014162586A1 (ja) ストレージシステムおよびストレージシステム制御方法
JP2015517697A (ja) 二次記憶装置に基づく記憶領域をキャッシュ領域として用いるストレージシステム及び記憶制御方法
JP6340439B2 (ja) ストレージシステム
JP6056856B2 (ja) ストレージ制御装置、情報処理装置、ストレージ制御プログラム、及びストレージ制御方法
JP6554990B2 (ja) ストレージ制御装置およびストレージ制御プログラム
WO2010119478A1 (en) Storage system and control method therefor
JP5768118B2 (ja) 複数のフラッシュパッケージを有するストレージシステム
JP5945040B2 (ja) 複数のフラッシュパッケージを有するストレージシステム
JP2016192213A (ja) 複数のフラッシュパッケージを有するストレージシステム
JP2017151855A (ja) データ移行装置、データ移行システム、方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110722

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111011

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111107

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141111

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees