JP4744171B2 - 計算機システム及び記憶制御方法 - Google Patents

計算機システム及び記憶制御方法 Download PDF

Info

Publication number
JP4744171B2
JP4744171B2 JP2005078933A JP2005078933A JP4744171B2 JP 4744171 B2 JP4744171 B2 JP 4744171B2 JP 2005078933 A JP2005078933 A JP 2005078933A JP 2005078933 A JP2005078933 A JP 2005078933A JP 4744171 B2 JP4744171 B2 JP 4744171B2
Authority
JP
Japan
Prior art keywords
side file
usage rate
storage
storage system
target 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.)
Expired - Fee Related
Application number
JP2005078933A
Other languages
English (en)
Other versions
JP2006260355A (ja
Inventor
小吾 三上
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 JP2005078933A priority Critical patent/JP4744171B2/ja
Priority to US11/129,619 priority patent/US7430637B2/en
Publication of JP2006260355A publication Critical patent/JP2006260355A/ja
Application granted granted Critical
Publication of JP4744171B2 publication Critical patent/JP4744171B2/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
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • G06F11/2074Asynchronous techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Description

本発明は、データの記憶技術に関する。
例えば、特許文献1に開示のデータコピー方法が知られている。コピー元は、記憶サブシステムであり、その記憶サブシステムには、メモリを含んだ記憶制御機構65と、記憶装置61とが備えられている。コピー先は、記憶サブシステムの外部に存在する他の記憶装置である。
記憶サブシステムは、コピーセッション中にコピー元の記憶装置61における或るトラックがアプリケーション67によって更新される場合、そのトラック内の更新前のデータを、サイドファイルとして、記憶制御機構65におけるメモリに移す。そして、記憶サブシステムは、メモリに移されたサイドファイル(更新前のデータ)を他の記憶装置にコピーする。
特開平6−83677号公報。
上述したデータコピー方法では、記憶装置からメモリにデータを移すために、記憶装置からデータを読出す必要が出るので、コピーの終了までに長い時間がかかる可能性がある。そのため、上記の方法とは別の方法で、データのコピーを行うのが好ましい。
従って、本発明の一つの目的は、記憶装置からメモリにデータを読出してコピーする方法とは別の方法で、他の記憶装置にデータをコピーすることにある。
本発明の他の目的は、後の説明から明らかになるであろう。
本発明の第一の側面に従うストレージシステムは、アクセス要求を発行する要求発行元とコピー先記憶装置を備えた他の(例えば外部の)ストレージシステムとの両方に通信可能に接続することができる。ストレージシステムは、コントローラと、キャッシュメモリを含んだ一以上のメモリと、前記一以上のメモリの少なくとも一つに用意された記憶域であるサイドファイルと、コピー元記憶装置(例えば、物理的又は論理的な記憶装置)とを備える。前記ストレージシステムが書込み対象データ及び書込み要求を前記要求発行元から受信する都度に、前記コントローラが、以下の(1)乃至(3)の処理、
(1)前記受信された書込み対象データを前記キャッシュメモリに書込む処理、
(2)前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを前記コピー元記憶装置に書込む処理、
(3)前記キャッシュメモリに書き込まれる書込み対象データを前記サイドファイルに書込む処理、
を実行する。前記コントローラが、或るタイミングで、前記サイドファイルに蓄積された複数の書込み対象データを前記他のストレージシステムに送信する。それにより、前記コピー元記憶装置に記憶された複数の書込み対象データが前記コピー先記憶装置に書込まれる。
一つの実施態様では、前記サイドファイルは、前記キャッシュメモリに用意されてもよい。
一つの実施態様では、前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況を、前記要求発行元及び/又はそれを制御する発行元コントローラに知らしめることができる。
ここで、「知らしめる」とは、例えば、チェックされた使用状況を通知すること、又は、所定の場所に登録された使用状況を前記要求発行元及び/又はそれを制御する発行元コントローラに読出させることである。
一つの実施態様では、前記コントローラは、前記サイドファイルの使用状況のチェックを行い前記チェックされた使用状況を前記要求発行元及び/又は前記発行元コントローラに知らしめるということを、定期的に実行することができる。
一つの実施態様では、前記コントローラは、所定のイベントを検出した場合に、前記チェックされた使用状況を前記要求発行元及び/又は前記発行元コントローラに知らしめることができる。
一つの実施態様では、前記コントローラは、前記所定のイベントがなくなったことを検出した場合に、前記チェックされた使用状況を前記要求発行元及び/又は前記発行元コントローラに知らしめることをやめることができる。
一つの実施態様では、前記コントローラは、前記チェックされた使用状況を、前記受信されたアクセス要求に対する応答にセットし、前記使用状況がセットされた応答を、前記要求発行元及び/又は前記発行元コントローラに返送することができる。
一つの実施態様では、前記コントローラは、前記アクセス要求のうち読出し要求ではなく書込み要求の前記要求発行元及び/又は前記発行元コントローラに、前記チェックされた使用状況を知らしめることができる。
一つの実施態様では、前記要求発行元は、アクセス要求を発行するアプリケーションプログラムであってもよい。前記ストレージシステムは、前記アプリケーションプログラムと前記アプリケーションプログラムを制御する制御プログラムとを備えたホスト装置に通信可能に接続していてもよい。前記コントローラは、前記チェックされた使用状況を前記制御プログラムに知らしめることができる。
一つの実施態様では、前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況に応じて、前記要求発行元を制御することができる。具体的には、例えば、前記コントローラは、サイドファイルの使用状況が悪い状況になってしまっている(例えば、空きが少なくなっていきている)場合には、その使用状況が改善されるような処理(例えば、書込み対象データを前記ストレージシステムに送信しない)を前記要求発行元に行わせることができる。
本発明の第二の側面に従うシステムは、アクセス要求を発行する要求発行元と、コピー先記憶装置を備えた他のストレージシステムと、前記要求発行元と前記他のストレージシステムとの両方に通信可能に接続されたストレージシステムとを備える。前記ストレージシステムは、コントローラと、キャッシュメモリを含んだ一以上のメモリと、前記一以上のメモリの少なくとも一つに用意された記憶域であるサイドファイルと、コピー元記憶装置とを備える。前記ストレージシステムが書込み対象データ及び書込み要求を前記要求発行元から受信する都度に、前記コントローラが、以下の(1)乃至(3)の処理、
(1)前記受信された書込み対象データを前記キャッシュメモリに書込む処理、
(2)前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを前記コピー元記憶装置に書込む処理、
(3)前記キャッシュメモリに書き込まれる書込み対象データを前記サイドファイルに書込む処理、
を実行する。前記ストレージシステム及び前記他のストレージシステムの少なくとも一方が、前記サイドファイルに蓄積された複数の書込み対象データを前記コピー先記憶装置に書込む。
一つの実施態様では、前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況を前記要求発行元及び/又は前記発行元コントローラに知らしめることができる。前記要求発行元及び/又は前記発行元コントローラは、前記チェックされた使用状況に応じた処理を実行することができる。
一つの実施態様では、前記発行元コントローラは、前記チェックされた使用状況を受け、その使用状況に基づいて、自分の制御対象である前記要求発行元を制御することができる。
一つの実施態様では、前記ストレージシステムは、ホスト装置と通信可能に接続していてもよい。前記ホスト装置は、前記要求発行元であるアプリケーションプログラムと、前記発行元コントローラである制御プログラムと、記憶資源とを備えることができる。前記記憶資源には、前記使用状況がどんな場合にどのアプリケーションプログラムに対してどんな処理を実行させるかを表す対処情報が記憶されていてもよい。前記制御プログラムは、前記受けた使用状況と前記記憶資源内の対処情報とに基づいて、前記アプリケーションプログラムを制御することができる。
本発明の第三の側面に従う装置は、ストレージシステムに通信可能である装置である。前記ストレージシステムは、アクセス要求を発行する要求発行元から前記アクセス要求を受信するものであり、コントローラと、キャッシュメモリを含んだ一以上のメモリと、前記一以上のメモリの少なくとも一つに用意された記憶域であるサイドファイルと、コピー元記憶装置とを備える。前記アクセス要求は、読出し要求又は書込み要求である。前記要求発行元は、前記書込み要求を発行する場合には書込み対象データも発行する。前記ストレージシステムが書込み対象データ及び書込み要求を前記要求発行元から受信する都度に、前記コントローラが、以下の(1)乃至(3)の処理、
(1)前記受信された書込み対象データを前記キャッシュメモリに書込む処理、
(2)前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを前記コピー元記憶装置に書込む処理、
(3)前記キャッシュメモリに書き込まれる書込み対象データを前記サイドファイルに書込む処理、
を実行する。前記ストレージシステム及び前記他のストレージシステムのうちの少なくとも一方により、前記サイドファイルに蓄積された複数の書込み対象データが、他のストレージシステム内のコピー先記憶装置に書込まれる。前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況を前記装置に知らしめる。前記装置は、前記チェックされた使用状況に応じた処理を前記要求発行元に対して実行する。
本発明の第四の側面に従う記憶制御方法は、ストレージシステムが要求発行元から書込み要求及び書込み対象データを受信し、前記受信が行われる都度に、以下の(1)乃至(3)の処理、
(1)前記受信された書込み対象データを、前記ストレージシステムに備えられるキャッシュメモリに書込む処理、
(2)前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを、前記ストレージシステムに備えられるコピー元記憶装置に書込む処理、
(3)前記キャッシュメモリに書き込まれる書込み対象データを、前記ストレージシステムに備えられる一以上のメモリに用意された記憶域であるサイドファイルに書込む処理、
を実行し、或るタイミングで、前記サイドファイルに蓄積された複数の書込み対象データを、前記ストレージシステムの他のストレージシステムに送信し、前記送信された複数の書込み対象データを、前記他のストレージシステムに備えられたコピー先記憶装置に書込む。
上述したコントローラ、発行元コントローラ及び装置のうちの少なくとも一つは、ハードウェア、コンピュータプログラム又はそれらの組み合わせにより構築することができる。コンピュータプログラムは、所定のプロセッサに読み込まれて実行される。また、コンピュータプログラムがプロセッサに読み込まれて行われる情報処理の際、適宜に、メモリ等のハードウェア資源上に存在する記憶域が使用されてもよい。
図1は、本発明の一実施形態に係るシステムのハードウェア構成の概要を示す。
LAN(Local Area Network)等の通信ネットワーク2に、システム管理者用端末3と、一又は複数(説明の便宜上二台とする)の業務サーバ5A及び5Bと、管理サーバ7と、複数(説明の便宜上二台とする)のストレージシステム9A及び9Bとが接続されている。従って、各装置3、5A、5B、7、9A又は9Bは、通信ネットワーク2を介して、他の装置3、5A、5B、7、9A又は9Bと通信可能である。また、複数の業務サーバ5A及び5Bと、複数のストレージシステム9A及び9Bとが、SAN(Storage Area Network)6に接続されている(SAN6に代えて他の通信ネットワークでも良い)。また、ストレージシステム9Aが別のストレージシステム9Bに専用線(例えばファイバチャネルケーブル)4を介して接続されている(専用線4は無くても良い)。
システム管理者用端末3、業務サーバ5A及び5B、及び管理サーバ7は、どれも実質的に同じ構成を採用することができる。そのため、業務サーバ5Aを代表的に例に採り説明する。業務サーバ5Aは、例えば、一以上のCPU(Central Processing Unit)205や記憶資源(例えば一以上のメモリ207及び/又は一以上のハードディスクドライブ(HDD)209)等のハードウェア資源を備えたコンピュータシステムである。業務サーバ5Aは、例えば、パーソナルコンピュータ、ワークステーション、サーバマシン、メインフレーム等として構成することができる。また、業務サーバ5Aは、例えば、キーボードスイッチやポインティングデバイス、マイクロフォン等の情報入力装置(図示せず)と、例えば、モニタディスプレイやスピーカー等の情報出力装置(図示せず)とを備えることもできる。
ストレージシステム9A及び9Bは、どれも実質的に同じ構成を採用することができる。そのため、ストレージシステム9Aを代表的に例に採り説明する。ストレージシステム9Aは、ストレージ制御装置21Aと、一又は複数の記憶装置(例えばHDD)309とを備える。ストレージ制御装置21Aは、ストレージシステム9Aの動作を制御する装置であり、一以上のCPU305や、一以上の制御メモリ307や、一以上のキャッシュメモリ308を備えることができる。制御メモリ307は、ストレージシステム9Aが行う処理の制御に必要とされる情報(例えば図2に記載されている構成情報26A)を記憶するためのメモリである。キャッシュメモリ308は、業務サーバ5A又は5Bと記憶装置309との間でやり取りされるデータを一時的に記憶するためのメモリである。制御メモリ307とキャッシュメモリ308は、必ずしも別々のメモリである必要はなく、例えば、同一のメモリ上で、制御メモリ領域とキャッシュメモリ領域とが用意される方法が採用されても良い。また、複数の記憶装置はRAID構成が採用されてもよい。
上記のハードウェア構成の下で、例えば、ストレージシステム9Aは、専用線4、SAN6又は通信ネットワーク2を介して、他のストレージシステム9Bにデータを送信することができる。
また、例えば、業務サーバ5Aは、データの書き込み要求又はデータの読み出し要求であるアクセス要求を、ストレージシステム9Aに発行し、そのアクセス要求を受けたストレージシステム9Aが、そのアクセス要求を処理することができる。具体的には、例えば、アクセス要求がデータの書き込み要求の場合、ストレージシステム9AのCPU305が、その書き込み要求に従って、業務サーバ5Aからのデータをキャッシュメモリ308に書き込み、キャッシュメモリ308に書かれたデータを読み出して記憶装置309に書き込むことができる。また、例えば、アクセス要求がデータの読み出し要求の場合、ストレージシステム9A内のCPU305が、その読み出し要求に従って、記憶装置309からデータを読み出してキャッシュメモリ308に書き込み、キャッシュメモリ308に書かれたデータを、キャッシュメモリ308から読み出し、読み出し要求の発行元である業務サーバ5Aに送信することができる。
図2は、本発明の一実施形態に係るシステムの各構成要素の機能を説明するためのブロック図である。
システム管理者用端末3は、この実施形態に係るシステムの管理者(以下、システム管理者)が使用する端末である。システム管理者用端末3は、ストレージ管理プログラム15から送信された情報を受信し、受信した情報を、自分が有するディスプレイ画面に表示することができる。ストレージ管理プログラム15から送信される情報には、例えば、アプリケーションプログラム(以下、AP)13A、13B又は13Cの稼動情報、後述する管理テーブル41に書かれるコピーペア状態、及び/又は、後述する履歴情報テーブル45に書かれている情報がある。
各業務サーバ5A、5Bには、例えば、CPU205に読み込まれて動作する複数のコンピュータプログラムが備えられる。複数のコンピュータプログラムには、一以上のAPと、ジョブ制御プログラムとが含まれる。本実施形態では、業務サーバ5Aには、一つのAP13Aと、ジョブ制御プログラム11Aとが備えられる。業務サーバ5Bには、二つのAP13B、13Cと、ジョブ制御プログラム11Bとが備えられる。業務サーバ5Aを代表的に例に採り説明する。
AP13Aは、ストレージシステム9A(又は9B)にアクセス要求を発行する。それにより、AP13Aから送信されたデータがストレージシステム9A(又は9B)内の論理ボリューム29A(又は29B)に書き込まれたり、その論理ボリューム29A(又は29B)からデータが読み出され、読み出されたデータをAP13Aが受信したりする。
ジョブ制御プログラム11Aは、業務サーバ5A上で稼動しているAP13Aを制御することができる(例えば、AP13Aの起動及び/又は停止を実行することができる)プログラムである。ジョブ制御プログラム11Aは、ストレージ管理プログラム15のエージェント的なプログラムであってもよく、ストレージ管理プログラム15からの指令に従って、AP13Aの制御を行なうことができる。また、ジョブ制御プログラム11Aは、業務サーバ5Aのオペレーティングシステムであってもよい。
管理サーバ7は、業務サーバ5A、5B、ストレージシステム9A及び9Bを管理することができるサーバである。管理サーバ7の記憶資源19は、例えば、管理テーブル41、対処情報テーブル43及び履歴情報テーブル45を記憶することができる。また、管理サーバ7には、ストレージ管理プログラム15が備えられている。
管理テーブル41には、業務サーバ5A、5B、ストレージシステム9A及び9Bを管理するための情報が書かれる。具体的には、例えば、管理テーブル41には、どのアプリケーションがどの論理ボリューム(以下、論理ボリュームを「VOL」と表すことがある)にアクセスすることができるかや、どのVOLとどのVOLがペアを構成するかや、そのペアのステータスはどうなっているかを表す情報が書かれる。より具体的には、例えば、図3Aに例示するように、管理テーブル41には、APのID(例えば名称)と、そのAPを備える業務サーバのID(例えば名称)と、そのAPがアクセス可能なプライマリの論理ボリューム(以下、PVOL)のID(例えば番号)と、そのPVOL(換言すればコピー元のVOL)を備えるストレージシステムのID(例えば番号)と、そのPVOLとペアを構成するセカンダリVOL(以下、SVOL)のID(例えば番号)と、そのSVOLを備えるストレージシステムのID(例えば番号)と、そのペアのステータスであるコピーペア状態とが書かれる。コピーペア状態には、例えば、PVOLに格納されるデータをSVOLにコピーすることができる状態である「稼動中」と、それができない状態である「停止中」とがある。
対処情報テーブル43には、後述するサイドファイル27Aの使用状況とその状況に応じた対処処理内容とが書かれる。具体的には、例えば、対処情報テーブル43には、どのAPがサイドファイルの使用率がどんな場合にどんな対処処理が実行されるべきかを表す情報が書かれている。より具体的には、例えば、図3Bに例示するように、対処情報テーブル43には、ジョブ制御プログラムによって制御されるAPのIDと、サイドファイル27Aの使用率の閾値(以下、使用率閾値)と、実際のサイドファイル27Aの使用率がその使用率閾値を超えていた場合にジョブ制御プログラムがAPに実行させる対処処理の内容とが書かれる。なお、図3Bにおいて、閾値に「−」が設定されていた場合、サイドファイル27Aの実際の使用率に関わらず、処理を実行しない。サイドファイルについては後に詳述する。
履歴情報テーブル45には、管理サーバ7が実行した(例えばAPに実行させた)対処処理に関する履歴が書かれる。具体的には、例えば、図3Cに例示するように、履歴情報テーブル45には、履歴を特定するための履歴番号と、管理サーバ7が実行した対処処理と、その対処処理の実行対象と、その対処処理の実行結果と、その対処処理を実行した時刻とが書かれる。
ストレージ管理プログラム15は、この実施形態に係るシステム全体の制御を行なうことができるプログラムである。ストレージ管理プログラム15は、例えば、ストレージシステム9A、9Bに対して、コピーペアの制御(例えば、コピーペア状態を「稼動中」にするか「停止中」にするか)を指示することができる。また、ストレージ管理プログラム15は、所定の又はシステム管理者任意のタイミング(例えば、定期的又は不定期的に)、ストレージシステム9A、9Bの構成情報26A、26Bや動作情報を取得することができる。
ストレージシステム9Aも9Bも実質的に同じ構成を採用することができるので、ストレージシステム9Aを代表的に例に採り説明する。ストレージシステム9Aのストレージシステム9Aの複数の記憶装置309には、一又は複数のVOL29Aが儲けられる。VOL29Aは、他のVOLとペアが構成された場合、PVOLとSVOLのどちらにもなることができるが、以下、説明をわかりやすくするためにPVOLとする(一方、ストレージシステム9B内のVOL29BはSVOLとする)。PVOL29Aは、例えば、業務サーバ5A又は5Bで稼動しているAP13A、13B又は13Cによって使用されるデータを記憶することができる。
また、ストレージシステム9Aには、サイドファイル27Aという記憶領域が用意される。この実施形態で言う「サイドファイル」とは、業務サーバ5A、5BからのPVOL29Aに対するデータの非同期型リモートコピーのために使用される記憶領域である。「非同期型リモートコピー」とは、PVOL29Aにデータを書き込むタイミングとは別のタイミングで、他のストレージシステム9B内のSVOL29B(そのPVOL29Aとペアを構成するSVOL29B)に、PVOL29Aに書き込むデータをコピーすることである。サイドファイル27Aは、PVOL29Aに書き込まれるデータを一時的に記憶するための記憶領域とされる。サイドファイル27Aには、N個(Nは一以上の整数)のデータがPVOL29Aに書き込まれる場合にはそれらN個のデータの全てが書き込まれる。サイドファイル27Aは、ストレージシステム9A内の記憶資源のどこに用意されてもよいが、本実施形態では、キャッシュメモリ308に用意される。従って、キャッシュメモリ308には、業務サーバ5A、5BとPVOL29Aとの間でやり取りされるデータが一時的に記憶される領域(以下、「メイン領域」と言う)28Aと、サイドファイル27Aとが含まれることになる。PVOL29Aと業務サーバ5A、5Bとの間でやり取りされるデータは、メイン領域28Aに一時的に格納されるが、本実施形態では、そのメイン領域28Aに書かれたデータはサイドファイル27Aにも書き込まれる。メイン領域28Aに書かれたデータは、例えば、PVOL29Aとサイドファイル27Aとの両方に書き込まれた場合に、メイン領域28Aから削除されてもよいが、サイドファイル27Aに書かれたデータは、少なくともSVOL29Bへのコピーが完了するまでは、削除されない。サイドファイル27Aへのデータの書込みや、サイドファイル27Aから他のストレージシステム9B内へのリモートコピーについては、後に詳述する。また、PVOL29Aに書き込まれた順序でSVOL29Bにもデータが書かれるようにするため、制御プログラム23Aは、リモートコピーでは、データの書込み順序を特定させられるような情報もコピー先のストレージシステム9Bに送るが、これについても後に詳述する。
ストレージ制御装置21Aの記憶資源(例えば図1の制御メモリ307)には、構成情報26Aが記憶される。ストレージ制御装置21Aには、CPU305に読み込まれて動作する複数のコンピュータプログラムが備えられる。それら複数のコンピュータプログラムには、例えば、制御プログラム23Aと通知プログラム25Aとがある。
構成情報26Aは、ストレージシステム9A内の構成に関する情報である。具体的には、例えば、構成情報26Aは、どのVOLとどのVOLがペアを構成するかや、そのペアのステータスはどうなっているかを表す情報が書かれる。より具体的には、例えば、構成情報26Aは、図3Aに例示した管理テーブル41からアプリケーションID及び業務サーバIDを除いた情報を含んでいる。
制御プログラム23Aは、ストレージ制御装置21Aの動作を制御することができるプログラム(例えばオペレーティングシステム)である。具体的には、例えば、制御プログラム23Aは、アクセス要求を受信したり、受信したアクセス要求に基づいて業務サーバ5A、5BとPVOL29Aとの間のキャッシュメモリ308Aを介してのデータのやり取りを制御したりすることができる。また、例えば、制御プログラム23Aは、PVOL29Aに書き込まれるデータをサイドファイル27Aに書込んだり、構成情報26Aを参照することにより、どのPVOL29Aに対してどのSVOL29Bが対応しているかを特定し、サイドファイル27Aに蓄積されたデータを他のストレージシステム9B内の上記特定されたSVOL29Bに書き込んだりすることができる。また、例えば、制御プログラム23Aは、アクセス要求を受けた場合にそのアクセス要求に関する情報を所定の記憶域(以下、アクセス履歴記憶域)24に書き込むこともできる。アクセス履歴記憶域24には、例えば、各アクセス要求毎に、そのアクセス要求を受信した時刻や、そのアクセス要求の種別(例えば、読出し要求と書込み要求のどちらであるか)や、そのアクセス要求の発行元(業務サーバ又はAP)のID(例えばWWN(World Wide Name))がある。
通知プログラム25Aは、サイドファイル27Aの使用率(以下、「サイドファイル使用率」と言う)を業務サーバ5A、5Bに通知することができるプログラムである。具体的には、例えば、通知プログラム25Aは、第一のタイミングで、サイドファイル使用率をチェックし、第二のタイミングで、チェックされたサイドファイル使用率を、特定の宛先に通知することができる。なお、「第一のタイミング」としては、例えば、(A)定期的に、(B)不定期的に、又は、(C)ストレージ制御装置21Aが書込み要求を受信したとき、のうちの少なくとも一つを採用することができる。また、「第二のタイミング」としては、例えば、(a)第一のタイミングの直後(例えば実質的に直後)、(b)所定のイベントの発生が検出されたとき(例えば、チェックされたサイドファイル使用率が所定の値(例えば50%)を超えていたとき)、(c)業務サーバ5A、5Bから受信した書込み要求に対する応答が返送されるとき、の少なくとも一つを採用することができる。(b)のタイミングが採用される場合、例えば、SNMP(Simple Network Management Protocol)トラップ送信のようにイベントドリブンで通知が行われてもよい。また、この場合、所定のイベントが検出できている間は、サイドファイル使用率を通知するようにし(例えば定期的に通知するようにし)、所定のイベントがなくなったことが検出されたならば(例えば、サイドファイル使用率が所定の値以下になったならば)、サイドファイル使用率の通知をやめることができる。(c)において、応答は、例えば、書込み要求の受信直後に返されても良いし、書込み要求に従うデータがキャッシュメモリ308Aに書かれたときに返されても良い。(c)のタイミングが採用される場合、通知プログラム25Aは、その応答に、チェックされたサイドファイル使用率を埋め込むことができる。それにより、サイドファイル使用率が埋め込まれた応答が業務サーバ5A、5B(例えば、AP13A及び/又は制御プログラム11A)に返送される。サイドファイル使用率は、上記所定のタイミングで、通知プログラム25A或いは制御プログラム23A等のコンピュータプログラムによって算出されてもよい。通知プログラム25Aは、算出されたサイドファイル使用率をチェックすることができる。また、サイドファイル使用率の通知先となる「特定の宛先」としては、例えば、業務サーバ、業務サーバ内のアプリケーション、又は、そのアプリケーションを制御するジョブ制御プログラムとすることができる。具体的には、例えば、「特定の宛先」は、サイドファイル使用率の増加を抑えることに貢献することが期待される物(例えば、サイドファイル使用率を減少することに貢献することが期待される物)とすることができる。具体的には、例えば、サイドファイル使用率を通知しようとする場合に受信された書込み要求の発行元(又はその発行元を制御する物)とすることができる。より具体的には、例えば、通知プログラム25Aは、上記第二のタイミングの時刻と、アクセス履歴記憶域24に書かれている書込み要求の受信時刻とを比較し、第二のタイミングの時刻以降(例えば、第二のタイミングの時刻から所定時間内)が受信時刻になっている書込み要求の発行元又はそれを制御する物を上記特定の宛先とし、その発行元(例えばアプリケーション或いは業務サーバ)又はそれを制御する物(例えばジョブ制御プログラム或いは管理サーバ)にサイドファイル使用率を通知することができる。
以下、図2を参照して、本実施形態に係るシステムで行われる処理について説明する。
例えば、業務サーバ5Aでは、AP13A(例えば、トランザクション業務を行うためのAP)が稼働することができ、そのAP13Aは、ジョブ制御プログラム11Aによって制御されるものとする。また、業務サーバ5Bでは、AP13B及び13C(例えば、いずれもバッチ業務を行うためのアプリケーション)が稼動することができ、これらは、ジョブ制御プログラム11Bによって制御されるものとする。また、管理サーバ7の記憶資源19には、管理テーブル41、対処情報テーブル43及び履歴情報テーブル45が予め用意されているものとする。管理サーバ7におけるストレージ管理プログラム15は、ストレージシステム9A、9B内の構成情報26A、26Bを所定のタイミングで(例えば定期的に)ストレージシステム9A、9Bから取得し、取得した構成情報26A、26Bに基づいて、管理テーブル41を更新することができる。また、通知プログラム25Aによるサイドファイル使用率のチェックは、定期的に行われるものとし(つまり上記(A)のタイミングで行われるものとし)、サイドファイル使用率の通知も、定期的に行われる(つまり上記(b)のタイミングで行われる)ものとする。
このような環境の下で、例えば、以下のようなステップS1乃至S7の処理が行われる。
ステップS1
業務サーバ5A上のジョブ制御プログラム11Aは、所定のタイミングで(例えば、AP13Aを起動したときに)、管理サーバ7のストレージ管理プログラム15から、ターゲットのAPに関する対処情報を取得し、取得された対処情報を、業務サーバ5Aの記憶資源17Aに書き込む。これは、業務サーバ5B上のジョブ制御プログラム11Bも実行することができる。ここで、「ターゲットのAP」とは、例えば、ジョブ制御プログラム11Aにとっては、そのジョブ制御プログラム11Aの制御対象となるAPである。ジョブ制御プログラム11Aは、例えば、そのAPのIDに対応する対処情報(例えば、「サイドファイル使用率の閾値」及び「実行する対処処理」)をストレージ管理プログラム15から受信し、受信した対処情報をAPのIDに対応づけて記憶資源17Aに書き込むことができる。
ステップS2
AP13A、13B及び13CのうちAP13Aを代表的に例に採り説明する。AP13Aは、書込み対象データ及び書込み要求(書込み要求には、例えば、書込み対象データの書込み先となるPVOL29AのIDが含まれる)をストレージシステム9Aに発行する。ストレージシステム9Aのストレージ制御装置21Aが、書込み対象データ及び書込み要求を受信する。制御プログラム23Aが、受信したアクセス要求が書込み要求であること、書込み要求を受信した時刻、書込み要求の発行元のID等を、アクセス履歴記憶域24に書き込む。また、制御プログラム23Aは、書込み対象データを、キャッシュメモリ308Aのメイン領域28Aに一時記憶させ、書込み要求が済んだことを表す応答を、AP13Aに返す。また、制御プログラム23Aは、メイン領域28Aに記憶させた書込み対象データをメイン領域28Aから読出し、読出した書込み対象データをPVOL29Aに書き込む。また、制御プログラム23Aは、所定のタイミングで(例えば、メイン領域28Aに書込み対象データを書き込むタイミングと実質的に同じタイミングで、或いは、書込み対象データをメイン領域28Aに書いた後に)、書込み対象データをサイドファイル27Aにも書き込む。その際、制御プログラム23Aは、例えば、リモートコピーではパケットの追い越し等が発生するため、複数の書込み対象データがPVOL29Aにどのような順番で書き込まれたかをコピー先のストレージシステム9Bに理解させられるような情報を生成する。具体的には、例えば、制御プログラム23Aは、図3Dに例示するように、書込み対象データをサイドファイル27Aに書き込む都度、タイムスタンプを含んだ付加情報を書込み対象データに付加し、付加情報が付加された書込み対象データをサイドファイル27Aに書き込む。付加情報に含まれるタイムスタンプは、例えば、書込み対象データ及び書込み要求の受信時刻、或いは、キャッシュメモリ308Aに書込み対象データが書かれた時刻とすることができる。また、付加情報には、更に、その付加情報が付加される書込み対象データの書込み先PVOL29AのIDに対応したコピー先のID(制御プログラム23Aが構成情報26Aを参照することにより特定することができるストレージシステム及びSVOLのID)が、含まれていても良い。
ステップS3
サイドファイル27Aには、例えば、少なくとも、M回目(Mはゼロ以上の整数)のリモートコピーが行われてからM+1回目のリモートコピーが行われる間にストレージ制御装置21Aが受信した全ての書込み対象データが蓄積されている。また、各書込み対象データには、タイムスタンプを含んだ付加情報が付加されている。制御プログラム23Aは、M+1回目のリモートコピーでは、サイドファイル27Aに格納されている全ての書込み対象データ及び付加情報を他のストレージシステム9Bに転送する。その際、もし、他のストレージシステムが複数個存在する場合、どの書込み対象データ及び付加情報のセットをどの他のストレージシステムに送信するかは、例えば、付加情報に含まれている所定の情報要素(例えば、コピー先となるストレージシステム及びSVOLのID)から、特定されても良い。他のストレージシステム9Bのストレージ制御装置21Bは、書込み対象データ及び付加情報のデータセットを複数個受信する。ストレージ制御装置21B内の制御プログラム23Bは、受信した複数のデータセット内の複数の書込み対象データを、キャッシュ領域のメイン領域28Bに書き込む。制御プログラム23Bは、メイン領域28Bに書き込まれた複数の書込み対象データを、複数のデータセット内の複数のタイムスタンプから特定される順序で、SVOL29Bに格納する。どの書込み対象データをどのSVOL29Bに格納するかは、例えば、付加情報に含まれている所定の情報要素(例えば、コピー先となるSVOL29BのID)から、特定することができる。
ステップS4
通知プログラム25Aは、定期的に、サイドファイル使用率のチェックを行い、チェックされたサイドファイル使用率を特定の宛先に通知する。ここでは、例えば、通知プログラム25Aは、アクセス履歴記憶域24を参照して、サイドファイル使用率の通知を行おうとするときの時刻以降に受信した書込み要求の発行元としてAP13Bを特定し、特定されたAP13Bを制御するジョブ制御プログラム11Bに、サイドファイル使用率を通知したとする。ジョブ制御プログラム11Bにサイドファイル使用率を通知する場合、例えば、AP又は業務サーバのIDとジョブ制御プログラムのIDとの対応関係を表す情報が記憶された所定の記憶域を参照することにより、発行元APを制御するジョブ制御プログラム(つまり、通知先とするジョブ制御プログラム)を特定することができる。
ステップS5
業務サーバ5Bのジョブ制御プログラム11Bは、サイドファイル使用率の通知を受ける。業務サーバ5Bの記憶資源17Bには、例えば、使用率閾値と、それに対応する対処処理の内容を表す情報とのセットが書かれている。ジョブ制御プログラム11Bは、通知されたサイドファイル使用率と、記憶資源17Bに記憶されている使用率閾値との比較を行う。その比較の結果、サイドファイル使用率が使用率閾値を超えていれば、ジョブ制御プログラム11Bは、その使用率閾値に対応する対処処理を実行する。具体的には、例えば、図3Bに例示する対処情報テーブル43がある場合には、記憶資源17Bには、ステップS1での処理により、AP13B(ID「13B」のAP)について、使用率閾値「60%」と、実行する対処処理「アプリケーション停止」とが記録され、且つ、AP13Cについて、使用率閾値「70%」と、実行する対処処理「コピーペア停止」とが記録される。ここで、サイドファイル使用率が60%を超えているが70%以下の場合、上記の比較により、サイドファイル使用率は使用率閾値「60%」を超えていると判断されるので、ジョブ制御プログラム11Bは、AP13Bを停止する。ジョブ制御プログラム11Bは、対処処理を実行した場合、実行した対処処理に関する処理結果情報(例えば、どのAPに対してどんな対処処理を実行しその対処処理は正常に終了したか否か)を、ストレージ管理プログラム15に通知する。なお、通知されたサイドファイル使用率が70%を超えている場合、上記の比較により、サイドファイル使用率は使用率閾値「70%」を超えているとも判断されるので、ジョブ制御プログラム11Bは、AP13Bの停止に加えて、例えば、AP13Cに関わるペアを管理テーブル41から特定し、そのペアのコピーペア状態を停止中にするよう要求することができる。例えば、ジョブ制御プログラム11Bは、管理サーバ7、ストレージシステム9A又は9Bに要求することができる。管理サーバ7にコピーペア停止を要求した場合、管理サーバ7が、コピーペアの停止をストレージシステム9A又は9Bに要求することができる。コピーペアの停止が要求された場合、例えば、ストレージシステム9Aによって、そのペアのコピーペア状態が「停止中」にされ、その結果が、所定のタイミングで、管理サーバ7の管理テーブル41に反映されてもよい。
ステップS6
ストレージ管理プログラム15は、処理結果情報を受信し、受信した処理結果情報に含まれている情報要素を履歴情報テーブル45に書き込む。
ステップS7
管理サーバ7のストレージ管理プログラム15は、記憶資源19に書かれている情報の全部又は一部を、システム管理者用端末3に送信する。送信される情報は、例えば、管理テーブル41、対処情報テーブル43又は履歴情報テーブル45である。送信された情報は、システム管理者用端末3のディスプレイ画面に表示される。
以上の通り、ストレージシステム9Aは、サイドファイル使用率をチェックし、チェックされたサイドファイル使用率を、特定の宛先(例えば、業務サーバ5A、5B、AP13A、13B、13C、ジョブ制御プログラム11A、11B及び管理サーバ7のうちの少なくとも一つ)に通知することができる。その際、ストレージシステム9Aは、特定の状況に応じて(例えば、チェックされたサイドファイル使用率の値に応じて、又は、サイドファイル使用率の通知又はチェックを行うタイミングと書込み要求を受信したタイミングとに応じて)、複数の宛先候補の中から宛先を選択してもよい。宛先側では、通知されたサイドファイル使用率が使用率閾値を超えているか否かに基づいて、所定の対処処理を実行するか否かを制御することができる。
以下、上述した処理について、更に詳細に説明する。
図4Aは、ステップS1でジョブ制御プログラムが行う処理の流れの一例を示す。
ジョブ制御プログラム11Aを代表的に例に採り説明する。ジョブ制御プログラム11Aは、管理サーバ7のストレージ管理プログラム15を介し、対処情報テーブル43の或るレコード(行)からアプリケーションIDを取得する(S21)。
ジョブ制御プログラム11Aは、取得されたアプリケーションIDが、自分が制御するAPのIDに一致するか否かを判断する(S22)。一致しなければ(S22でNO)、ジョブ制御プログラム11Aは、次のレコードを参照して(S23)、再びS21を行い、一致すれば(S22でYES)、そのアプリケーションIDに対応する「サイドファイル使用率の閾値」及び「実行する対処処理」を取得する(S24)。ジョブ制御プログラム11Aは、取得した「サイドファイル使用率の閾値」及び「実行する対処処理」を、対応するアプリケーションIDに対応づけて、記憶資源17Aに書き込むことができる。
図4Bは、ステップS4で通知プログラムが行う処理の流れの一例を示す。
通知プログラム25Aは、サイドファイル使用率のチェック時になった場合、サイドファイル使用率のチェックを行う(S31)。この場合、例えば、制御プログラム23Aが、サイドファイル使用率を算出し、算出した結果を所定の記憶域に書き、通知プログラム25Aが、その所定の記憶域から、算出されたサイドファイル使用率を取得してもよい。
通知プログラム25Aは、アクセス履歴記憶域24を参照することにより、サイドファイル使用率の通知先を決定する(S32)。具体的には、例えば、通知プログラム25Aは、現時点以降に受信した書込み要求の発行元APを制御するジョブ制御プログラムを通知先としてもよいし、現在処理中の(つまり書込み対象データがPVOL29Aに書かれている最中の)書込み要求の発行元APを制御するジョブ制御プログラムを通知先としてもよい。
通知プログラム25Aは、決定された通知先にサイドファイル使用率を通知する(S33)。
図5は、ステップS5でジョブ制御プログラムが行う処理の流れの一例を示す。なお、この処理流れは、「−」でない使用率閾値に対応づけられる対処処理が「アプリケーション停止」と「コピーペア停止」の二種類である場合の例である。
ジョブ制御プログラム11Bを代表的に例に採り説明する。ジョブ制御プログラム11Bは、サイドファイル使用率を受信した場合(S41)、記憶資源17B内の使用率閾値を取得する(S42)。
次に、ジョブ制御プログラム11Bは、使用率閾値が「−」であれば(S43でYES)、処理を終え、そうでなければ(S43でNO)、サイドファイル使用率が使用率閾値よりも大きいか否かの判断を行う(S44)。
ジョブ制御プログラム11Bは、S44で否定的な判断結果が得られた場合(S44でNO)、処理を終え、そうでない場合(S44でYES)、その使用率閾値に対応する対処処理を特定する(S45)。
特定された対処処理が「アプリケーション停止」であれば(S46でYES)、ジョブ制御プログラム11Bは、その対処処理に対応するAP13Bを停止させ(S48)、その対処処理の処理結果に関する処理結果情報をストレージ管理プログラム15に通知する(S49)。一方、特定された対処処理が「コピーペア停止」であれば、ジョブ制御プログラム11Bは、ストレージ管理プログラム15に、コピーペア停止を要求する(S47)。この場合、ストレージ管理プログラム15が、コピーペアの停止をストレージシステム9A又は9Bに要求する。
図6は、ステップS6でストレージ管理プログラム15が行う処理の流れの一例を示す。
ストレージ管理プログラム15は、ジョブ制御プログラム11Bから処理結果情報を受信し(S51)、受信した処理結果情報に基づいて履歴情報テーブル45を更新する(S52)。具体的には、例えば、受信した処理結果情報には、「実行した対処処理」、「対処処理の対象」、「対処処理の実行結果」及び「対処処理を実行した時刻」という、履歴情報テーブル45の各レコードのレコード要素が含まれている。ストレージ管理プログラム15は、そういったレコード要素「実行した対処処理」、「対処処理の対象」、「対処処理の実行結果」及び「対処処理を実行した時刻」を、履歴情報テーブル45に書き込む。
図7は、図5のS47で行われる処理の流れの一例を示す。
ストレージ管理プログラム15は、コピーペアの要求を受ける場合、それの要求元のジョブ制御プログラム11Bから、対象となるAPのIDと、そのジョブ制御プログラム11Bを備える業務サーバ5BのIDとを受ける(S61)。
ストレージ管理プログラム15は、管理テーブル41の或るレコードから、アプリケーションID及び業務サーバIDを取得する(S62でYES、S63)。ストレージ管理プログラム15は、取得されたアプリケーションID及び業務サーバIDが、S61受けたアプリケーションID及び業務サーバIDと同じであって(S64でYES)、それらのIDに対応するターゲットのコピーペア状態が「稼働中」であれば(S65でYES)、S66を行う。すなわち、ストレージ管理プログラム15は、ターゲットのコピーペア状態に対応するPVOL及びSVOLに関する情報(ストレージシステム及びVOLのID)を取得し、それらのVOLから構成されるコピーペアに対してコピーペア停止処理を実行する(S66)。具体的には、例えば、ストレージ管理プログラム15は、ストレージシステム9A及び/又は9Bに、そのコピーペアの停止を要求する。
また、ストレージ管理プログラム15は、管理テーブルのコピーペア状態(停止要求に対応するコピーペア状態を「稼働中」から「停止中」に更新する(S67)。この処理は、例えば、コピーペア停止の要求先のストレージシステム9A及び/又は9Bから、コピーペア停止完了の通知をもらった場合に行うことができる。
S67の後、ストレージ管理プログラム15は、履歴情報テーブル45を更新する(S68)。例えば、ストレージ管理プログラム15は、「実行した対処処理」を「コピーペア停止」とし、「対処処理の実行対象」をS64で一致が得られたアプリケーションのIDとし、「対処処理の実行結果」を「正常終了」とし、「対処処理の実行時刻」をコピーペア停止要求を発行した時刻として、履歴情報テーブル45を更新することができる。
以上、上述した実施形態によれば、PVOL29Aに書かれる書込み対象データが、キャッシュメモリ308Aに用意されたサイドファイル27Aに書き込まれ、非同期型リモートコピーの際には、PVOL29Aからではなく、サイドファイル27Aから書込み対象データが読出され、読出された書込み対象データが、そのPVOL29Aに対応したSVOL29Bに書かれる。これにより、リモートコピーではPVOL29Aからデータを読出す必要が無いので、リモートコピーが開始されてから終了するまでの時間の短縮化が図れる。
また、上述した実施形態によれば、サイドファイル使用率は、ストレージシステム9A、9Bから業務サーバ5A、5Bに対して能動的に通知される。これにより、例えば、短時間で急激にサイドファイル使用率が増大した場合には、そのことを、業務サーバ5A、5Bに大きな負荷をかけることなくても、業務サーバ5A、5Bに検出させられることが期待できる。
また、上述した実施形態によれば、各業務サーバ5A、5Bでは、ストレージシステム9A、9Bから通知されたサイドファイル使用率と、自分が有する記憶資源17A、17Bに設定された使用率閾値及び実行すべき対処処理とに基づいて、処理が行われる。これにより、例えば、業務の特性(一例としてバッチ処理或いはトランザクション処理)や、運用ポリシーとに応じて、各業務サーバで最適な対策を行なえることが期待できる。
ところで、上述した実施形態には、幾つかの変形例が考えられる。以下、その変形例について説明する。なお、以下の説明では、上述した実施形態との相違点を主に説明し、その実施形態との共通点についは説明を省略或いは簡略する。
(1)第一の変形例
図8Aは、本発明の一実施形態の第一の変形例における対処情報テーブルの構成例を示す。この対処情報テーブル102には、アプリケーションIDに代えて、業務サーバIDが記述される。このため、サイドファイル使用率に応じた対処処理の実行対象は、APではなく、業務サーバとなる。従って、例えば、業務サーバ5B(例えば業務サーバ5Bのオペレーティングシステム)は、受信したサイドファイル使用率が使用率閾値「60%」を超えている場合には、自分中で稼働している全てのアプリケーションプログラムを停止する。
(2)第二の変形例
図8Bは、本発明の一実施形態の第二の変形例における対処情報テーブルの構成例を示す。この対処情報テーブル103には、業務サーバID毎に、アプリケーションIDが記述される。このため、例えば、同一の業務サーバに同一種類のAPが存在しても、その同一種類のAPに対して異なる使用率閾値や異なる対処処理を設定することができ、故に、その同一種類のAPに対して、サイドファイル使用率に応じて異なる対処処理を実行させることができる。具体的には、例えば、業務サーバ5Bに通知されたサイドファイル使用率が使用率閾値「50%」を超えていた場合、業務サーバ5B内のAP13Bに、書込み要求を送信しないようにさせ、更にサイドファイル使用率が上昇して、通知されたサイドファイル使用率が使用率閾値「70%」を超えた場合には、アプリケーションを停止させるといった処理が可能となる。
(3)第三の変形例
図8Cは、本発明の一実施形態の第三の変形例における処理の説明図である。すなわち、通知プログラム25Aは、チェックされたサイドファイル使用率を使用率記憶域104に書き(S81)、そこからサイドファイル使用率を読出すよう特定の宛先(例えばジョブ制御プログラム11A)に命令する(S82)。S82で発行された読出し命令には、例えば、読出してもらいたいサイドファイル使用率へのアクセスパス名が含まれている。その場合、その特定の宛先は、その読出し命令に従って、使用率記憶域104からサイドファイル使用率を読出すことができる(S83)。なお、「特定の宛先」は、例えば、サイドファイル使用率の通知先として決定される上述した特定の宛先と同じであっても良い。
(4)第四の変形例
本発明の一実施形態の第四の変形例では、各業務サーバ5A、5B、…が、管理テーブル41や対処情報テーブル43の一部を保存せず、管理サーバ7が、ストレージシステム9Aからサイドファイル使用率の通知を受け、通知されたサイドファイル使用率と、各使用率閾値とに応じて、どの業務サーバ5A及び/又はどのAPに対してどのような対処処理を実行させるかを制御することができる。
具体的には、例えば、ストレージシステム9Aは、少なくとも管理サーバ7に、サイドファイル使用率を通知する。管理サーバ7のストレージ管理プログラム15が、通知されたサイドファイル使用率と、対処情報テーブル43に記録されている各使用率閾値とを比較する。ストレージ管理プログラム15は、或る使用率閾値をサイドファイル使用率が超えている場合には、その使用率閾値に対応した対処処理とアプリケーションIDとを対処情報テーブル43から特定し、そのアプリケーションIDのAPを有する業務サーバを管理テーブル41から特定し、特定された業務サーバに、上記特定された対処処理を通知する。
この第四の変形例によれば、特殊な機能(例えば、サイドファイル使用率と使用率閾値とを比較する、対処処理を特定するためにテーブルを参照する等)を持ったジョブ制御プログラムを各業務サーバに搭載しなくても、サイドファイル使用率に応じて適切なアプリケーション及び/又は業務サーバに適切な対処処理を実行させることができる。
(5)第五の変形例
本発明の一実施形態の第五の変形例では、ストレージ制御装置21Aに、管理テーブル41や対処情報テーブル43を保存させておき、ストレージ制御装置21Aが、サイドファイル使用率と、各使用率閾値とに応じて、どの業務サーバ5A及び/又はどのAPに対してどのような対処処理を実行させるかを制御することができる。
具体的には、例えば、ストレージ制御装置21Aは、サイドファイル使用率と、対処情報テーブル43に記録されている各使用率閾値とを比較する。ストレージ制御装置21Aは、或る使用率閾値をサイドファイル使用率が超えている場合には、その使用率閾値に対応した対処処理とアプリケーションIDとを対処情報テーブル43から特定し、そのアプリケーションIDのAPを有する業務サーバを管理テーブル41から特定し、特定された業務サーバに、上記特定された対処処理を通知する。
この第五の変形例でも、特殊な機能(例えば、サイドファイル使用率と使用率閾値とを比較する、対処処理を特定するためにテーブルを参照する等)を持ったジョブ制御プログラムを各業務サーバに搭載しなくても、サイドファイル使用率に応じて適切なアプリケーション及び/又は業務サーバに適切な対処処理を実行させることができる。
以上、本発明の好適な実施形態及び幾つかの変形例を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこれらの実施形態及び変形例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。
例えば、複数の書込み対象データがPVOL29Aにどのような順番で書き込まれたかをコピー先のストレージシステム9Bに理解させるための方法は、タイムスタンプを書込み対象データに付す方法には限られない。例えば、制御プログラム23Aが、サイドファイル27Aに蓄積された複数の書込み対象データの書込み順序を表すデータ(以下、書込み順序データ)を生成し、その書込み順序データを、複数の書込み対象データのコピー先となるストレージシステム9Bに送信することで、ストレージシステム9Bに、その書込み順序データから複数の書込み対象データの書込み順序を理解させてもよい。
また、例えば、ストレージ制御装置21Aは、非同期型リモートコピーのためにサイドファイル27Aからデータを読出して他のストレージシステム9Bに転送した後、所定のタイミングで(例えば、転送が済んだ直後、又は、所定の完了通知をストレージシステム9Bから受けたとき)、転送が済んだデータをサイドファイル27Aから削除することができる。
また、例えば、通知プログラム25Aは、サイドファイル使用率の複数のチェック結果(例えば、チェックされたサイドファイル使用率の値と、チェック時の時刻)を、所定の記憶域に蓄積していくことができる。また、例えば、通知プログラム25Aは、例えば所定の記憶域が満杯になったら、最古のチェック結果を消して最新のチェック結果を書くことができる。また、通知プログラム25Aは、所定の記憶域に記憶されている複数のチェック結果を管理サーバ7に通知することができる。管理サーバ7は、通知された複数のチェック結果をシステム管理者用端末3に送信してもよいし、各ジョブ制御プログラム11A、11Bに送信してもよい。
また、例えば、サイドファイル使用率からサイドファイル27Aの空き容量が所定閾値未満になったこと(例えば、サイドファイル27Aの残量が僅かになったこと)がストレージ制御装置21において検出された場合には、ストレージ制御装置21Aは、特定の対処処理を実行することができる。例えば、ストレージ制御装置21Aは、サイドファイル27Aにおいて転送待ちになっている書込み対象データを、サイドファイル27Aから論理ボリュームに移して、サイドファイル27Aの空き要領を増やす処理を行っても良いし、各APを停止するよう各ジョブ制御プログラムに対し命令しても良い。
また、上述した実施形態及び変形例では、サイドファイル27Aの使用状況として、「使用率」を例に採っているが、勿論、使用率に限られない。例えば、サイドファイル27Aに記憶されているデータの総量であっても良いし、サイドファイル27の空き容量であっても良い。
また、例えば、サイドファイル27Aに蓄積された複数の書込み対象データのリモートコピーは、例えば、ストレージシステム9Aがストレージシステム9Bに書込み要求を発行することで行われても良いし、ストレージシステム9Bがストレージシステム9Bに読出し要求を発行することで行われても良いし、ストレージシステム9Bが直接サイドファイル27Aからデータを読出すことで行われても良い。
また、例えば、ストレージシステム9Aには、複数のID(例えば、アプリケーションID及び/又は業務サーバID)にそれぞれ対応付けられた複数の使用率閾値が記憶されていてもよい。その場合、通知プログラム25Aは、チェックされたサイドファイル使用率と各使用率閾値とを比較し、サイドファイル使用率よりも小さい使用率閾値があった場合には、その使用率閾値に対応したIDを有する物に、チェックされたサイドファイル使用率を通知しても良い。
図1は、本発明の一実施形態に係るシステムのハードウェア構成の概要を示す。 図2は、本発明の一実施形態に係るシステムの各構成要素の機能を説明するためのブロック図である。 図3Aは、管理テーブル41の構成例を示す。図3Bは、対処情報テーブル43の構成例を示す。図3Cは、履歴情報テーブル45の構成例を示す。図3Dは、サイドファイル27Aへのデータの格納方法の一例の説明図。 図4Aは、ステップS1でジョブ制御プログラムが行う処理の流れの一例を示す。図4Bは、ステップS4で通知プログラムが行う処理の流れの一例を示す。 図5は、ステップS5でジョブ制御プログラムが行う処理の流れの一例を示す。 図6は、ステップS6でストレージ管理プログラム15が行う処理の流れの一例を示す。 図7は、図5のS47で行われる処理の流れの一例を示す。 図8Aは、本発明の一実施形態の第一の変形例における対処情報テーブルの構成例を示す。図8Bは、本発明の一実施形態の第二の変形例における対処情報テーブルの構成例を示す。図8Cは、本発明の一実施形態の第三の変形例における処理の説明図である。
符号の説明
3…システム管理者用端末 5A、5B…業務サーバ 7…管理サーバ 9A、9B…ストレージシステム 11A、11B…ジョブ制御プログラム 13A、13B、13C…アプリケーションプログラム(AP) 17A、17B、19…記憶資源 21A、21B…ストレージ制御装置 23A、23B…制御プログラム 24…アクセス履歴記憶域 25A…通知プログラム 26A…構成情報 27A…サイドファイル 28A…メイン領域 29A、29B…論理ボリューム 41…管理テーブル 43…対処情報テーブル 45…履歴情報テーブル 308A、308B…キャッシュメモリ

Claims (2)

  1. 記憶装置を有する管理サーバと、
    前記管理サーバと、コピー先記憶装置を備えた他のストレージシステムと、複数のアプリケーションプログラムが実行される1以上の業務サーバとに通信可能に接続され、前記複数のアプリケーションプログラムから送られるアクセス要求に基づきアクセスされるストレージシステム
    を備え
    各業務サーバでは、その業務サーバで実行される1以上のアプリケーションプログラムを制御するジョブ制御プログラムが実行され、
    前記ストレージシステムは、コントローラと、キャッシュメモリを含んだ一以上のメモリと、前記一以上のメモリの少なくとも一つに用意された記憶域であるサイドファイルと、コピー元記憶装置とを備え、
    前記管理サーバが有する記憶装置は、サイドファイル使用率閾値とサイドファイル使用率がそのサイドファイル使用率閾値を超えた場合にジョブ制御プログラムがアプリケーションプログラムに実行させる対処処理との関係を前記アプリペーションプログラム毎に表している対処管理情報を記憶し、
    前記ストレージシステムが書込み対象データ及び書込み要求を前記複数のアプリケーションプログラムのうちのいずれかのアプリケーションプログラムから受信する都度に、前記コントローラが、以下の(1)乃至(3)の処理、
    (1)前記受信された書込み対象データを前記キャッシュメモリに書込む処理、
    (2)前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを前記コピー元記憶装置に書込む処理、
    (3)前記キャッシュメモリに書き込まれる書込み対象データを前記サイドファイルに書込む処理、
    を実行し、
    前記コントローラが、或るタイミングで、前記サイドファイルに蓄積された複数の書込み対象データを前記他のストレージシステムに送信することで、前記コピー元記憶装置に記憶された複数の書込み対象データが前記コピー先記憶装置に書込まれるように
    前記コントローラが、定期的に、前記サイドファイルの使用率を前記管理サーバに送り、
    前記管理サーバは、
    (a)前記ストレージシステムから送られたサイドファイル使用率を受信し、
    (b)前記(a)で受信したサイドファイル使用率が、前記対処管理情報が表しているサイドファイル使用率閾値を超えていれば、そのサイドファイル使用率閾値に対応するアプリケーションプログラムを実行する業務サーバにおけるジョブ制御プログラムに、そのサイドファイル使用率閾値に対応するアプリケーションプログラムに対して、そのサイドファイル使用率閾値に対応する対処処理を実行させる、
    ことを特徴とする計算機システム。
  2. 記憶装置を有する管理サーバと、前記管理サーバと、コピー先記憶装置を備えた他のストレージシステムと、複数のアプリケーションプログラムが実行される1以上の業務サーバとに通信可能に接続され、前記複数のアプリケーションプログラムから送られるアクセス要求に基づきアクセスされるストレージシステムとを備える計算機システムで実現される記憶制御方法であって、
    各業務サーバでは、その業務サーバで実行される1以上のアプリケーションプログラムを制御するジョブ制御プログラムが実行されるようになっており、
    前記ストレージシステムは、コントローラと、キャッシュメモリを含んだ一以上のメモリと、前記一以上のメモリの少なくとも一つに用意された記憶域であるサイドファイルと、コピー元記憶装置とを備えており、
    (A)前記管理サーバが有する記憶装置は、サイドファイル使用率閾値とサイドファイル使用率がそのサイドファイル使用率閾値を超えた場合にジョブ制御プログラムがアプリケーションプログラムに実行させる対処処理との関係を前記アプリペーションプログラム毎に表している対処管理情報を記憶し、
    (B)前記ストレージシステムが書込み対象データ及び書込み要求を前記複数のアプリケーションプログラムのうちのいずれかのアプリケーションプログラムから受信する都度に、前記コントローラが、以下の(1)乃至(3)の処理、
    (1)前記受信された書込み対象データを前記キャッシュメモリに書込む処理、
    (2)前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを前記コピー元記憶装置に書込む処理、
    (3)前記キャッシュメモリに書き込まれる書込み対象データを前記サイドファイルに書込む処理、
    を実行し、
    (C)前記コントローラが、或るタイミングで、前記サイドファイルに蓄積された複数の書込み対象データを前記他のストレージシステムに送信することで、前記コピー元記憶装置に記憶された複数の書込み対象データが前記コピー先記憶装置に書込まれるようにし、
    (D)前記コントローラが、定期的に、前記サイドファイルの使用率を前記管理サーバに送り、
    (E)前記管理サーバは、
    (a)前記ストレージシステムから送られたサイドファイル使用率を受信し、
    (b)前記(a)で受信したサイドファイル使用率が、前記対処管理情報が表しているサイドファイル使用率閾値を超えていれば、そのサイドファイル使用率閾値に対応するアプリケーションプログラムを実行する業務サーバにおけるジョブ制御プログラムに、そのサイドファイル使用率閾値に対応するアプリケーションプログラムに対して、そのサイドファイル使用率閾値に対応する対処処理を実行させる、
    記憶制御方法。
JP2005078933A 2005-03-18 2005-03-18 計算機システム及び記憶制御方法 Expired - Fee Related JP4744171B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005078933A JP4744171B2 (ja) 2005-03-18 2005-03-18 計算機システム及び記憶制御方法
US11/129,619 US7430637B2 (en) 2005-03-18 2005-05-13 Storage system and storage control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005078933A JP4744171B2 (ja) 2005-03-18 2005-03-18 計算機システム及び記憶制御方法

Publications (2)

Publication Number Publication Date
JP2006260355A JP2006260355A (ja) 2006-09-28
JP4744171B2 true JP4744171B2 (ja) 2011-08-10

Family

ID=37011724

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005078933A Expired - Fee Related JP4744171B2 (ja) 2005-03-18 2005-03-18 計算機システム及び記憶制御方法

Country Status (2)

Country Link
US (1) US7430637B2 (ja)
JP (1) JP4744171B2 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4341072B2 (ja) * 2004-12-16 2009-10-07 日本電気株式会社 データ配置管理方法及びシステムと装置およびプログラム
JP2007102267A (ja) * 2005-09-30 2007-04-19 Toshiba Corp アクセス履歴管理方法、アクセス履歴管理装置、アクセス履歴管理プログラム、記憶装置及び情報処理装置
JP2007102452A (ja) * 2005-10-04 2007-04-19 Fujitsu Ltd システム管理プログラムおよびシステム管理方法
JP4827564B2 (ja) * 2006-03-15 2011-11-30 株式会社日立製作所 コピーペアのペア状態の表示方法
US7930481B1 (en) * 2006-12-18 2011-04-19 Symantec Operating Corporation Controlling cached write operations to storage arrays
JP4434235B2 (ja) * 2007-06-05 2010-03-17 株式会社日立製作所 計算機システムまたは計算機システムの性能管理方法
EP2201456A4 (en) * 2007-10-08 2012-02-15 Axxana Israel Ltd SYSTEM FOR QUICK DATA RECOVERY
JP2009104421A (ja) * 2007-10-23 2009-05-14 Hitachi Ltd ストレージアクセス装置
US7930497B2 (en) * 2008-01-10 2011-04-19 International Business Machines Corporation Using multiple sidefiles to buffer writes to primary storage volumes to transfer to corresponding secondary storage volumes in a mirror relationship
JP4774085B2 (ja) 2008-07-31 2011-09-14 富士通株式会社 ストレージシステム
US8458420B2 (en) 2008-08-19 2013-06-04 International Business Machines Corporation Executing host data transfer operations during setup of copy services operations
JP5387315B2 (ja) * 2009-10-13 2014-01-15 富士通株式会社 記憶装置、制御装置および記憶装置の制御方法
JP5397148B2 (ja) 2009-10-16 2014-01-22 富士通株式会社 記憶装置、制御装置および記憶装置の制御方法
JP5170169B2 (ja) * 2010-06-18 2013-03-27 Necシステムテクノロジー株式会社 ディスクアレイ装置間のリモートコピー処理システム、処理方法、及び処理用プログラム
JP5263237B2 (ja) * 2010-08-02 2013-08-14 富士通株式会社 ストレージシステム
US8909896B2 (en) * 2011-03-01 2014-12-09 Hitachi, Ltd. Network efficiency for continuous remote copy
US20120254124A1 (en) * 2011-03-30 2012-10-04 International Business Machines Corporation System, method, and computer program product for disaster recovery using asynchronous mirroring
US8463746B2 (en) * 2011-03-30 2013-06-11 International Business Machines Corporation Method and system for replicating data
US10007602B2 (en) * 2014-05-06 2018-06-26 International Business Machines Corporation Flash copy relationship management
US10108352B2 (en) 2015-03-03 2018-10-23 International Business Machines Corporation Incremental replication of a source data set
US9875034B2 (en) * 2016-04-07 2018-01-23 International Business Machines Corporation Delaying programming requests in flash memory
US9921776B2 (en) * 2016-08-22 2018-03-20 International Business Machines Corporation Efficient sidefile utilization in asynchronous data replication systems

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002334049A (ja) * 2001-05-11 2002-11-22 Hitachi Ltd 記憶サブシステムおよび記憶サブシステムの制御方法
JP2005275525A (ja) * 2004-03-23 2005-10-06 Hitachi Ltd ストレージシステム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5263154A (en) 1992-04-20 1993-11-16 International Business Machines Corporation Method and system for incremental time zero backup copying of data
JPH07210439A (ja) * 1993-12-03 1995-08-11 Hitachi Ltd 記憶装置
JP3428842B2 (ja) * 1997-01-08 2003-07-22 株式会社日立製作所 情報処理システムおよびデータ多重化システム
US6223269B1 (en) * 1997-09-27 2001-04-24 Emc Corporation Stacked mapped storage system
JP2003006016A (ja) * 2001-06-26 2003-01-10 Hitachi Ltd ディスクサブシステム、および、ディスクサブシステム間の非同期コピー方法
US20040114222A1 (en) * 2001-12-04 2004-06-17 Olympus Optical Co., Ltd Information input device
US7389516B2 (en) * 2003-06-19 2008-06-17 Microsoft Corporation System and method for facilitating interaction between a computer and a network scanner

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002334049A (ja) * 2001-05-11 2002-11-22 Hitachi Ltd 記憶サブシステムおよび記憶サブシステムの制御方法
JP2005275525A (ja) * 2004-03-23 2005-10-06 Hitachi Ltd ストレージシステム

Also Published As

Publication number Publication date
JP2006260355A (ja) 2006-09-28
US7430637B2 (en) 2008-09-30
US20060212667A1 (en) 2006-09-21

Similar Documents

Publication Publication Date Title
JP4744171B2 (ja) 計算機システム及び記憶制御方法
JP6437656B2 (ja) ストレージ装置、ストレージシステム、ストレージシステムの制御方法
US8433862B2 (en) Storage system for adjusting asynchronous copy load based on cache activity rate
JP5090022B2 (ja) 計算機システム、アクセス制御方法及び管理計算機
EP1873645A1 (en) Storage system and data replication method
JP4327831B2 (ja) ストレージシステム、管理計算機及びコピーペア監視方法
US20070005886A1 (en) Disk array apparatus and control method for disk array apparatus
US8266400B2 (en) Computer system remote copying system and computer system
JP4728717B2 (ja) 自律ストレージ装置、自律ストレージシステム、分散ストレージシステム、負荷分散プログラム及び負荷分散方法
US10942835B2 (en) Processing a health condition message on a health condition to determine whether to perform a swap operation
US10970178B2 (en) Generating a health condition message on a health condition detected at a server to send to a host system accessing the server
CA2868247A1 (en) Data sending method, data receiving method, and storage device
US7725631B2 (en) Information system and information storage method of information system
US20100023532A1 (en) Remote file system, terminal device, and server device
JP2005190106A (ja) 論理ボリュームを管理する記憶制御サブシステム
US7890715B2 (en) Suspension of an asynchronous remote copy pair system having a primary controller and a remote controller
US7886186B2 (en) Storage system and management method for the same
JP2020154587A (ja) 計算機システム及びデータ管理方法
US7650476B2 (en) System, method and computer program product for generating a consistent point in time copy of data
JP6229684B2 (ja) ストレージ装置、ストレージ制御方法、及びストレージ制御プログラム
US7136855B2 (en) Exclusive control system and method for using shared resource
JP2006031335A (ja) 情報処理システム及び方法
JP4808793B2 (ja) 障害管理装置及びプログラム
JP5535993B2 (ja) 記憶装置共有システムおよび記憶装置共用方法
JP5736070B2 (ja) 管理装置、アクセス制御装置、管理方法、アクセス方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110208

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110406

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: 20110510

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: 20110510

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

Free format text: PAYMENT UNTIL: 20140520

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees