特許第6019940号(P6019940)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

特許6019940情報処理装置、コピー制御プログラム、およびコピー制御方法
<>
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000002
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000003
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000004
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000005
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000006
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000007
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000008
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000009
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000010
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000011
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000012
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000013
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000014
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000015
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000016
  • 特許6019940-情報処理装置、コピー制御プログラム、およびコピー制御方法 図000017
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6019940
(24)【登録日】2016年10月14日
(45)【発行日】2016年11月2日
(54)【発明の名称】情報処理装置、コピー制御プログラム、およびコピー制御方法
(51)【国際特許分類】
   G06F 3/06 20060101AFI20161020BHJP
【FI】
   G06F3/06 304F
【請求項の数】9
【全頁数】26
(21)【出願番号】特願2012-190476(P2012-190476)
(22)【出願日】2012年8月30日
(65)【公開番号】特開2014-48834(P2014-48834A)
(43)【公開日】2014年3月17日
【審査請求日】2015年5月12日
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100092152
【弁理士】
【氏名又は名称】服部 毅巖
(72)【発明者】
【氏名】山田 秀憲
(72)【発明者】
【氏名】臼井 和彦
【審査官】 田上 隆一
(56)【参考文献】
【文献】 特開2008−046803(JP,A)
【文献】 特開2006−127003(JP,A)
【文献】 特開2004−179787(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/06
(57)【特許請求の範囲】
【請求項1】
情報を記録可能な記憶装置へのアクセスを制御するアクセス制御部と、
前記記憶装置がコピー先である場合にコピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成し、前記コピー元記憶装置のコピー制御をおこなうコピー制御部に対して前記スケジュールを通知して、前記スケジュールにしたがって前記コピー元記憶装置にコピーセッションのコピーを実行させるコピーセッション管理部と、
前記記憶装置がコピー元である場合にコピー先記憶装置から通知された前記スケジュールにしたがってコピーセッションのコピーを最小単位コピーで実行する実行部と、
を備え
前記実行部は、前記最小単位コピーを所定条件成立まで繰り返し、
前記コピーセッション管理部は、前記所定条件成立を監視し、前記所定条件成立で再スケジューリングをおこなう、
とを特徴とする情報処理装置。
【請求項2】
前記所定条件は、あらかじめ設定した設定回数の最小単位コピーの実行であることを特徴とする請求項記載の情報処理装置。
【請求項3】
前記記憶装置をコピー先記憶装置とする前記コピーセッションが複数ある場合に、
前記コピーセッション管理部は、前記コピー元記憶装置の制御をおこなうすべてのコピー制御部に前記スケジュールを通知することを特徴とする請求項1記載の情報処理装置。
【請求項4】
前記スケジュールは、コピー実行の要否であって、
前記コピーセッション管理部は、前記コピー元記憶装置の制御をおこなうコピー制御部のうち、前記コピー実行の要否を変更するコピー制御部に、前記スケジュールを通知することを特徴とする請求項1記載の情報処理装置。
【請求項5】
情報を記録可能な記憶装置へのアクセスを制御するアクセス制御部と、
前記記憶装置がコピー先である場合にコピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成し、前記コピー元記憶装置のコピー制御をおこなうコピー制御部に対して前記スケジュールを通知して、前記スケジュールにしたがって前記コピー元記憶装置にコピーセッションのコピーを実行させるコピーセッション管理部と、
前記記憶装置がコピー元である場合にコピー先記憶装置から通知された前記スケジュールにしたがってコピーセッションのコピーを最小単位コピーで実行する実行部と、
を備え
前記実行部は、前記最小単位コピーを所定条件成立まで繰り返し、
前記コピーセッション管理部は、前記スケジュールを作成する際、コピー実行中のコピーセッションを複数許容するスケジューリングを行い、前記コピー実行中のコピーセッションごとのコピーデータを格納可能なキャッシュメモリを利用し、前記最小単位コピーを前記所定条件成立まで繰り返した一群のコピーデータ単位で、前記コピー先記憶装置にライトバックする、
とを特徴とする情報処理装置。
【請求項6】
情報を記録可能な記憶装置へのアクセスを制御し、コピー元記憶装置の情報を、コピー先記憶装置にコピーするコピーセッションを管理する処理を、コンピュータに実行させるコピー制御プログラムであって、
前記コンピュータに、
前記記憶装置がコピー先である場合に前記コピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成する処理と、
前記コピー元記憶装置のコピー制御をおこなうコピー制御部に対して前記スケジュールを通知して、前記スケジュールにしたがって前記コピー元記憶装置にコピーセッションのコピーを実行させる処理と、
前記記憶装置がコピー元である場合にコピー先記憶装置から通知された前記スケジュールにしたがってコピーセッションのコピーを最小単位コピーで実行し、前記最小単位コピーを所定条件成立まで繰り返す処理と、
前記所定条件成立を監視し、前記所定条件成立で再スケジューリングをおこなう処理と、
を実行させることを特徴とするコピー制御プログラム。
【請求項7】
情報を記録可能な記憶装置へのアクセスを制御し、コピー元記憶装置の情報を、コピー先記憶装置にコピーするコピーセッションを管理する処理を、コンピュータに実行させるコピー制御プログラムであって、
前記コンピュータに、
前記記憶装置がコピー先である場合に前記コピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成する処理と、
前記コピー元記憶装置のコピー制御をおこなうコピー制御部に対して前記スケジュールを通知して、前記スケジュールにしたがって前記コピー元記憶装置にコピーセッションのコピーを実行させる処理と、
前記記憶装置がコピー元である場合にコピー先記憶装置から通知された前記スケジュールにしたがってコピーセッションのコピーを最小単位コピーで実行し、前記最小単位コピーを所定条件成立まで繰り返す処理と、
前記スケジュールを作成する際、コピー実行中のコピーセッションを複数許容するスケジューリングを行う処理と、
前記コピー実行中のコピーセッションごとのコピーデータを格納可能なキャッシュメモリを利用し、前記最小単位コピーを前記所定条件成立まで繰り返した一群のコピーデータ単位で、前記コピー先記憶装置にライトバックする処理と、
を実行させることを特徴とするコピー制御プログラム。
【請求項8】
情報を記録可能な記憶装置へのアクセスを制御し、コピー元記憶装置の情報を、コピー先記憶装置にコピーするコピーセッションを管理する処理を、コンピュータが実行するコピー制御方法であって、
前記コンピュータは、
前記記憶装置がコピー先である場合に前記コピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成し、
前記コピー元記憶装置におけるコピー制御をおこなうコピー制御部に対して前記スケジュールを通知して、前記スケジュールにしたがって前記コピー元記憶装置にコピーセッションのコピーを実行させ、
前記記憶装置がコピー元である場合にコピー先記憶装置から通知された前記スケジュールにしたがってコピーセッションのコピーを最小単位コピーで実行し、前記最小単位コピーを所定条件成立まで繰り返し、
前記所定条件成立を監視し、前記所定条件成立で再スケジューリングをおこなう、
ことを特徴とするコピー制御方法。
【請求項9】
情報を記録可能な記憶装置へのアクセスを制御し、コピー元記憶装置の情報を、コピー先記憶装置にコピーするコピーセッションを管理する処理を、コンピュータが実行するコピー制御方法であって、
前記コンピュータは、
前記記憶装置がコピー先である場合に前記コピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成し、
前記コピー元記憶装置におけるコピー制御をおこなうコピー制御部に対して前記スケジュールを通知して、前記スケジュールにしたがって前記コピー元記憶装置にコピーセッションのコピーを実行させ、
前記記憶装置がコピー元である場合にコピー先記憶装置から通知された前記スケジュールにしたがってコピーセッションのコピーを最小単位コピーで実行し、前記最小単位コピーを所定条件成立まで繰り返し、
前記スケジュールを作成する際、コピー実行中のコピーセッションを複数許容するスケジューリングを行い、
前記コピー実行中のコピーセッションごとのコピーデータを格納可能なキャッシュメモリを利用し、前記最小単位コピーを前記所定条件成立まで繰り返した一群のコピーデータ単位で、前記コピー先記憶装置にライトバックする、
ことを特徴とするコピー制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、コピー制御プログラム、およびコピー制御方法に関する。
【背景技術】
【0002】
ディスクアレイ装置などのストレージ装置は、ストレージ装置内部のディスク間のコピーや、ストレージ装置間のディスク間でのコピーをおこなう。このとき、1つのコピー先ディスクに対して複数のコピー元ディスクが存在する場合がある。
【0003】
このような場合に、コピー先ディスクの性能が十分でないと、ストレージ装置は、コピー元ディスクの性能低下を惹起することがあり、影響範囲がコピー元ディスクにアクセスする業務の性能低下にまで及ぶことがあった。
【0004】
そのため、コピー処理の順番を変更してコピー先ディスクのディスクアクセスのシーケンシャル性を増加させ、ディスクアクセスの性能を改善するストレージ装置の提案がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2010−191859号公報
【特許文献2】特開2006−146841号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、ストレージ装置は、前述したように、ストレージ装置内部のディスク間のコピー(ローカルコピー)だけでなく、ストレージ装置間のディスク間でのコピー(リモートコピー)をおこなう。
【0007】
コピー構成を把握可能なローカルコピーでは、コピー処理の順番を変更してディスクアクセスの性能を改善することができても、コピー構成を把握できないリモートコピーでは、ディスクアクセスの性能を改善することが期待できない。
【0008】
また、コピー元ディスクが複数のストレージ装置に分散している場合にも、コピー構成の把握が困難であることからディスクアクセスの性能を改善することが期待できない。
1つの側面では、本発明は、コピー先ディスクとコピー元ディスクの配置構成によらずに、ディスクアクセス性能を改善可能な情報処理装置、コピー制御プログラム、およびコピー制御方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するために、以下に示すような、情報処理装置が提供される。情報処理装置は、アクセス制御部と、コピーセッション管理部とを備える。アクセス制御部は、情報を記録可能な記憶装置へのアクセスを制御する。コピーセッション管理部は、記憶装置がコピー先である場合にコピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成し、コピー元記憶装置のコピー制御をおこなうコピー制御部に対してスケジュールを通知して、スケジュールにしたがってコピー元記憶装置にコピーセッションのコピーを実行させる。
【0010】
また、上記目的を達成するために、以下に示すような、情報を記録可能な記憶装置へのアクセスを制御し、コピー元記憶装置の情報を、コピー先記憶装置にコピーするコピーセッションを管理する処理を、コンピュータに実行させるコピー制御プログラムが提供される。コピー制御プログラムは、コンピュータに、記憶装置がコピー先である場合にコピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成する処理と、コピー元記憶装置のコピー制御をおこなうコピー制御部に対してスケジュールを通知する処理と、を実行させる。
【0011】
また、上記目的を達成するために、以下に示すような、情報を記録可能な記憶装置へのアクセスを制御し、コピー元記憶装置の情報を、コピー先記憶装置にコピーするコピーセッションを管理する処理を、コンピュータが実行するコピー制御方法が提供される。コンピュータは、記憶装置がコピー先である場合にコピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成し、コピー元記憶装置におけるコピー制御をおこなうコピー制御部に対してスケジュールを通知して、スケジュールにしたがってコピー元記憶装置にコピーセッションのコピーを実行させる。
【発明の効果】
【0012】
1態様によれば、情報処理装置、コピー制御プログラム、およびコピー制御方法において、コピー先ディスクとコピー元ディスクの配置構成によらずに、ディスクアクセス性能を改善できる。
【図面の簡単な説明】
【0013】
図1】第1の実施形態の情報処理装置の構成例を示す図である。
図2】第2の実施形態のストレージ装置のローカル構成例を示す図である。
図3】第2の実施形態のストレージ装置のリモート構成例を示す図である。
図4】第2の実施形態のコントローラモジュールのハードウェア構成例を示す図である。
図5】第2の実施形態のコピーセッション設定処理のフローチャートを示す図である。
図6】第2の実施形態のセッション管理テーブルの一例を示す図である。
図7】第2の実施形態のRAIDグループ管理テーブルの一例を示す図である。
図8】第2の実施形態のコピーセッションの設定例を示す図である。
図9】第2の実施形態のコピーセッション管理処理のフローチャートを示す図である。
図10】第2の実施形態の実行コピーセッション決定処理のフローチャートを示す図である。
図11】第2の実施形態のコピー実行要否更新処理のフローチャートを示す図である。
図12】第2の実施形態のコピーセッションコピー実行処理のフローチャートを示す図である。
図13】第2の実施形態のコピー実行時のセッション管理テーブルおよびRAIDグループ管理テーブルの遷移例を示す図である。
図14】第3の実施形態のコピーセッションの設定例を示す図である。
図15】第3の実施形態のコピー実行時のキャッシュメモリが保持するデータの遷移例を示す図である。
図16】第3の実施形態の実行コピーセッション低速時決定処理のフローチャートを示す図である。
【発明を実施するための形態】
【0014】
以下、実施の形態を図面を参照して詳細に説明する。
[第1の実施形態]
まず、第1の実施形態の情報処理装置について図1を用いて説明する。図1は、第1の実施形態の情報処理装置の構成例を示す図である。
【0015】
情報処理装置1は、ディスク部6のアクセス制御およびコピー制御をおこなう制御装置であり、ディスク部6とともにストレージ装置を構成する。
ディスク部6は、相対的に記憶容量が小さいが性能が高い(高信頼性、高速性など)オンラインディスク(OL)7と、相対的に記憶容量が大きいが性能が劣る(抑制された高速性など)ニアラインディスク(NL)8、あるいはOL7とNL8のいずれか一方を含む。すなわち、ディスク部6は、異なる性能のOL7とNL8が混在し得る。OL7およびNL8は、所要の情報を記録可能なストレージデバイス(記憶装置)であり、たとえば、HDD(Hard Disk Drive)やSSD(Solid State Drive:フラッシュメモリドライブ)などである。
【0016】
情報処理装置1は、制御対象とするディスク部6でのローカルコピーの他、自己が制御対象とするディスク部6と他の情報処理装置1が制御対象とするディスク部6との間でリモートコピーを実行する。
【0017】
情報処理装置1は、アクセス制御部2と、コピー制御部3とを備える。アクセス制御部2は、ディスク部6へのアクセス(リード/ライト他)制御をおこなう。
コピー制御部3は、コピー元ディスクにおけるコピー元データ領域を、コピー先ディスクにおけるコピー先データ領域にコピーする管理単位であるコピーセッション9を管理する。コピー制御部3は、コピーセッション管理部4と、実行部5とを備える。
【0018】
コピーセッション9は、コピー元とコピー先とを管理するための管理単位である。より具体的には、コピーセッション9は、コピー元ディスクにおけるコピー元データ領域を、コピー先ディスクにおけるコピー先データ領域にコピーするための管理単位である。
【0019】
なお、情報処理装置1a,1b,1cは、それぞれ同様の構成であり、それぞれアクセス制御部2a,2b,2c、コピー制御部3a,3b,3cを備える。アクセス制御部2a,2b,2cは、それぞれディスク部6a,6b,6cのアクセス制御をおこなう。ディスク部6aは、OL7aとNL8aを含み、ディスク部6bは、OL7bとNL8bを含み、ディスク部6cは、OL7cとNL8cを含む。また、コピー制御部3b,3cは、コピー制御部3aと同様の構成であり、コピー制御部3bは、コピーセッション管理部(図示せず)と実行部5bを備え、コピー制御部3cも、コピーセッション管理部(図示せず)と実行部5cを備える。
【0020】
コピーセッション管理部4は、コピーセッション9のスケジューリングをおこなう。コピーセッション9は、リモートコピーのコピーセッション9と、ローカルコピーのコピーセッション9がある。リモートコピーのコピーセッション9は、情報処理装置1が制御対象とするディスク部6をコピー先とし、情報処理装置1の制御対象でないディスク部6をコピー元とするコピーセッション9である。ローカルコピーのコピーセッション9は、情報処理装置1が制御対象とするディスク部6をコピー先かつコピー元とするコピーセッション9である。
【0021】
たとえば、情報処理装置1aのディスク部6aのNL8aをコピー先とするリモートコピーのコピーセッション9は、コピーセッション9a,9b,9cがある。コピーセッション9a,9bは、情報処理装置1bのディスク部6bをコピー元とするコピーセッション9である。また、コピーセッション9cは、情報処理装置1cのディスク部6cをコピー元とするコピーセッション9である。
【0022】
また、情報処理装置1aのディスク部6aのNL8aをコピー先とするローカルコピーのコピーセッション9は、コピーセッション9dがある。コピーセッション9dは、情報処理装置1aのディスク部6aのOL7aをコピー元とするコピーセッション9である。
【0023】
コピー先のコピーセッション管理部4は、コピーセッション9をスケジューリングしたスケジュールを、コピー元ディスクの制御をおこなうコピー制御部3に通知する。コピー元ディスクの制御をおこなうコピー制御部3が複数ある場合、コピー先のコピーセッション管理部4は、各コピー制御部3にスケジュールを通知する。
【0024】
たとえば、コピー先のコピーセッション管理部4aは、コピーセッション9a,9b,9c,9dのスケジューリングをおこない、コピーセッション9a,9b,9c,9dのコピー実行のスケジュールを生成する。コピーセッション管理部4aは、コピー制御部3b,3cにスケジュールを通知する。
【0025】
コピー元の実行部5は、コピー元の実行部5がある情報処理装置1のディスク部6をコピー元ディスクとするコピーセッション9があり、スケジュールを通知された場合に、スケジュールにしたがいコピーセッション9のコピーを実行する。
【0026】
たとえば、コピー先のコピーセッション管理部4aがコピーセッション9a,9b,9c,9dのスケジューリングをおこない、スケジュールの通知をおこなう場合、スケジュールの通知を受けたコピー元の実行部5bは、スケジュールにしたがってコピーセッション9a,9bのコピーを実行する。同様に、スケジュールの通知を受けたコピー元の実行部5cは、スケジュールにしたがってコピーセッション9cのコピーを実行する。
【0027】
なお、コピーセッション9dは、ローカルコピーであるため、コピーセッション管理部4aがコピー先のコピーセッション管理部として、実行部5aがコピー先の実行部として機能し、コピーセッション管理部4aが実行部5aにスケジュールの通知をおこなう。スケジュールの通知を受けたコピー元の実行部5aは、スケジュールにしたがってコピーセッション9dのコピーを実行する。これにより、情報処理装置1aは、ディスク部6aのコピー先記憶装置(NL8a)におけるシーケンシャルアクセス性能を改善する。また、情報処理装置1aは、コピーセッション9が複数ある場合、スケジューリングにより複数のコピーセッション9の無計画なコピーの実行を抑制し、ディスク部6aのコピー先記憶装置(NL8a)におけるシーケンシャルアクセス性能を改善する。
【0028】
また、情報処理装置1b,1cは、ディスク部6aのコピー先記憶装置(NL8a)におけるシーケンシャルアクセス性能の改善に伴い、コピーの実行効率が改善する。情報処理装置1b,1cは、コピーの実行効率の改善により、ディスク部6b,6cのアクセス制御が効率化する。
【0029】
[第2の実施形態]
次に、第2の実施形態のストレージ装置の構成について図2および図3を用いて説明する。ストレージ装置は、システムの要求にしたがいローカルまたはリモートに構成することができる。
【0030】
まず、第2の実施形態のストレージ装置のローカル構成について図2を用いて説明する。図2は、第2の実施形態のストレージ装置のローカル構成例を示す図である。
ストレージ装置10(10a)は、複数のHDD16,17を備え、RAID(Redundant Array of Inexpensive Disks)を構成する。HDD16,17は、ユーザデータや制御情報(後述するセッション管理テーブルやRAIDグループ管理テーブルなど)を格納する。
【0031】
HDD16は、ニアラインディスクであり、HDD17は、オンラインディスクである。HDD16は、大容量、低価格であり、たとえば、500GBから1TBの記憶容量、7200回転/程度の速度である。HDD17は、高速、高信頼性であり、たとえば、146GBから300GBの記憶容量、15000回転/程度の速度である。なお、ニアラインディスクとオンラインディスクは、相対的な関係であり、HDD16,17の構成は、要求される性能とコストとのバランスを考量したうえで構築される。
【0032】
ストレージ装置10は、コントローラモジュール11を備える。コントローラモジュール11は、情報処理装置の1つであり、コピー制御部12、キャッシュメモリ13、ディスクアダプタ14、チャネルアダプタ15、HDD16,17などの資源管理をおこなう。
【0033】
ストレージ装置10aは、コントローラモジュール11aとコントローラモジュール11bの2つのコントローラモジュール11を備える。コントローラモジュール11aとコントローラモジュール11bは、それぞれが制御対象とするHDD16,17と接続する。コントローラモジュール11aとコントローラモジュール11bは、相互に接続する。
【0034】
なお、ストレージ装置10aは、2つのコントローラモジュール11を備えるが、これに限らず、コントローラモジュール11aとコントローラモジュール11bのいずれか一方を備えるものであってもよい。また、ストレージ装置10aは、3つ以上のコントローラモジュール11を備えるものであってもよく、たとえば、4つあるいは8つのコントローラモジュール11を備えるものであってもよい。
【0035】
ストレージ装置10は、チャネルアダプタ15を介してホスト20と接続する。ホスト20は、ユーザが使用するコンピュータであり、ホスト20が発行する指令にもとづいてコピーセッションが設定される。チャネルアダプタ15は、コントローラモジュール11ごとに備えられる。コントローラモジュール11は、複数(たとえば、2つ)のチャネルアダプタ15により複数系統でホスト20と接続する。
【0036】
コントローラモジュール11は、コピー制御部12と、キャッシュメモリ13と、ディスクアダプタ14を備える。コピー制御部12は、コピー元ディスクにおけるコピー元データ領域を、コピー先ディスクにおけるコピー先データ領域にコピーするコピーセッションを管理する。キャッシュメモリ13は、HDD16,17からデータを読み出したときにデータを保持するほか、HDD16,17にデータを書き込むときのバッファとなる。また、キャッシュメモリ13は、ユーザデータや制御情報を格納する。ディスクアダプタ14は、HDD16あるいはHDD17とのインタフェース制御(アクセス制御)をおこなう。
【0037】
このようなストレージ装置10aは、コントローラモジュール11a(あるいは、コントローラモジュール11b)が制御対象とするHDD16,17でデータのコピー(ローカルコピー)をおこなうことができる。また、ストレージ装置10aは、コントローラモジュール11aが制御対象とするHDD16,17と、コントローラモジュール11bが制御対象とするHDD16,17との間でデータのコピー(ローカルコピー)をおこなうことができる。
【0038】
次に、第2の実施形態のストレージ装置のリモート構成について図3を用いて説明する。図3は、第2の実施形態のストレージ装置のリモート構成例を示す図である。
ストレージ装置10b,10cは、ストレージ装置10aと同様に、複数のHDD16,17を備え、RAIDを構成する。
【0039】
ストレージ装置10b,10cは、ストレージ装置10aとの相違点としてリモートアダプタ18を備える。ストレージ装置10b,10cは、リモートアダプタ18を介してネットワーク21に接続することで、ストレージ装置10b,10cを相互に通信可能にしている。
【0040】
ストレージ装置10b,10cは、それぞれチャネルアダプタ15を介してホスト20b,20cと接続する。チャネルアダプタ15およびリモートアダプタ18は、コントローラモジュール11(11c,11d,11e,11f)ごとに備えられる。
【0041】
このようなストレージ装置10bは、ストレージ装置10bが備えるHDD16,17と、ストレージ装置10cが備えるHDD16,17との間でデータのコピー(リモートコピー)をおこなうことができる。
【0042】
次に、第2の実施形態のコントローラモジュール11のハードウェア構成について図4を用いて説明する。図4は、第2の実施形態のコントローラモジュールのハードウェア構成例を示す図である。
【0043】
コントローラモジュール11は、プロセッサ101によって装置全体が制御されている。プロセッサ101には、バス106を介してRAM(Random Access Memory)102と複数の周辺機器が接続されている。プロセッサ101は、マルチプロセッサであってもよい。プロセッサ101は、たとえばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、またはPLD(Programmable Logic Device)である。またプロセッサ101は、CPU、MPU、DSP、ASIC、PLDのうちの2以上の要素の組み合わせであってもよい。
【0044】
RAM102は、コントローラモジュール11の主記憶装置として使用される。RAM102には、プロセッサ101に実行させるOS(Operating System)のプログラムやファームウェア、アプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、プロセッサ101による処理に必要な各種データ(たとえば、システム制御の管理情報)が格納される。また、RAM102は、キャッシュメモリ13であってもよいし、各種データの格納に用いるメモリと別体にキャッシュメモリ13を含むものであってもよい。
【0045】
バス106に接続されている周辺機器としては、不揮発性メモリ103、入出力インタフェース104、および通信インタフェース105がある。
不揮発性メモリ103は、ストレージ装置10の電源遮断時においても記憶内容を保持する。不揮発性メモリ103は、たとえば、EEPROMやフラッシュメモリなどの半導体記憶装置や、HDDなどである。また、不揮発性メモリ103は、コントローラモジュール11の補助記憶装置として使用される。不揮発性メモリ103には、OSのプログラムやファームウェア、アプリケーションプログラム、および各種データが格納される。
【0046】
入出力インタフェース104は、HDDなどの入出力装置と接続して入出力をおこなう。入出力インタフェース104は、HDDなどの記憶装置から送られてくる信号やデータをプロセッサ101やキャッシュメモリ(RAM102)に送信する。
【0047】
通信インタフェース105は、ストレージ装置10内の他のコントローラモジュール11との間でデータの送受信をおこなう。また、通信インタフェース105は、ネットワーク21と接続することで、ネットワーク21を介して、他のコンピュータまたは通信機器、たとえば、他のストレージ装置10との間でデータの送受信をおこなう。
【0048】
以上のようなハードウェア構成によって、第2の実施形態のコントローラモジュール11の処理機能を実現することができる。なお、ホスト20の他、第1の実施形態に示した情報処理装置1も、図4に示したコントローラモジュール11と同様のハードウェアにより実現することができる。
【0049】
次に、第2の実施形態のコピー制御部12が実行するコピーセッション設定処理について図5から図7を用いて説明する。図5は、第2の実施形態のコピーセッション設定処理のフローチャートを示す図である。図6は、第2の実施形態のセッション管理テーブルの一例を示す図である。図7は、第2の実施形態のRAIDグループ管理テーブルの一例を示す図である。
【0050】
コピーセッション設定処理は、ホスト20が発行する指令に対応するコピーセッションを設定する処理である。コピーセッション設定処理は、ホスト20が発行する指令の受付にもとづいて、コピーセッションのコピー元とコピー先に関わるコピー制御部12により実行される。コピー制御部12は、ホスト20からの指令に対して完了を即答し、以降、ホスト20の資源を使用することなくストレージ装置10の資源を用いてデータコピー(たとえば、リモートあるいはローカルなミラーリング、スナップショットなど)を実行する。
【0051】
[ステップS11]コピーセッションのコピー元とコピー先に関わるコピー制御部12は、ホスト20が発行する指令に対応するセッション管理テーブル25を生成する。コピー制御部12は、制御対象とするHDD16,17をコピー元ディスクとする指令である場合に、コピー元ディスクにセッション管理テーブル25を生成する。また、コピー制御部12は、制御対象とするHDD16,17をコピー先ディスクとする指令である場合に、コピー先ディスクにセッション管理テーブル25を生成する。
【0052】
[ステップS12]コピー制御部12は、制御対象とするHDD16,17をコピー先ディスクとする指令であるか否かを判定する。コピー制御部12は、制御対象とするHDD16,17をコピー先ディスクとする指令である場合にステップS13にすすみ、制御対象とするHDD16,17をコピー先ディスクとする指令でない場合にコピーセッション設定処理を終了する。
【0053】
[ステップS13]コピー制御部12は、コピー先ディスクにRAIDグループ管理テーブル26があるか否かを判定する。コピー制御部12は、コピー先ディスクにRAIDグループ管理テーブル26がない場合にステップS14にすすみ、コピー先ディスクにRAIDグループ管理テーブル26がある場合にコピーセッション設定処理を終了する。
【0054】
[ステップS14]コピー制御部12は、コピー先ディスクにRAIDグループ管理テーブル26を生成する。
このようにして、ストレージ装置10は、コピーセッションの設定ごとに、コピー元ディスクとコピー先ディスクに、1つずつセッション管理テーブル25を生成する。また、ストレージ装置10は、コピー先ディスクにRAIDグループ管理テーブル26を生成する。
【0055】
ここで、図6を用いてセッション管理テーブル25について説明する。セッション管理テーブル25は、セッションID(IDentification)、コピー元LU(Logical Unit)番号、コピー先LU番号、セッションステータス、セッションフェーズ、およびコピー実行要否を含む。さらに、セッション管理テーブル25は、コピー元開始LBA(Logical Block Address)、コピー先開始LBA、およびコピーサイズを含む。
【0056】
セッションIDは、コピーセッションを一意に特定可能な識別情報である。セッションIDは、コピーセッションの設定順に付与され、たとえば、シーケンシャルな番号である。LU番号は、RAIDグループを論理的に区分けしたボリュームを意に特定可能な識別情報であり、たとえば、シーケンシャルな番号である。コピー元LU番号は、コピー元となるボリュームを特定する番号である。コピー先LU番号は、コピー先となるボリュームを特定する番号である。
【0057】
なお、LU番号で特定されるボリューム(ロジカルユニット)は、1つのRAIDグループに対して1以上が設定される。したがって、RAIDが、複数のHDD16、あるいはHDD17によって構成されている場合、ボリュームは、複数のHDD16、あるいはHDD17に跨って設定されている場合がある。
【0058】
セッションステータスは、コピーセッションの状態、言い換えれば、コピーの進行状態を表す情報である。セッションステータスには、「Active」、「Suspend」、「ErrorSuspend」、「Reserve」などがある。「Active」は、コピーの実行状態であり、「Suspend」は、コピーが一時停止されている状態である。また、「ErrorSuspend」は、コピーが失敗した状態であり、たとえば、コピーの実行を停止した状態であり、「Reserve」は、コピー開始前の過渡状態である。
【0059】
セッションフェーズは、コピーの進行状態を表す情報である。セッションフェーズには、「Copying」と「Equivalent」がある。「Copying」は、コピーがおこなわれている状態であり、「Equivalent」は、コピーが完了した状態であり、コピー元とコピー先のデータが等価になった状態である。
【0060】
コピー実行要否は、コピーの実行をおこなうか否かの判定に用いる情報であり、「要」と「否」とがある。コピー実行の要否は、コピー先ディスクを制御対象とするコピー制御部12によって決定される。
【0061】
コピー元開始LBAは、コピー元となるボリュームの論理ブロックアドレス(LBA)を特定する情報である。コピー先開始LBAは、コピー先となるボリュームの論理ブロックアドレスを特定する情報である。コピーサイズは、コピー対象となるデータのサイズを特定可能な情報である。
【0062】
ここで、図7を用いてRAIDグループ管理テーブル26について説明する。RAIDグループ管理テーブル26は、RAIDグループ番号、コピー回数、および実行中セッションIDを含む。
【0063】
RAIDグループ管理テーブル26は、RAIDグループごとの、コピーを実行中のコピーセッションと、コピーを実行中のコピーセッションの最小単位コピーの実行回数とを管理する。
【0064】
RAIDグループ番号は、RAIDグループを一意に特定可能な番号である。コピー回数は、コピーを実行中のコピーセッションの最小単位コピーの実行回数である。実行中セッションIDは、コピーを実行中のセッションIDである。第2の実施形態では、実行中セッションIDは、たかだか1つである。
【0065】
次に、コピーセッション設定処理で設定されるコピーセッションについて図8を用いて説明する。図8は、第2の実施形態のコピーセッションの設定例を示す図である。
図8のコピーセッションの設定例は、図示しないホスト20がストレージ装置10dのHDD17をコピー元ディスクにして、ストレージ装置10aのHDD16をコピー先ディスクとするデータコピーの指令を12回発行した場合を示す。なお、図示簡略化のため、コントローラモジュール11の内部にHDD16,17を図示するが、対応関係を明示するものであり、必ずしもコントローラモジュール11の内部にHDD16,17を備えることを意味するものではない。
【0066】
ストレージ装置10dは、コントローラモジュール11g,11h,11iを備える。コントローラモジュール11g,11h,11iは、コピー元ディスクとなるHDD17をそれぞれ制御対象とする。
【0067】
ストレージ装置10aは、コントローラモジュール11aを備える。コントローラモジュール11aは、コピー先ディスクとなるHDD16を制御対象とする。
最初に、コピーセッション50が設定される場合、コントローラモジュール11gは、コピー元ディスクとなるHDD17にセッション管理テーブル25を設定する。また、コントローラモジュール11aは、コピー先ディスクとなるHDD16にセッション管理テーブル25とRAIDグループ管理テーブル26を設定する。
【0068】
次に、コピーセッション51が設定される場合、コントローラモジュール11gは、コピー元ディスクとなるHDD17に、さらにセッション管理テーブル25を設定する。また、コントローラモジュール11aは、コピー先ディスクとなるHDD16にセッション管理テーブル25を設定する。この場合、コントローラモジュール11aは、すでにRAIDグループ管理テーブル26があるため、あらためてRAIDグループ管理テーブル26の設定をおこなわない。
【0069】
以下、コピーセッション52,53,・・・,61が設定され、各コピーセッションごとにコピー元ディスクとコピー先ディスクにセッション管理テーブル25が設定される。
コントローラモジュール11aは、コピーセッションが複数あっても1度に1つのコピーセッションのコピーの実行をおこなうことで、HDD16へのシーケンシャルアクセスによるアクセス時間の短縮を図る。たとえば、コントローラモジュール11aは、コピーセッション50(実線で図示)のコピーの実行をおこない、その他のコピーセッション(破線で図示)のコピーの実行をおこなわない。
【0070】
このような制御は、コピー先であるコントローラモジュール11aが各コピーセッションのスケジュールをRAIDグループ管理テーブル26を用いて管理し、各コントローラモジュール11g,11h,11iにスケジュールを通知することで実現している。
【0071】
なお、コピー先ディスクがHDD16のようにニアラインディスクであり、コピー元ディスクがHDD17のようにオンラインディスクである場合に、HDD16のディスクアクセス性能の影響を受けて、HDD17のディスクアクセス性能が低下することがある。HDD17のディスクアクセス性能の低下は、一般的にニアラインディスクがオンラインディスクに比べてディスクアクセス性能が低いことに起因する。
【0072】
ディスクアレイ装置に搭載されるニアラインディスクは安価で大容量のため、その有効利用によりコストを抑えた大規模システムを構築することが可能であるが、上記した課題を有する。
【0073】
ストレージ装置10は、コピー先ディスクのコントローラモジュール11がコピースケジュールを決定することにより、コピー元ディスクとコピー先ディスクにディスクアクセスの性能差があってもコピー元ディスクのディスクアクセス性能の低下を抑止可能である。このようなストレージ装置10は、業務用ボリュームのバックアップとしてニアラインディスクの活用を容易にする。また、このようなストレージ装置10は、オンラインディスクをバックアップ元となる業務用ボリュームとして使用する場合に、コピー処理の遅延に伴うオンラインディスクでの業務停滞を抑制可能である。
【0074】
次に、コピー先ディスクを管理するコピー制御部12が実行するコピーセッション管理処理について図9を用いて説明する。図9は、第2の実施形態のコピーセッション管理処理のフローチャートを示す図である。
【0075】
コピーセッション管理処理は、コピーセッションを管理しながら、コピーの実行制御をおこなう処理である。コピーセッション管理処理は、コピー先ディスクにセッション管理テーブル25とRAIDグループ管理テーブル26が設定された場合に、コピー先ディスクのコントローラモジュール11のコピー制御部12によって実行される。
【0076】
[ステップS21]コピー制御部12は、実行コピーセッション決定処理を実行する。実行コピーセッション決定処理は、コピーの実行をおこなうコピーセッションを決定する処理である。実行コピーセッション決定処理の詳細は、図10を用いて後で説明する。
【0077】
[ステップS22]コピー制御部12は、セッション管理テーブル25のコピー実行要否が「要」のコピーセッションがあるか否かを判定する。コピー制御部12は、セッション管理テーブル25のコピー実行要否が「要」のコピーセッションがある場合にステップS23にすすみ、ない場合にステップS21にすすむ。
【0078】
[ステップS23]コピー制御部12は、コピー実行要否が「要」のコピーセッションにより特定される、コピー元データ領域からコピー先データ領域に、最小単位(たとえば、256KB)のデータのコピーをおこなう。データのコピーの最小単位は、あらかじめ設定されていればよく、論理ブロック単位など、任意の単位に設定可能である。コピー制御部12は、コピー実行中のコピーセッションのセッションIDを、RAIDグループ管理テーブル26の実行中セッションIDに記録する。
【0079】
[ステップS24]コピー制御部12は、コピー回数を0から開始してステップS23の最小単位コピーが実行されるごとに1インクリメントをおこなう。すなわち、コピー制御部12は、コピー実行中のコピーセッションの最小単位コピーの実行回数を計数(管理)する。コピー制御部12は、コピー実行中のコピーセッションの最小単位コピーの実行回数を、RAIDグループ管理テーブル26のコピー回数に記録する。
【0080】
[ステップS25]コピー制御部12は、コピー終了条件の成否を判定する。コピー制御部12は、コピー終了条件が成立した場合にステップS21にすすみ、コピー終了条件が成立していない場合にステップS23にすすむ。
【0081】
コピー終了条件は、コピー実行中のコピーセッションのコピーの終了、あるいは、最小単位コピーの実行回数が所定値に達した場合であるが、これ以外にも終了条件を設定することが可能である。最小単位コピーの実行回数は、たとえば、256回である。
【0082】
このようにして、ストレージ装置10は、1度のコピーセッションのコピー実行に対して、コピー先ディスクへの、最小単位×所定値(たとえば、256×256KB)のシーケンシャルなディスクアクセスを実現する。これにより、コピー先ディスクを制御対象とするストレージ装置10は、コピー先ディスクのディスクアクセス性能の低下が抑制される。また、コピー元ディスクを制御対象とするストレージ装置10は、コピー元ディスクのディスクアクセス性能の低下が抑制される。
【0083】
なお、コピー制御部12は、最小単位コピーの実行回数により、コピーセッションの1度のコピー実行規模を管理(回数管理)したが、これに限らず、その他のパラメータを用いてコピーセッションの1度のコピー実行規模を管理するようにしてもよい。たとえば、コピー制御部12は、コピーセッションの1度のコピー実行規模を時間によって管理してもよい。その場合、コピー制御部12は、所定時間の最小単位コピーの繰り返し実行により、コピーセッションの1度のコピー実行規模を管理することができる。また、コピー制御部12は、その他のパラメータとして、コピー元ディスクのビジー状況、キャッシュメモリ13の使用状況などを用いることができる。また、コピー制御部12は、1のパラメータだけでなく、複数のパラメータの組み合わせとして、コピーセッションの1度のコピー実行規模を管理するようにしてもよい。
【0084】
次に、コピー先ディスクを管理するコピー制御部12が実行する実行コピーセッション決定処理について図10を用いて説明する。図10は、第2の実施形態の実行コピーセッション決定処理のフローチャートを示す図である。
【0085】
実行コピーセッション決定処理は、コピーの実行をおこなうコピーセッションを決定する処理である。実行コピーセッション決定処理は、コピー先ディスクのコントローラモジュール11のコピー制御部12によって、コピーセッション管理処理のステップS21で実行される。
【0086】
[ステップS31]コピー制御部12は、コピーの実行をおこなうコピーセッションを1つ選択する。具体的には、コピー制御部12は、すべてのコピーセッションのセッション管理テーブル25を監視し、セッションステータスが「Active」であって、セッションフェーズが「Copying」であるコピーセッションを選択対象として抽出する。コピー制御部12は、抽出したコピーセッションについて待ち行列を生成し、コピーの実行をおこなうコピーセッションを先着順で1つ選択する。コピー制御部12は、1度選択されたコピーセッションを待ち行列の末尾とすることで、時系列ポリシーにしたがってサイクリックにコピーセッションの実行順序をスケジュールする。
【0087】
[ステップS32]コピー制御部12は、選択したコピーセッションを所要のコピー元に通知(スケジュールの通知に相当)して実行コピーセッション決定処理を終了する。コピー制御部12は、コントローラモジュール11間の通信、あるいは、ストレージ装置10間の通信によって、コピー元ディスクを管理するコピー制御部12に通知する。
【0088】
なお、コピー制御部12は、コピー実行要否を通知することにより、選択したコピーセッションの通知をおこなう。すなわち、コピー制御部12は、選択したコピーセッションのコピー元ディスクを管理するコピー制御部12に対して、コピー実行要否「要」を通知する。また、コピー制御部12は、選択から外れたコピーセッションのコピー元ディスクを管理するコピー制御部12に対して、コピー実行要否「否」を通知する。
【0089】
コピー実行要否の通知を受けたコピー制御部12は、セッション管理テーブル25を更新する。
なお、コピー先ディスクを管理するコピー制御部12は、コピー実行要否の通知を、コピーセッションのコピー元ディスクを管理する、すべてのコピー制御部12に対しておこなうようにしてもよい。また、コピー先ディスクを管理するコピー制御部12は、コピー実行要否に変更が生じたコピーセッションのコピー元ディスクを管理する、コピー制御部12に対しておこなうようにしてもよい。
【0090】
次に、コピー元ディスクを管理するコピー制御部12が実行するコピー実行要否更新処理について図11を用いて説明する。図11は、第2の実施形態のコピー実行要否更新処理のフローチャートを示す図である。
【0091】
コピー実行要否更新処理は、コピーセッションのコピー実行要否を更新する処理である。コピー実行要否更新処理は、コピー実行要否の通知を受けて実行される。
[ステップS41]コピー制御部12は、コピー実行要否が「要」であるか否かを判定する。コピー制御部12は、コピー実行要否が「要」であればステップS42にすすみ、コピー実行要否が「要」でなければ(すなわち、コピー実行要否が「否」であれば)ステップS43にすすむ。
【0092】
[ステップS42]コピー制御部12は、セッション管理テーブル25のコピー実行要否を「要」に更新してコピー実行要否更新処理を終了する。
[ステップS43]コピー制御部12は、セッション管理テーブル25のコピー実行要否を「否」に更新してコピー実行要否更新処理を終了する。
【0093】
次に、コピー元ディスクを管理するコピー制御部12が実行するコピーセッションコピー実行処理について図12を用いて説明する。図12は、第2の実施形態のコピーセッションコピー実行処理のフローチャートを示す図である。
【0094】
コピーセッションコピー実行処理は、コピーの実行をおこなうコピーセッションを決定する処理である。コピーセッションコピー実行処理は、セッション管理テーブル25がコピー元ディスクに設定されている間、実行される。
【0095】
[ステップS51]コピー制御部12は、コピー実行要否が「要」であるか否かを判定する。コピー制御部12は、コピー実行要否が「要」であればステップS52にすすみ、コピー実行要否が「要」でなければステップS51にすすむ。
【0096】
[ステップS52]コピー制御部12は、コピー実行要否が「要」のコピーセッションにより特定される、コピー元データ領域からコピー先データ領域に、最小単位のデータのコピーをおこなう。
【0097】
[ステップS53]コピー制御部12は、コピー実行要否が「否」であるか否かを判定する。コピー制御部12は、コピー実行要否が「否」であればコピーセッションコピー実行処理を終了する。コピー制御部12は、コピー実行要否が「否」でなければ(すなわち、コピー実行要否が「要」であれば)ステップS52にすすむ。
【0098】
このようにして、コピー元ディスクを管理するコピー制御部12は、コピー先ディスクを管理するコピー制御部12が生成したスケジュールにしたがい、コピーセッションのコピーをおこなう。
【0099】
次に、セッション管理テーブル25が記録する情報の遷移例と、RAIDグループ管理テーブル26が記録する情報の遷移例を、図13を用いてコピーの実行過程にしたがい説明する。図13は、第2の実施形態のコピー実行時のセッション管理テーブルおよびRAIDグループ管理テーブルの遷移例を示す図である。
【0100】
セッション管理テーブル25a,25b,25cは、セッションIDが「1」、「2」、「3」、および「4」の4つのコピーセッションのセッション管理テーブル25のセッションIDと、コピー実行要否をまとめたものである。セッション管理テーブル25a,25b,25cは、説明のための図示である。
【0101】
まず、4つのコピーセッション(セッションIDが「1」、「2」、「3」、および「4」)がセッションID順に設定されているときに、セッションID「1」のコピーセッションがコピーの実行対象に選択されたとする。
【0102】
これにより、コピー先ディスクを制御対象とするコピー制御部12は、セッション管理テーブル25aに示すように、コピー実行要否を更新する。すなわち、セッションID「1」のコピー実行要否を「要」とし、その他のセッションID「2」,[3],[4]のコピー実行要否を「否」とする。また、コピー先ディスクを制御対象とするコピー制御部12は、RAIDグループ管理テーブル26aに示すように、コピー回数を「0」、実行中セッションIDを「1」とする。
【0103】
ここで、コピー先ディスクを制御対象とするコピー制御部12は、コピーセション管理処理のステップS24を実行するごとに、RAIDグループ管理テーブル26のコピー回数を更新する。コピー終了条件のコピー回数「256」に達したときのセッション管理テーブル25が、セッション管理テーブル25bであり、RAIDグループ管理テーブル26がRAIDグループ管理テーブル26bである。
【0104】
ここで、コピーの実行対象となるコピーセッションを更新する選択が行われ、セッションID「2」のコピーセッションがコピーの実行対象に選択される。
これにより、コピー先ディスクを制御対象とするコピー制御部12は、セッション管理テーブル25cに示すように、コピー実行要否を更新する。すなわち、セッションID「2」のコピー実行要否を「要」とし、その他のセッションID「1」,[3],[4]のコピー実行要否を「否」とする。また、コピー先ディスクを制御対象とするコピー制御部12は、RAIDグループ管理テーブル26cに示すように、コピー回数を「0」、実行中セッションIDを「2」とする。
【0105】
以降、各コピーセッションについて、上記手順を繰り返すことで、コピー先ディスクを制御対象とするコピー制御部12は、すべてのコピーセッションについて、コピー先ディスクのシーケンシャルアクセスを実現する。このようにして、ストレージ装置10は、コピー先ディスクとコピー元ディスクの配置構成によらずに、ディスクアクセス性能を改善する。
【0106】
[第3の実施形態]
次に、第3の実施形態のストレージ装置について説明する。第2の実施形態のストレージ装置が実行中セッションIDを、たかだか1つとしていたのに対して、第3の実施形態のストレージ装置は、実行中セッションIDを複数とすることができる。
【0107】
たとえば、ストレージ装置10は、コピー処理よりも、ホスト20からのディスクアクセスを優先しなければならない場合がある。そのため、ストレージ装置10は、ホスト20からのディスクアクセスのバックグラウンドで動作するコピー処理に割り当てる資源を抑制可能にしている。また、ストレージ装置10は、コピー処理に割り当てる資源が抑制された制御状態を低速モード、コピー処理に割り当てる資源に制限がない制御状態を高速モードとして、制御状態を切り替え可能にしている。なお、ここでいう資源の抑制は、スループットの抑制として言い換えることもできる。
【0108】
低速モードにおいて実行中セッションIDをたかだか1つとすると、今度は、コピー先側の資源が有効利用されない場合が生じ、ストレージ装置10のコピー性能を十分に発揮することができない。
【0109】
そこで、低速モードにおいて実行中セッションIDをコントローラモジュール11ごとに複数設定可能なものとして説明する。
ここで、第3の実施形態で設定されるコピーセッションについて図14を用いて説明する。図14は、第3の実施形態のコピーセッションの設定例を示す図である。
【0110】
図14のコピーセッションの設定例は、図示しないホスト20がストレージ装置10dのHDD17をコピー元ディスクにして、ストレージ装置10aのHDD16をコピー先ディスクとするデータコピーの指令を12回発行した場合を示す。なお、図示簡略化のため、コントローラモジュール11の内部にHDD16,17を図示するが、対応関係を明示するものであり、必ずしもコントローラモジュール11の内部にHDD16,17を備えることを意味するものではない。
【0111】
ストレージ装置10dは、コントローラモジュール11g,11h,11iを備える。コントローラモジュール11g,11h,11iは、コピー元ディスクとなるHDD17をそれぞれ制御対象とする。
【0112】
ストレージ装置10aは、コントローラモジュール11aを備える。コントローラモジュール11aは、コピー先ディスクとなるHDD16を制御対象とする。
最初に、コピーセッション65が設定される場合、コントローラモジュール11gは、コピー元ディスクとなるHDD17にセッション管理テーブル25を設定する。また、コントローラモジュール11aは、コピー先ディスクとなるHDD16にセッション管理テーブル25とRAIDグループ管理テーブル26を設定する。
【0113】
次に、コピーセッション66が設定される場合、コントローラモジュール11gは、コピー元ディスクとなるHDD17に、さらにセッション管理テーブル25を設定する。また、コントローラモジュール11aは、コピー先ディスクとなるHDD16にセッション管理テーブル25を設定する。この場合、コントローラモジュール11aは、すでにRAIDグループ管理テーブル26があるため、あらためてRAIDグループ管理テーブル26の設定をおこなわない。
【0114】
以下、コピーセッション67,68,・・・,76が設定され、コピーセッションごとにコピー元ディスクとコピー先ディスクにセッション管理テーブル25が設定される。
コントローラモジュール11aは、コピーセッションが複数あった場合に、所定の許容範囲内で1度に複数のコピーセッションのコピーの実行をおこなう。
【0115】
たとえば、コントローラモジュール11a(コピー制御部12)は、コピーセッション65,69,73(実線で図示)のコピーの実行をおこない、その他のコピーセッション(破線で図示)のコピーの実行をおこなわない。
【0116】
なお、1度に複数のコピーセッションのコピーを実行するために、RAIDグループ管理テーブル26は、第2の実施形態と異なり、複数の実行中セッションIDと、各コピーセッションのコピー回数を記録可能にしている。
【0117】
ただし、同時に、複数のコピーセッションのコピーの実行をおこなうと、コピー先ディスクのシーケンシャルアクセス性が損なわれる。そこで、コントローラモジュール11aは、キャッシュメモリ13に一時的にコピーデータを保持し、所定量(コピーセッションの1度のコピー実行規模)だけ蓄積したところで、コピー先ディスク(HDD16)にライトバックする。
【0118】
キャッシュメモリ13の使用例について、図15を用いて説明する。図15は、第3の実施形態のコピー実行時のキャッシュメモリが保持するデータの遷移例を示す図である。
コントローラモジュール11aは、コピーセッション65,69,73に対してそれぞれ格納領域41,42,43をキャッシュメモリ13に用意する。キャッシュメモリ13には、コピーセッション65,69,73のコピーデータ44,45,46がそれぞれ格納領域41,42,43に保持される(キャッシュメモリ13a)。
【0119】
コピーの実行が進行すると、格納領域41は、コピーセッションの1度のコピー実行規模のコピーデータ47を保持する。また、その他の格納領域42,43もコピーデータ48,49を保持する(キャッシュメモリ13b)。
【0120】
コントローラモジュール11aは、格納領域41がコピーセッションの1度のコピー実行規模のコピーデータ47を保持したことで、コピーデータ47をHDD16にライトバックする。また、その他の格納領域42,43は、コピーの実行が進行し、コピーデータ50,51を保持する(キャッシュメモリ13c)。
【0121】
以降、コントローラモジュール11aは、格納領域42,43がコピーセッションの1度のコピー実行規模のコピーデータを保持したところで、コピーデータをHDD16にライトバックする。
【0122】
これにより、ストレージ装置10は、複数のコピーセッションのコピーの実行をおこなっても、コピー先ディスクのシーケンシャルアクセス性を有することができる。
このような複数のコピーセッションの選択を決定する実行コピーセッション低速時決定処理について図16を用いて説明する。図16は、第3の実施形態の実行コピーセッション低速時決定処理のフローチャートを示す図である。
【0123】
実行コピーセッション低速時決定処理は、コピー先ディスクのコントローラモジュール11のコピー制御部12によって実行される。
[ステップS61]コピー制御部12は、コピーの実行をおこなうコピーセッションを1つ選択する。具体的には、コピー制御部12は、すべてのコピーセッションのセッション管理テーブル25を監視し、セッションステータスが「Active」であって、セッションフェーズが「Copying」であるコピーセッションを選択対象として抽出する。コピー制御部12は、抽出したコピーセッションについて待ち行列を生成し、コピーの実行をおこなうコピーセッションを先着順で1つ選択する。コピー制御部12は、1度選択されたコピーセッションを待ち行列の末尾とすることで、時系列ポリシーにしたがってサイクリックにコピーセッションの実行順序をスケジュールする。
【0124】
[ステップS62]コピー制御部12は、さらにコピーセッションを選択可能な余裕があるか否かを判定する。コピー制御部12は、さらにコピーセッションを選択可能な余裕がある場合にステップS63にすすみ、余裕がない場合にステップS64にすすむ。
【0125】
コピーセッションを選択可能な余裕があるか否かの判定は、選択可能なコピーセッション数をあらかじめ設定した設定値との比較や、その他の基準にしたがっておこなうこともできる。たとえば、コピー元ディスクのスループットをあらかじめ評価した評価値を有し、評価値の合計と、あらかじめ設定した設定値との比較により、コピーセッションを選択可能な余裕があるか否かの判定をおこなうことができる。
【0126】
[ステップS63]コピー制御部12は、コピーの実行をおこなうコピーセッションをさらに1つ選択する。なお、追加するコピーセッションの選択は、各コントローラモジュール11でたかだか1つ、あるいは各コピー元ディスクでたかだか1つのように、選択条件を設けてもよい。これにより、特定のコントローラモジュール11やコピー元ディスクに負荷が集中することを回避できる。
【0127】
[ステップS64]コピー制御部12は、選択したコピーセッションを所要のコピー元に通知(スケジュールの通知に相当)して実行コピーセッション決定処理を終了する。コピー制御部12は、コントローラモジュール11間の通信、あるいは、ストレージ装置10間の通信によって、コピー元ディスクを管理するコピー制御部12に通知する。
【0128】
これにより、ストレージ装置10は、複数のコピーセッションのコピーの実行をおこなっても、コピー先ディスクのシーケンシャルアクセス性を有することができ、コピー先ディスクとコピー元ディスクの配置構成によらずに、ディスクアクセス性能を改善する。
【0129】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、情報処理装置1、ストレージ装置10(アクセス制御部2、コピー制御部3、コピーセッション管理部4、実行部5等)が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD、DVD−RAM、CD−ROM/RWなどがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。
【0130】
プログラムを流通させる場合には、たとえば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【0131】
プログラムを実行するコンピュータは、たとえば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムにしたがった処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムにしたがった処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムにしたがった処理を実行することもできる。
【0132】
また、上記の処理機能の少なくとも一部を、DSP、ASIC、PLDなどの電子回路で実現することもできる。
以上説明した実施形態に基づき、以下の付記を開示する。
【0133】
(付記1) 情報を記録可能な記憶装置へのアクセスを制御するアクセス制御部と、
前記記憶装置がコピー先である場合にコピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成し、前記コピー元記憶装置のコピー制御をおこなうコピー制御部に対して前記スケジュールを通知して、前記スケジュールにしたがって前記コピー元記憶装置にコピーセッションのコピーを実行させるコピーセッション管理部と、
を備えることを特徴とする情報処理装置。
【0134】
(付記2) 前記記憶装置がコピー元である場合にコピー先記憶装置から通知されたスケジュールにしたがってコピーセッションのコピーを実行する実行部を備えることを特徴とする付記1記載の情報処理装置。
【0135】
(付記3) 前記実行部は、最小単位コピーを所定条件成立まで繰り返すことを特徴とする付記2記載の情報処理装置。
(付記4) 前記コピーセッション管理部は、前記所定条件成立を監視し、前記所定条件の成立で再スケジューリングをおこなうことを特徴とする付記3記載の情報処理装置。
【0136】
(付記5) 前記所定条件は、あらかじめ設定した設定回数の最小単位コピーの実行であることを特徴とする付記4記載の情報処理装置。
(付記6) 前記コピーセッション管理部は、コピー実行中のコピーセッションを特定可能な情報と、前記コピー実行中のコピーセッションの前記最小単位コピーの実行回数とを含む実行回数管理情報を前記コピー先に保持することを特徴とする付記5記載の情報処理装置。
【0137】
(付記7) 前記記憶装置をコピー先記憶装置とする前記コピーセッションが複数ある場合に、
前記コピーセッション管理部は、前記コピー元記憶装置の制御をおこなうすべてのコピー制御部に前記スケジュールを通知することを特徴とする付記1記載の情報処理装置。
【0138】
(付記8) 前記スケジュールは、コピー実行の要否であって、
前記コピーセッション管理部は、前記コピー元記憶装置の制御をおこなうコピー制御部のうち、前記コピー実行の要否を変更するコピー制御部に、前記スケジュールを通知することを特徴とする付記1記載の情報処理装置。
【0139】
(付記9) 前記コピー先記憶装置は、複数の記憶装置が構成するRAIDに設定されたボリュームを含むことを特徴とする付記1乃至付記8記載の情報処理装置。
(付記10) 前記コピーセッション管理部は、コピー実行中のコピーセッションをたかだか1つとするスケジューリングをおこなうことを特徴とする付記1乃至付記8記載の情報処理装置。
【0140】
(付記11) 前記コピーセッション管理部は、コピー実行中のコピーセッションを複数許容するスケジューリングが可能であって、
前記コピー実行中のコピーセッションごとのコピーデータを格納可能なキャッシュメモリを備え、前記最小単位コピーを所定条件成立まで繰り返した一群のコピーデータ単位で、前記コピー先記憶装置にライトバックすることを特徴とする付記3記載の情報処理装置。
【0141】
(付記12) 前記コピーセッション管理部は、前記コピー元記憶装置の制御をおこなうコピー制御部ごとに、コピー実行中のコピーセッションをたかだか1つとすることを特徴とする付記11記載の情報処理装置。
【0142】
(付記13) 前記コピー元記憶装置は、オンラインディスクであり、前記コピー先記憶装置は、ニアラインディスクである、
ことを特徴とする付記1記載の情報処理装置。
【0143】
(付記14) 情報を記録可能な記憶装置へのアクセスを制御し、コピー元記憶装置の情報を、コピー先記憶装置にコピーするコピーセッションを管理する処理を、コンピュータに実行させるコピー制御プログラムであって、
前記コンピュータに、
前記記憶装置がコピー先である場合にコピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成する処理と、
前記コピー元記憶装置のコピー制御をおこなうコピー制御部に対して前記スケジュールを通知する処理と、
を実行させることを特徴とするコピー制御プログラム。
【0144】
(付記15) 情報を記録可能な記憶装置へのアクセスを制御し、コピー元記憶装置の情報を、コピー先記憶装置にコピーするコピーセッションを管理する処理を、コンピュータが実行するコピー制御方法であって、
前記コンピュータは、
前記記憶装置がコピー先である場合にコピー元記憶装置の情報のコピーを実行するコピーセッションのスケジュールを作成し、
前記コピー元記憶装置におけるコピー制御をおこなうコピー制御部に対して前記スケジュールを通知して、前記スケジュールにしたがって前記コピー元記憶装置にコピーセッションのコピーを実行させる、
ことを特徴とするコピー制御方法。
【符号の説明】
【0145】
1 情報処理装置
2 アクセス制御部
3,12 コピー制御部
4 コピーセッション管理部
5 実行部
6 ディスク部
7 OL
8 NL
10 ストレージ装置
11 コントローラモジュール
13 キャッシュメモリ
14 ディスクアダプタ
15 チャネルアダプタ
16,17 HDD
18 リモートアダプタ
20 ホスト
21 ネットワーク
25 セッション管理テーブル
26 RAIDグループ管理テーブル
101 プロセッサ
102 RAM
103 不揮発性メモリ
104 入出力インタフェース
105 通信インタフェース
106 バス
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16