JP2016081332A - 計算機システムおよび装置管理サーバ - Google Patents

計算機システムおよび装置管理サーバ Download PDF

Info

Publication number
JP2016081332A
JP2016081332A JP2014212608A JP2014212608A JP2016081332A JP 2016081332 A JP2016081332 A JP 2016081332A JP 2014212608 A JP2014212608 A JP 2014212608A JP 2014212608 A JP2014212608 A JP 2014212608A JP 2016081332 A JP2016081332 A JP 2016081332A
Authority
JP
Japan
Prior art keywords
offline
portable storage
storage medium
cartridge
management
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.)
Pending
Application number
JP2014212608A
Other languages
English (en)
Inventor
司 柴山
Tsukasa Shibayama
司 柴山
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 LG Data Storage Inc
Original Assignee
Hitachi LG Data Storage Inc
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 LG Data Storage Inc filed Critical Hitachi LG Data Storage Inc
Priority to JP2014212608A priority Critical patent/JP2016081332A/ja
Publication of JP2016081332A publication Critical patent/JP2016081332A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】可搬型記憶媒体を備える記憶装置においてオフライン化の可否を適切に判断するための技術を提供する。
【解決手段】一態様による計算機システムは、装置管理サーバが、第1段階として、複数の可搬型記憶媒体のうちの少なくとも一つの可搬型記憶媒体について、即時にオフライン化が可能であるか否かを判定し、第1段階において即時にオフライン化が可能でない場合に、第2段階として、当該複数の可搬型記憶媒体のうちの少なくとも一つの可搬型記憶媒体について、所定の基準時間内にオフライン化が可能となるか否かを判定し、第1段階または前記第2段階のいずれかにおいてオフライン可能となる可搬型記憶媒体を、オフライン候補の可搬型記憶媒体としてユーザに提示する。
【選択図】 図1

Description

本発明はストレージシステムにおける記憶媒体の管理に関する。
テープや光ディスクといった、装置からの取り外しおよび装置への取り付けが自在に可能な可搬型記憶媒体を利用する可搬型記憶装置では、記憶領域としてユーザへ提供し、データ保存に利用する記憶媒体を取り外したり、交換したりできる。データを保存するとき直接、可搬型記憶媒体にデータを書き込むことも可能であるが、一旦、キャッシュに蓄積してから可搬型記憶媒体に移動させることも可能である。そのような技術が特許文献1に記載されている。
国際公開WO2007/075570 A2
可搬型記憶装置内の記憶媒体の空き領域が減少した場合や、新たな記憶領域をユーザへ提供しようとするときに十分な空き領域が可搬型記憶装置内の記憶媒体に無い場合は、可搬型記憶装置内の既設のテープや光ディスク等の記憶媒体を、物理的に空き領域のあるものに入れ替える(これをオフライン管理と呼ぶ)。可搬型記憶媒体を装置から取り外すこと、あるいは取り外すことが可能な状態にすることをオフラオン化と呼ぶことにする。
オフライン管理において、ストレージ管理者は既設のどの記憶媒体でも自由にオフライン化できるわけでは無く、装置内のデータ処理、あるいは、これから利用される可能性のある処理を考慮しなければ、不都合が生じる可能性がある。しかしながら、現状では、オフライン化すべき記憶媒体またはオフライン化してはいけない記憶媒体を適切に特定することできないという課題がある。
本発明の目的は、可搬型記憶媒体を備える記憶装置においてオフライン化の可否を適切に判断するための技術を提供することである。
上記課題を解決するために、本発明の一態様による計算機システムは、ホスト計算機からアクセスされるデータを格納するストレージ装置と、前記ストレージ装置から転送されたデータを格納する、着脱が可能な複数の可搬型記憶媒体と、前記複数の可搬型記憶媒体へのデータの読み書きを制御するコントローラとを備えた可搬型記憶装置と、前記ストレージ装置と前記可搬型記憶装置とをハイブリッド型記憶装置として制御する計算機と、第1段階として、前記複数の可搬型記憶媒体のうちの少なくとも一つの可搬型記憶媒体について、即時にオフライン化が可能であるか否かを判定し、前記第1段階において即時にオフライン化が可能でない場合に、第2段階として、当該複数の可搬型記憶媒体のうちの少なくとも一つの可搬型記憶媒体について、所定の基準時間内にオフライン化が可能となるか否かを判定し、前記第1段階または前記第2段階のいずれかにおいてオフライン可能となる可搬型記憶媒体を、オフライン候補の可搬型記憶媒体としてユーザに提示する装置管理サーバと、を有している。
本発明によれば、第1段階として主に現在の状態から即時にオフライン化が可能か否か判定し、第2段階として主に将来の状態から所定の基準時間後にオフライン化が可能か否か判定するので、現在の状態だけでなく、将来の状態も考慮してオフライン化が可能か否か適切に判断することができる。
本発明の実施形態による概略の処理を説明するための図である。 実施例1による全体の計算機システム1の構成例を示すブロック図である。 ホスト計算機10の構成例を示すブロック図である。 ホスト計算機10の構成例を示すブロック図である。 可搬型記憶装置の構成例を示すブロック図である。 ハイブリッド制御サーバ40の構成例を示すブロック図である。 装置管理サーバ50の構成例を示すブロック図である。 アーカイブ管理サーバ60の構成例を示すブロック図である。 ブロックストレージ20のブロック構成管理テーブル205の一例を示す図である。 可搬型記憶装置30の可搬型記憶装置構成管理テーブル312の一例を示す図である。 共有管理テーブル414の一例を示す図である。 ファイル管理テーブル415の一例を示す図である。 バッファ内キャッシュデータ管理テーブル416の一例を示す図である。 マイグレーションポリシー管理テーブル417の一例を示す図である。 ユーザ管理テーブル418の一例を示す図である。 管理ソフト側ストレージ構成管理テーブル514の一例を示す図である。 カートリッジ管理テーブル515の一例を示す図である。 管理ソフト側共有管理テーブル516の一例を示す図である。 管理ソフト側ユーザ管理テーブル517の一例を示す図である。 スケジュール管理テーブル518の一例を示す図である。 オフライン候補カートリッジ管理テーブル519の一例を示す図である。 ジョブ管理テーブル611の一例を示す図である。 データ管理テーブル612の一例を示す図である。 ポリシー管理テーブル613の一例を示す図である。 ハイブリッド型記憶装置70における記憶領域の割当処理(ステップS100)を示すフローチャートである。 データ書込み時の処理(ステップS110)を示すフローチャートである。 データ削除時の処理(ステップS120)を示すフローチャートである。 オフライン管理の全体処理を示すフローチャートである。 スケジュール情報を入力する処理(ステップS1010)を示すフローチャートである。 データ情報を収集する処理(ステップS1020)を示すフローチャートである。 装置管理サーバ50が情報を収集する処理(ステップS1030)を示すフローチャートである。 ステップS1100のうち、記憶領域(共有)の作成および記憶領域容量の追加の処理(ステップS1110)を示すフローチャートである。 ステップS1100のうち、Read/Write要求の処理(ステップS1120)を示すフローチャートである。 オフライン可否判定プログラム513が現在の構成情報およびユーザ情報をもとにカートリッジのオフライン判定を実施する処理(ステップS1200)のフローチャートである。 オフライン可否判定プログラム513がスケジュール管理テーブル518に設定されている情報を元に将来の構成情報およびユーザ情報を計算し、その情報からカートリッジ307のオフライン判定を実施する処理(ステップS1300)のフローチャートである。 装置管理サーバ50内のストレージ管理プログラム510がオフライン候補カートリッジ一覧を表示する処理(ステップS1400)のフローチャートである。 オフライン可能カートリッジをストレージ管理者へ提示するGUIの一例を示す図である。 実施例2におけるハイブリッド制御サーバの構成を示すブロック図である。 実施例2における装置管理サーバの構成を示すブロック図である。 実施例2におけるLU構成管理テーブル424の一例を示す図である。 実施例2によるマイグレーションポリシー管理テーブル427の一例を示す図である。 アクセス管理テーブル428の一例を示す図である。 管理ソフト側LU構成管理テーブル526の一例を示す図である。 管理ソフト側アクセス管理テーブル527の一例を示す図である。 LU容量履歴管理テーブル520の一例を示す図である。 実施例2における、ハイブリッド型記憶装置70での記憶領域を割り当てる処理(ステップS200)のフローチャートである。 オフライン化する候補となるカートリッジ307をランク付けして表示する処理を示すフローチャートである。 実施例4における、装置管理サーバ50の構成例を示すブロック図である。 管理者アカウント管理テーブル530の一例を示す図である。 パラメタ選択履歴管理テーブル531の一例を示す図である。 実施例4における、オフライン可否判定処理のうち、オフライン可否判定プログラム513が現在の構成情報をもとにカートリッジのオフライン判定を実施するための処理(ステップS4200)のフローチャートである。 実施例4における、オフライン可否判定処理のうち、オフライン可否判定プログラム513がハイブリッド制御サーバ内の内部処理を踏まえた、将来の構成情報を計算し、その情報からカートリッジ307のオフライン判定を実施する処理(ステップS4300)のフローチャートである。 実施例4における、オフライン可否判定処理のうち、ステップ4200、ステップ4300で調べたオフライン可否判定の情報を踏まえてオフライン可能カートリッジの中でランキングを設定する処理(ステップ4400)のフローチャートである。 カートリッジ管理テーブル555の一例を示す図である。
本発明の実施形態について図面を参照して説明する。
ここでは「プログラム」を主語として処理を説明する場合があるが、処理の主語をプロセッサ(又はそのプロセッサ(例えばCPU(Central Processing Unit)を有するコントローラ等の装置)とすることもできる。プログラムは、プロセッサによって実行されることで、定められた処理を、適宜に記憶資源(例えばメモリ)及び/又は通信インターフェイスデバイス(例えば通信ポート)を用いながら行う。逆に、プロセッサ(又はそのプロセッサを有するコントローラ等の装置)を主語として説明している処理は、1以上のプログラムを実行することにより行われると解釈することができる。
また、プロセッサは、プロセッサが行う処理の一部又は全部を行うハードウェア回路を含んでもよい。コンピュータプログラムは、プログラムソースから各計算機にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバ又は記憶メディアであってもよい。
また、以下の説明では、通信インターフェイスデバイスを「I/F」と略記することがある。
図1は、本発明の実施形態による概略の処理を説明するための図である。
ホスト計算機10bとハイブリッド型記憶装置70がデータネットワーク80a経由で接続され、ホスト計算機10bおよびハイブリッド型記憶装置70に装置管理サーバ50が接続されている。ホスト計算機10bはハイブリッド型記憶装置70へデータを書き込んだり、ハイブリッド型記憶装置70からデータを読み出したりしながら処理を実行する計算機である。ハイブリッド型記憶装置70は、制御部に当るハイブリッド制御サーバ40に加え、記憶媒体が着脱できないように固定されたブロックストレージ20と、記憶媒体が着脱可能な可搬型記憶装置30の両方を備える記憶装置である。ブロックストレージ20は、キャッシュとして利用され、可搬型記憶装置30はデータの長期保存に利用される。装置管理サーバ50は、ハイブリッド型記憶装置70におけるデータの管理と、可搬型記憶媒体308のオフライン管理を含む、各種装置管理を行うサーバである。
装置管理サーバ50は、ストレージ管理プログラム510とオフライン可否判定プログラム513を実行可能に保持する。可搬型記憶装置30は、データを記録しまた再生するドライブ305と、媒体搬送部306と、複数の可搬型記憶媒体308と、それを保持する複数のカートリッジ307を有する。ブロックストレージ20は論理ボリューム209を有する。ハイブリッド制御サーバ40は、読み書きプログラム411と、サーバ管理プログラム412と、共有419を有する。ここでいう共有はハイブリッド型記憶装置70からユーザへ提供される領域である。ハイブリッド型記憶装置70はブロックストレージ20と可搬型記憶装置30を利用し、データをアーカイブする。ホスト計算機10bはデータネットワーク80aを通じてデータをハイブリッド型記憶装置70へデータをアーカイブする。
ハイブリッド制御サーバ40に共有419をマウントしてあり、ホスト計算機10bからのデータはまず共有419に書き込まれる。その後、読み書きプログラム411が、共有419のデータを、ブロックストレージ20の論理ボリューム209に一時的に書き込み、ホスト計算機10bへ書き込み完了を応答する。
その後、特定の条件が満たされると、サーバ管理プログラム412が、読み書きプログラム411に対して、論理ボリューム209のデータを可搬型記憶装置30に書き込むよう指示する。読み書きプログラム411が可搬型記憶装置30へのデータの書き込みを実行すると、可搬型記憶装置30内では媒体搬送部306がカートリッジ307をドライブ305に設定し、ドライブ305がデータを可搬型記憶媒体308へ書き込む。データをReadするときには、読み書きプログラム411が、可搬型記憶装置30でカートリッジ307をドライブ305へセットし、可搬型記憶媒体308からデータを読み出してブロックストレージ20にコピーするか、もしくは、直接、共有419から可搬型記憶媒体308のデータをReadできるようにする。このようなデータのWrite処理およびRead処理をするハイブリッド型記憶装置70に対して、可搬型記憶装置30の可搬型記憶媒体308と、その集合であるカートリッジ307を入れ替えるためのオフライン管理が実施される。
オフライン管理では、装置管理サーバ50のストレージ管理プログラム510が、ハイブリッド型記憶装置70から現在の構成情報および内部処理の情報を取得し、将来の処理および構成を踏まえてオフライン化すべきカートリッジ307および/またはオフライン化してはいけないカートリッジ307を判断し、時間情報とともに、オフライン化させるカートリッジ307の候補を表示する。
以上、概略を説明した本実施形態により、ハイブリッド型記憶装置70を利用するストレージ管理者が、装置内部の具体的な処理まで意識しなくても、オフライン管理において、オフライン化すべきカートリッジ307またはオフライン化してはいけないカートリッジ307を認識し、オフライン化するカートリッジ307を適切に選択することが可能となる。また、それによって、不要なオフライン処理の回数を減らすこともできる。
以下、各種実施例について、より詳細に説明する。
図2は、実施例1による全体の計算機システム1の構成例を示すブロック図である。
ホスト計算機10a、10bは、データネットワーク80aを介してハイブリッド型記憶装置70と接続される。ホスト計算機10aとホスト計算機10bは後述する役割分担をする。ハイブリッド型記憶装置70は、ハイブリッド制御サーバ40と、ブロックストレージ20と、1台以上の可搬型記憶装置30と、を有する。
ハイブリッド制御サーバ40とブロックストレージ20とはデータネットワーク80bを介して接続される。また、ハイブリッド制御サーバ40と可搬型記憶装置30とはデータネットワーク80cを介して接続される。また、ホスト計算機10a、10b、ハイブリッド型記憶装置70(ハイブリッド制御サーバ40、ブロックストレージ20、可搬型記憶装置30)、装置管理サーバ50、アーカイブ管理サーバ60は管理ネットワーク90を介して接続される。
なお、データネットワーク80a、80b、80c、はそれぞれ別個のネットワークである必要はなく、同一ネットワークであっても良い。また、データネットワーク80と管理ネットワーク90のプロトコルはFC(Fibre Channel)、IP(Internet Protocol)など任意のプロトコルで構わない。更に、データネットワーク80と管理ネットワーク90が同一ネットワークであってもよい。
装置管理サーバ50は、管理ネットワーク90を介してハイブリッド型記憶装置70(ハイブリッド制御サーバ40、ブロックストレージ20、可搬型記憶装置30)から管理情報を収集し、収集した管理情報に基づいてオフライン管理を行う。
アーカイブ管理サーバ60は、アーカイブの処理において、管理ネットワーク90を介してホスト計算機10内のデータをハイブリッド型記憶装置70へ移動するよう指示を出す。
2つのホスト計算機10a、10bのうち、ホスト計算機10aは、実際にユーザが業務で利用するアプリケーションを動作させるという役割を担う。一方、ホスト計算機10bは、ハイブリッド型記憶装置70の記憶領域をマウントしておきアーカイブ管理サーバ60からのデータ移動の指示を受けて実行する。また、ホスト計算機10bは、ホスト計算機10aとハイブリッド型記憶装置70の間でデータ転送の中継点としての役割を担う。一般的にアーカイブ管理ソフトは、このように役割の異なるホスト計算機を用い、業務を動作させるホスト計算機から、ストレージ装置をマウントしているホスト計算機にデータを移動させることで、データのアーカイブを実施する。ただし、ホスト計算機10aがハイブリッド型記憶装置70の記憶領域を直接マウントし、ホスト計算機10bを介さずデータの移動を実施してもよい。
なお、ここではハイブリッド型記憶装置70と装置管理サーバ50をまとめて記憶システム71と呼ぶことにする。また、その記憶システム71とアーカイブ管理サーバ60をまとめて階層記憶システム72と呼ぶことにする。
また、本実施例では、ハイブリッド制御サーバ40が独立した装置である場合を例示するが、ブロックストレージ20あるいは可搬型記憶装置30がハイブリッド制御サーバ40を兼ねその処理を実行しても良い。また、ハイブリッド制御サーバ40がHDD(Hard Disk Drive)またはキャッシュメモリを保持し、その記憶領域を用いてブロックストレージの処理を実行することにしてもよい。
図3は、ホスト計算機10の構成例を示すブロック図である。
ホスト計算機10は、CPU101、メモリ102、HDD107、データI/F(Interface)108、および管理I/F109を備える。
メモリ102には、OS(Operating System)103と、ハイブリッド型記憶装置70の記憶領域もしくはHDD107の記憶領域をマウントするためのデバイスマネージャ106とが格納される。CPU101がメモリ上のOS103やデバイスマネージャ106を動作させる。OS103には、ユーザが業務などで利用するアプリケーション104と、データの階層管理を行う階層管理エージェント105とが含まれる。
階層管理エージェント105は、アーカイブ管理サーバ60内の階層管理プログラム610、または別のホスト計算機内の階層管理エージェント105と通信し、階層管理を行う。
データI/F108は、データネットワーク80と接続され、データネットワーク80を介する通信を実現する。
管理I/F109は、管理ネットワーク90と接続され、管理ネットワーク90を介する通信を実現する。
なお、データI/F108と管理I/F109は別個にI/Fではなく、共通のI/Fであってもよい。
業務で利用するホスト計算機10aであれば、図3に記載した全ての部分を含む必要があるが、アーカイブの中継点となるホスト計算機10bであれば、アプリケーション104とHDD107を含まなくても良い。
図4は、ブロックストレージ20の例を示す図である。
ブロックストレージ20は、ホストI/F201、ブロック制御プロセッサ202、メモリ203、物理ストレージデバイス206、および管理I/F211を備える。
メモリ203には、ブロックストレージ管理プログラム204と、ブロック構成管理テーブル205とが格納される。ブロック制御プロセッサ202が、メモリ内のブロックストレージ管理プログラム204を動作させる。ブロックストレージ管理プログラム204は、装置管理サーバ50内のストレージ管理プログラム510と通信し、ブロックストレージの管理を行う。ブロック構成管理テーブル205の詳細は後述する。
物理ストレージデバイス206は、1つ以上のHDD207および/または1つ以上のSSD(Solid State Drive)208といった記憶媒体を含む。物理ストレージデバイス206は、複数種類の物理記憶媒体による記憶領域を含んでもよく、1種類の物理記憶媒体による記憶領域だけを含んでもよい。なお、物理ストレージデバイス206における物理記憶媒体の種類はHDDとSSDだけでなく、他の任意の種類のデバイスを含んでもよい。複数種類の記憶媒体を含む物理ストレージデバイスは、例えば、RAID(Redundant Arrays of Independent Disks)構成が組まれる。
ブロック制御プロセッサ202は、ブロックストレージ管理プログラム204を実行することで、物理ストレージデバイス206に基づく論理ボリューム209を、ホストI/F201経由でハイブリッド制御サーバ40に提供する。
管理I/F211は管理ネットワーク90を介して装置管理サーバ50と接続し、通信を実現する。
図5は、可搬型記憶装置の構成例を示すブロック図である。本実施例の可搬型記憶装置30は、ロボットなどの媒体搬送機構などを用いて、可搬型記憶媒体をドライブにセットする記憶装置である。
可搬型記憶装置30は、ホストI/F301、コントローラ302、メモリ303、キャッシュメモリ304、ドライブ305、媒体搬送部306、およびカートリッジ307を備える。
ホストI/F301は、データネットワーク80を介してハイブリッド制御サーバ40と接続する。
管理I/F309は、管理ネットワーク90を介して装置管理サーバ50と接続する。
メモリ303は、読み書きプログラム310と可搬型記憶装置管理プログラム311と可搬型記憶装置構成管理テーブル312を保持する。
読み書きプログラム310は、ドライブ305を通じて可搬型記憶媒体308にデータを書き込む、または、ドライブ305を通じて可搬型記憶媒体308のデータを再生するプログラムである。
可搬型記憶装置管理プログラム311は、装置管理サーバ50のストレージ管理プログラム510と通信し、可搬型記憶媒体308を含むカートリッジ307、またはカートリッジ307内の可搬型記憶媒体308の搬送を行うロボットである媒体搬送部306を管理し、可搬型記憶媒体308の情報を管理するプログラムである。可搬型記憶.媒体308の種類によって、搬送単位がカートリッジ307となるか可搬型記憶媒体308となるかが異なる。本実施例では、以降ではカートリッジ307を搬送単位として説明するが、可搬型記憶媒体308を搬送単位としてもよい。
可搬型記憶装置構成管理テーブル312の詳細は後述する。
コントローラ302が、メモリ303内の各プログラムを動作させる。キャッシュメモリ304は、ハイブリッド制御サーバ40の読み書きプログラム411から送られたデータ、または可搬型記憶媒体308からリードしたデータを一時的にキャッシュしておく記憶媒体である。キャッシュメモリ304は、DRAMやフラッシュHDDなどで構成され、Read/Write性能が可搬型記憶媒体308より高い。
ドライブ305は、媒体搬送部306により搬送された可搬型記憶媒体308に対してデータの読み書きを実施する。ドライブ305の数は1以上である。また、複数のドライブ305が存在する場合、性能の異なるドライブが混在しても良い。また、可搬型記憶媒体308が複数種類ある場合には、記憶媒体の種別毎に専用のドライブ305があってもよいし、異なる種別の記憶媒体に共通のドライブ305があってもよい。
媒体搬送部306は、カートリッジ307または可搬型記憶媒体308の搬送を行う。ここで、可搬型記憶媒体308をリード可能な状態でドライブ305に配置することをロードと呼ぶ。媒体搬送部306の数は1以上であればよく、必ずしもドライブの数と同数である必要はない。また、本実施例では、全ての媒体搬送部306が全てのドライブ305に可搬型記憶媒体308を搬送可能であるが、特定の媒体搬送部30は特定の可搬型記憶媒体308の搬送のみ実施できるようにしてもよい。
カートリッジ307には複数の可搬型記憶媒体308が格納される。カートリッジ307は1以上あればよい。可搬型記憶媒体308は、1つ以上のDVD(Digital Versatile Disc)、Blu−ray Disc(登録商標)、またはホログラムディスクなどの光学記憶媒体、あるいはテープなどの磁気記憶媒体などである。可搬型記憶媒体308として、複数種類の記憶媒体が混在していてもよい。
図6は、ハイブリッド制御サーバ40の構成例を示すブロック図である。
ハイブリッド制御サーバ40は、ホストI/F401、ファイル制御プロセッサ402、メモリ403、キャッシュメモリ404、HDD405、ディスクI/F406、ライブラリI/F407、および管理I/F408を備える。
ハイブリッド制御サーバ40は、ブロックストレージ20と可搬型記憶装置30が外部からは1つの記憶装置として見えるようにする。具体的には、ハイブリッド制御サーバ40は、可搬型記憶装置30の記憶容量を持つ記憶装置としてホスト計算機10a、10bに提供し、ブロックストレージ20の記憶領域はホスト計算機10a、10bからアクセスされるバッファ領域として利用される。
メモリ403は、階層管理エージェント410と読み書きプログラム411とサーバ管理プログラム412とデバイスマネージャ413と共有管理テーブル414とファイル管理テーブル415とバッファ内キャッシュデータ管理テーブル416とマイグレーションポリシー管理テーブル417とユーザ管理テーブル418を含む。
階層管理エージェント410は、アーカイブ管理サーバ60内の階層管理プログラム610と通信し、階層管理を行う。なお、階層管理エージェント410は、ホスト計算機10aとハイブリッド型記憶装置70を直接接続する場合に利用される。
読み書きプログラム411は、ホスト計算機10またはアーカイブ管理サーバ60またはサーバ管理プログラム412からの指示により、ブロックストレージ20または可搬型記憶装置30のデータを読み書きするプログラムである。
サーバ管理プログラム412は、ハイブリッド型記憶装置70内のデータ管理またはマイグレーションポリシー管理テーブル417に記載された条件に基づき、読み書きプログラム411へ指示を出す、または装置管理サーバ50内のストレージ管理プログラム10と通信するプログラムである。
デバイスマネージャ413は、ブロックストレージ20の論理ボリューム、キャッシュメモリ404の記憶領域、HDD405の記憶領域、および可搬型記憶装置40の記憶媒体または論理ボリュームをマウントし、共有419として論理記憶領域を作成し、ハイブリッド制御サーバ40をNAS(Network Attached Storage)として動作させる。
ファイル制御プロセッサ402が、メモリ内の階層管理エージェント410と読み書きプログラム411とサーバ管理プログラム412とデバイスマネージャ413を動作させる。
ホストI/F401は、データネットワーク80aを介して、ホスト計算機10と接続する。
ディスクI/F406は、データネットワーク80bを介してブロックストレージ20と接続する。
ライブラリI/F407は、データネットワーク80cを介して可搬型記憶装置30と接続する。
管理I/F408は、管理ネットワーク90を介して装置管理サーバ50およびアーカイブ管理サーバ60と接続する。
共有管理テーブル414とファイル管理テーブル415とバッファ内キャッシュデータ管理テーブル416とマイグレーションポリシー管理テーブル417とユーザ管理テーブル418の詳細は後述する。
図7は、装置管理サーバ50の構成例を示すブロック図である。装置管理サーバ50は、ホスト計算機10、ブロックストレージ20、ハイブリッド型記憶装置70(ハイブリッド制御サーバ40、ブロックストレージ20、可搬型記憶装置30)、アーカイブ管理サーバ60と接続され管理ネットワーク90を介して、各計算機から必要な情報を取得することができ、各計算機に必要な情報(プログラムを含む)を与えることができる。
装置管理サーバ50は、CPU501、NIC502、およびメモリ503を備え、入出力装置504が接続される。
CPU501は、メモリ503上に展開されるプログラムを実行する。
メモリ503は、ストレージ管理プログラム510、ハイブリッド制御サーバ管理プログラム511、アーカイブ管理サーバ連携プログラム512、オフライン可否判定プログラム513、管理ソフト側ストレージ構成管理テーブル514、カートリッジ管理テーブル515、管理ソフト側共有管理テーブル516、管理ソフト側ユーザ管理テーブル517、スケジュール管理テーブル518、およびオフライン候補カートリッジ管理テーブル519を格納する。なお、メモリ503に、その他のプログラムが格納されていてもよい。
ストレージ管理プログラム510は、管理ソフト側ストレージ構成管理テーブル514、カートリッジ管理テーブル515、管理ソフト側共有管理テーブル516、管理ソフト側ユーザ管理テーブル517、およびスケジュール管理テーブル518の情報を使用して、各管理対象(ホスト計算機10、ハイブリッド型記憶装置70(ハイブリッド制御サーバ40、ブロックストレージ20、可搬型記憶装置30)、およびアーカイブ管理サーバ60)の情報を管理する。また、ストレージ管理プログラム510は、ブロックストレージ20内のブロックストレージ管理プログラム204および可搬型記憶装置30内の可搬型記憶装置管理プログラム311と通信し、それらから情報を収集することができる。また、ハイブリッド制御サーバ管理プログラム511は、ハイブリッド制御サーバ40内のサーバ管理プログラム412と通信し、そこから情報を収集することができる。
なお、ストレージ管理プログラム510とハイブリッド制御サーバ管理プログラム511は一体的に構成されたプログラムであっても良い。その場合、ハイブリッド制御サーバ40内のサーバ管理プログラム412が、ブロックストレージ20内のブロックストレージ管理プログラム204および可搬型記憶装置30内の可搬型記憶装置管理プログラム311と通信し、ハイブリッド制御サーバ40内で情報を集約することとし、ハイブリッド制御サーバ管理プログラム511はハイブリッド制御サーバ40内のサーバ管理プログラム412とだけのやりとりで情報収集を実施することにしてもよい。
アーカイブ管理サーバ連携プログラム512は、アーカイブ管理サーバ60の階層管理プログラムと通信し、そこから情報を収集することができる。
オフライン可否判定プログラム513は、オフライン化すべきカートリッジ307および/またはオフライン化してはいけないカートリッジ307を判定するプログラムである。
管理ソフト側ストレージ構成管理テーブル514、カートリッジ管理テーブル515、管理ソフト側共有管理テーブル516、管理ソフト側ユーザ管理テーブル517、スケジュール管理テーブル518、オフライン候補カートリッジ管理テーブル519の詳細は後述する。
入出力装置504は、マウス、キーボード及びディスプレイなどの装置であり、装置管理サーバ50とストレージ管理者(ユーザとも呼ぶ)との間で情報を入出力するために利用される。
図8は、アーカイブ管理サーバ60の構成例を示すブロック図である。アーカイブ管理サーバ60は、データネットワーク80および/または管理ネットワーク90を介してホスト計算機10、ハイブリッド制御サーバ40、装置管理サーバ50と接続され、各計算機から必要な情報を取得することができ、各計算機に必要な情報(プログラムを含む)を与えることができる。
アーカイブ管理サーバ60は、プロセッサであるCPU601、NIC602、メモリ603を含み、入出力装置604が接続される。
CPU601は、メモリ603上に展開されるプログラムを実行する。
メモリ603は、階層管理プログラム610、ジョブ管理テーブル611、データ管理テーブル612、およびポリシー管理テーブル613を格納する。なお、メモリ603にその他のプログラムが格納されていてもよい。
階層管理プログラム610は、階層管理エージェント105、410と通信し、ホスト計算機10およびハイブリッド制御サーバ40のファイル情報を取得し、ホスト計算機10あるいはハイブリッド制御サーバ40のファイルまたはボリュームを別のホスト計算機10あるいはハイブリッド制御サーバ40へ移動し、さらにアーカイブ管理サーバ連携プログラム512と通信し、管理情報を送受信するプログラムである。
ジョブ管理テーブル611、データ管理テーブル612、およびポリシー管理テーブル613の詳細は後述する。
入出力装置604は、マウス、キーボード及びディスプレイなどの装置であり、アーカイブ管理サーバ60とストレージ管理者(ユーザとも呼ぶ)との間で情報を入出力するために利用される。
図9Aは、ブロックストレージ20のブロック構成管理テーブル205の一例を示す図である。ブロック構成管理テーブル205は以下の(2050)乃至(2052)の情報を持つ。
デバイス種別2050は、ブロックストレージ20として備えられたデバイスの種類の情報を格納する。デバイスとしては、物理記憶ストレージデバイス、ブロックストレージ20の有するポートなどの資源、ホスト計算機10に提供される論理ボリューム209などが含まれる。
デバイス識別子2051は、ブロックストレージ20が持つデバイスを一意に識別する情報を格納する。
スペック2052は、デバイスのスペックの情報を格納する。ここに管理されるスペックは、デバイス種別によって設定される項目および値が異なる。デバイスが論理ボリュームの場合、スペックはサイズとRead/Writeの速度の値が設定され、デバイスがポートの場合、スペックは速度の値が設定され、デバイスが物理記憶ストレージデバイスの場合、スペックはRead/Writeの速度の値が設定される。
図9Bは、可搬型記憶装置30の可搬型記憶装置構成管理テーブル312の一例を示す図である。可搬型記憶装置構成管理テーブル312は以下の(3120)乃至(3124)の情報を持つ。
デバイス種別3120は、可搬型記憶装置30が持つデバイスの種類の情報を格納する。ここでデバイスとは可搬型記憶媒体308だけでなく、キャッシュ、ドライブ、媒体搬送部及びカートリッジを含む。
デバイス識別子3121は、可搬型記憶装置30が持つデバイスを一意に識別する情報を格納する。
スペック3122は、デバイス種別によって設定される項目および値が異なる。デバイスがドライブの場合、スペックは速度の値が設定され、デバイスがカートリッジの場合、スペックはサイズの値が設定され、デバイスが記憶媒体の場合、スペックはサイズの値が設定され、デバイスが媒体搬送部の場合、スペックはディスクの搬送にかかる時間であるロード時間が設定される。
親要素3123は、各構成要素がどの構成要素に属するかを示す情報である。例えば、光ディスク等の可搬型記憶媒体の親要素はカートリッジであり、カートリッジの親要素はライブラリである。
媒体寿命3124は、そのデバイスに対するデータのRead/Writeが可能な寿命である。デバイスがカートリッジの場合、カートリッジに含まれる記憶媒体のうちもっとも寿命が短い記憶媒体の寿命を示す日時が設定される。
図10Aは、共有管理テーブル414の一例を示す図である。共有管理テーブル414は、ハイブリッド制御サーバ40内の共有419と、データを最終的に記憶する可搬型記憶装置30内のカートリッジ307と、バッファとして利用するブロックストレージ20内の論理ボリューム209との関係を示すテーブルである。共有管理テーブル414は、以下の(4140)乃至(4145)の情報を持つ。
共有ID4140は、共有419を個々に識別する識別子である。
ライブラリID4141は、カートリッジ307を保持するライブラリの識別子である。
カートリッジID4142は、共有419とつながるカートリッジ3307の識別子である。
全容量4143は、共有419に割り当てられているカートリッジ307の全容量である。
空き容量4144は、全容量のうちの空き容量である。
Retention Term4145は、共有419に保存されるデータ保持期間であるRetention Termである。
利用バッファ4146は、バッファとして利用するブロックストレージ20内の論理ボリューム209の識別子である。
図10Bは、ファイル管理テーブル415の一例を示す図である。ファイル管理テーブル415は、ハイブリッド制御サーバ40に保存されるファイル情報である。ファイル管理テーブル415は、以下の(4150)乃至(4157)の情報を持つ。
ファイルID4150は、ファイルの識別子であり、ファイルパスを含んでも良い。
容量4151は、ファイルの容量である。
共有ID4152は、ファイルを保存している共有の識別子である。
ライブラリID4153は、共有419と繋がっているカートリッジ307を保持するライブラリの識別子である。
カートリッジID4154は、共有419とつながるカートリッジ307の識別子である。
現在場所4155は、ライブラリとバッファのうち、どちらに現在のデータがあるか、またその場所を示す情報である。図10Bでは、バッファに現在のデータがある場合、そのデータがある場所としてブロックストレージ20内の論理ボリューム(Vol1)を例示するが、ハイブリッド制御サーバ40内のキャッシュメモリ404やHDD405内の記憶領域であってもよい。
データ書き込み時間4156は、ファイルが最後に書き込まれた時刻を示す情報である。
削除フラグ4157は、ファイルが削除されたか否かを示すフラグである。記憶媒体が光ディスクのようなWrite Onceのメディアの場合、ディスクにデータが書き込まれるとそのデータ自体を削除することはできない。そのため、ハイブリッド制御サーバ40側で管理情報を削除し、ホスト計算機10からは削除されたように見えるようにする。そのファイルが削除されたか否かを削除フラグ4157が示している。
図11Aは、バッファ内キャッシュデータ管理テーブル416の一例を示す図である。
バッファ内キャッシュデータ管理テーブル416は、バッファ内にあるキャッシュデータの属性の情報と、そのデータがどのタイミングで可搬型記憶媒体308にWriteされる予定であるかという情報を格納する。
バッファ内キャッシュデータ管理テーブル416は以下の(4160)乃至(4166)の情報を持つ。
ファイルID4160は、ファイルの識別子であり、ファイルパスを含んでも良い。
容量4161はファイルの容量である。
共有ID4162はファイルを保存している共有の識別子である。
ライブラリID4163は、共有419と繋がっているカートリッジ307を保持するライブラリの識別子である。
カートリッジID4164は、共有419とつながるカートリッジ307の識別子である。
バッファID4165は、ファイルをキャッシュするバッファの識別子である。図11Aには、ブロックストレージ20内の論理ボリュームを示す識別子を例示するが、ハイブリッド制御サーバ40内のキャッシュメモリ404やHDD405内の記憶領域を指す識別子が格納されてもよい。
Write開始予定時刻4166は、データがハイブリッド制御サーバ40内の共有419に書き込まれた時刻とマイグレーションポリシーから決定される。
図11Bは、マイグレーションポリシー管理テーブル417の一例を示す図である。
マイグレーションポリシー管理テーブル417はハイブリッド型記憶装置70または共有419に設定する、バッファ内データを可搬型記憶媒体308へWriteするためのWrite基準ポリシーを記載する。このテーブルの値は、装置単位の値は装置の初期構築時に設定され、共有に設定する値は共有作成時に設定される。
マイグレーションポリシー管理テーブルは、以下の(4170)乃至(4172)の情報を持つ。
装置ID4170は、ハイブリッド型記憶装置70の識別子である。
共有ID4171は、共有419単位でマイグレーションポリシーを設定したい場合に、その共有419の識別子を設定する。この欄が空欄の場合は装置単位のマイグレーションポリシーであることを示し、この欄に記載のある共有419についてのみ個別でマイグレーションポリシーを適用する。
Write開始ポリシー4172は、バッファにデータが書き込まれた後、可搬型記憶媒体308にデータを書き込むためのポリシーを記載する。図11Bの例では、データが書き込まれたときからの経過時間を記載しているが、それだけでなく例えばバッファの容量利用率などを条件としてもよい。
図11Cは、ユーザ管理テーブル418の一例を示す図である。ユーザ管理テーブル418は、共有にアクセスするユーザの情報を保持するテーブルである。ユーザ管理テーブルの情報は、以下の(4180)乃至(4182)の情報を持つ。
ユーザID4180は、共有419へアクセスするユーザの識別子である。
共有ID4181は、共有419の識別子である。
権限4182は、共有419へアクセスするときに許可される権限の種別である。
図12は、管理ソフト側ストレージ構成管理テーブル514の一例を示す図である。管理ソフト側ストレージ構成管理テーブル514は、ハイブリッド型記憶装置70のブロックストレージ20と可搬型記憶装置30から収集した構成情報であり、以下の(5140)乃至(5147)の情報を持つ。
装置ID5140は、ハイブリッド型記憶装置70の識別子である。
装置内構成要素ID5141は、ハイブリッド型記憶装置70の構成要素であるブロックストレージ20または可搬型記憶装置30の識別子である。
装置種別5142は、ハイブリッド型記憶装置70の構成要素がブロックストレージ20であるか可搬型記憶装置30であるかを示す情報である。
デバイス種別5143は、ブロックストレージ20または可搬型記憶装置30が持つデバイスの種類の情報である。デバイス種別5143は、上述したデバイス種別2050およびデバイス種別3120と同様である。
デバイス識別子5144は、デバイス種別で示されるデバイスの識別子である。
スペック5145は、デバイスのスペックの情報であり、デバイス種別によって設定される項目および値が異なる。詳細は、スペック2052およびスペック3122と同様である。
親要素5146は、各構成要素がどの構成要素に属するかを示す情報である。
媒体寿命5147は、データのRead/Writeが可能な寿命を示す情報である。カートリッジ307の場合はカートリッジ307に含まれる可搬型記憶媒体308のうちもっとも寿命が短いものの寿命を示す日時が設定される。
図13は、カートリッジ管理テーブル515の一例を示す図である。カートリッジ管理テーブル515は、以下の(51501)乃至(51515)の情報を持つ。
装置ID51501は、カートリッジ307が属するハイブリッド型記憶装置70の識別子である。
ライブラリID51502は、カートリッジ307を保持するライブラリの識別子である。
カートリッジID51503は、カートリッジ307の識別子である。
ディスク枚数51504は、カートリッジ307に含まれる可搬型記憶媒体308の数を示す情報である。
全容量51505は、カートリッジ307の全体の容量である。
空き容量51506は、カートリッジ307の空き容量である。
割り当て共有51507は、カートリッジ307が割り当てられている共有419の識別子である。
関連カートリッジ51508は、当該カートリッジ307と何らかの関連がある他のカートリッジ307を示す情報である。何らかの関連とは、例えば、同じ共有419に割り当てられている、コピー元とコピー先の関係になっている、などである。
関連理由51509は、関連するカートリッジ307との関係を示す情報である。図13の例では、Backupにおける正であるか副であるかという情報が入っている。ただし、関連理由51509として、それ以外の情報を設定してもよい。
残り寿命51510は、カートリッジ307の残り寿命を示す情報である。
状態51511は、カートリッジ307がオンライン状態かオフライン状態かを示す。カートリッジ307は、一度、可搬型記憶装置30に設置するとオンライン状態になるが、可搬型記憶装置から抜きとるとオフライン状態となる。
カートリッジ抜き差し回数51512は、カートリッジ307をオンラインからオフラインに替えた回数である。
最終利用時刻51513は、カートリッジ307内の可搬型記憶媒体308に最後にアクセスした時刻である。
ファイル削除フラグ51514は、カートリッジ307内の可搬型記憶媒体308のデータが全て削除されたかどうかを示すフラグである。
図14Aは、管理ソフト側共有管理テーブル516の一例を示す図である。管理ソフト側共有管理テーブル516は、ハイブリッド制御サーバ40内の共有管理テーブル414を元に作成されるテーブルであり、以下の(5160)乃至(5166)の情報を持つ。
装置ID5160は、共有419が属するハイブリッド型記憶装置70の識別子である。
共有ID5161は、共有419の識別子である。
ライブラリID5162は、カートリッジ307を保持するライブラリの識別子である。
カートリッジID5163は、共有419とつながるカートリッジ307の識別子である。
全容量5164は、共有419に割り当てられているカートリッジ307の全体の容量である。
空き容量5165は、共有419の全容量のうちの空き容量である。
Retention Term5165は、共有419にデータが保存される期間であるRetention Termである。
利用バッファ5166は、バッファとして利用するブロックストレージ20内の論理ボリュームの識別子である。
図14Bは、管理ソフト側ユーザ管理テーブル517の一例を示す図である。管理ソフト側ユーザ管理テーブル517は、ハイブリッド制御サーバ40内の共有管理テーブル414を元に作成されるテーブルであり、以下の(5170)乃至(5173)の情報を持つ。
ユーザID5170は、共有419へアクセスするユーザの識別子である。
装置ID5171は、共有419が属するハイブリッド型記憶装置70の識別子である。
共有ID5172は、共有419の識別子である。
権限5173は、共有419へアクセスするときに許可される権限の種別を示す情報である。
図14Cは、スケジュール管理テーブル518の一例を示す図である。スケジュール管理テーブル518は、管理ソフト側ユーザ管理テーブル517とアーカイブ管理サーバ60内のジョブ管理テーブル611とデータ管理テーブル612とポリシー管理テーブル613の情報を元に作成されるテーブルであり、以下の(5180)乃至(5186)の情報を持つ。
上位ID5180は、アクセスする上位のホスト計算機10の識別情報である。本実施例では、上位ID5180として、上位のホスト計算機10のIPアドレスを設定しているが、これに限定されることはない。他の例として、上位ID5180に、ホスト名、WWN(World Wide Name)、その他、ホスト計算機10を識別可能ないかなる情報を用いることもできる。
アクセスユーザID5181は、共有419にアクセスするユーザの識別子である。
処理種別5182は、データにアクセスする処理の種別である。処理種別5182には、Read、Write、Deleteなどが設定される。
開始予定時刻5183は、処理が開始される予定の時刻である。
終了予定時刻5184は、処理が終了される予定の時刻である。処理が終了する予定の時刻が設定されない場合は、終了予定時刻5184が空欄となる。
装置ID5185は、アクセスされるハイブリッド型記憶装置70の識別子である。
共有ID5186は、アクセスされる共有419の識別子である。
図15は、オフライン候補カートリッジ管理テーブル519の一例を示す図である。オフライン候補カートリッジ管理テーブル519はオフライン判定処理で利用されるテーブルである。オフライン候補カートリッジ管理テーブル519は以下の(5190)乃至(5195)の情報を持つ。オフライン候補カートリッジ管理テーブル519を利用するオフライン判定処理の詳細は、図23のステップS1200および図24のステップS1300で説明する。
装置ID5190は、ハイブリッド型記憶装置70の識別子である。
ライブラリID5191は、ライブラリの識別子である。
カートリッジID5192は、カートリッジ307の識別子である。
即時オフライン可否5193は、カートリッジ307が即時オフライン可能か否かを示す情報である。
オフライン可能時刻5194は、カートリッジ307が一定時間経過後にオフライン可能となる場合のオフライン可能となる時刻である。
オフライン禁止5195は、カートリッジ307がオフライン禁止か否かを示す情報である。
図16は、ジョブ管理テーブル611の一例を示す図である。ジョブ管理テーブル611へは、アーカイブ管理サーバ60が保持するアーカイブ関連処理のジョブの情報が格納される。ジョブ管理テーブル611は、アーカイブ管理サーバ60の入出力装置604からユーザが入力した情報が設定される。ジョブ管理テーブル611は、以下の(6110)乃至(6118)の情報を持つ。
ジョブ識別子6110は、ジョブを一意に識別する識別子である。
ジョブ種別6111は、ジョブの内容がRead/Writeいずれの種別であるかを示す情報である。
ジョブ実行エージェントマシン6112は、各ジョブを実行するマシンのマシン名の情報である。図16において、Hostはホスト計算機10を示し、Mgmtは管理サーバを示す。
ジョブ実行エージェントIPアドレス6113は、各ジョブを実行するマシンのIPアドレスの情報である。
利用アプリ/スクリプト6114は、各ジョブによって実行されるマシン上のアプリケーションまたはスクリプトの場所を示す情報である。
利用ユーザ6115は、各ジョブを実行するときにアクセスするユーザの識別子である。
利用データ6116は、各ジョブによって実行されるマシン上のアプリケーションまたはスクリプトが利用するデータを示す情報である。データの情報とは、ホスト計算機10またはアプリケーションが認識しているファイルを表わす情報あるいはディレクトリ名である。
ジョブの実行開始予定時刻6117は、ジョブが実行される予定の時刻の情報である。
図17Aは、データ管理テーブル612の一例を示す図である。データ管理テーブル612へはアーカイブ管理サーバ60が保持するデータの情報が格納される。データ管理テーブル612は、以下の(6120)乃至(6125)の情報を持つ。
ファイルID6120は、管理対象となるデータのファイルを一意に識別する識別子である。
容量6121は、当該データのサイズを示す。
Host6122は、データが保存されているホスト計算機10の場所を示す情報である。
データ保存装置6123は、データが保存されているハイブリッド型記憶装置70の識別子である。
データパス6124は、データが保存されている可搬型記憶媒体308の記憶領域内のデータパスを示す情報である。なお、この実施例では、データパスのルートの情報がハイブリッド型記憶装置70の識別子に対応し、その1つ下位のディレクトリがハイブリッド制御サーバ40の共有419の識別子と対応する。
最終アクセス時刻6125は、当該データが最後にアクセスされた時刻である。
図17Bは、ポリシー管理テーブル613の一例を示す図である。ポリシー管理テーブル613にはアーカイブ管理サーバ60が保持する、ファイルに対するアーカイブポリシーの情報が格納される。ポリシー管理テーブル613の情報は、アーカイブ管理サーバ60の入出力装置604からユーザが入力した情報が設定される。ポリシー管理テーブル613は以下の(6130)乃至(6134)の情報を持つ。
階層6130は、ファイルが存在するホスト計算機10またはブロックストレージ20を示す情報である。図17Bでは、ファイルがホスト計算機10に保存されている場合をHost1で示し、ファイルがブロックストレージ20に格納されている場合をST1で示している。
ファイル6131は、ファイルの識別子である。なお、図17Bでは、ファイル単位にアーカイブポリシーを設定する例を示しているが、これに限定されることはない。ホスト単位やディレクトリ単位でアーカイブポリシーを設定することにしても良い。
移動ポリシー6132は、ファイルのデータの移動ポリシーを示す情報である。移動ポリシーとして、例えば、一定期間アクセスが無い場合の移動先を示す情報などが設定される。
移動後の削除ポリシー6133は、移動ポリシーに従ってデータを移動した後の元ファイルに対する処理の内容を示すポリシー情報である。移動後の削除ポリシーとして、例えば、アーカイブ前のファイルのショートカットを示すスタブ情報を残す、元のファイルを削除する、などの情報が設定される。
図18は、実施例1によるハイブリッド型記憶装置70における記憶領域の割当処理(ステップS100)を示すフローチャートである。本実施例では、ユーザへ提供する記憶領域として共有419を用意し、その共有419に可搬型記憶媒体308を含むカートリッジ307を割り当てる例を示すが、カートリッジ307単位ではなく可搬型記憶媒体308そのものを共有419に割り当てても良い。
ステップS101にて、ユーザまたはストレージ管理者が装置管理サーバ50内の入出力装置504を介して、ストレージ管理プログラム510に共有419の作成に必要な各種情報の値を入力する。共有419の作成に必要な情報として、共有名、共有の容量、CIFS/NFSなどのサービス種別、共有にアクセス可能なユーザを示すユーザ情報、Replication(Backup)設定、Retention Term設定、共有単位に設定するマイグレーションポリシー、閾値、バッファに必要となる論理ボリュームなどの項目が挙げられる。各項目について以下に説明する。
上記Replication(Backup)設定とは、Replicationに関する設定情報であり、データ保存時に作成する複製の数、Backup作成時のBackup先装置、Backup作成タイミング(同期、非同期)、などである。
上記Retention Term設定とは、Retention期間内のアクセス権限、Retention Term期限、Retention Term経過後の対応に関する設定情報である。
Retention期間内のアクセス権限は、基本的には、ReadOnlyであるが、場合によっては特定ユーザのみRead/Writeが可能とするなどの設定が可能である。Retention Term経過後の対応としては、例えば、ストレージ管理者へ通知、自動データ削除、などがある。
上記共有単位のマイグレーションポリシーは、上述したマイグレーションポリシー管理テーブル417に含まれるバッファから可搬型記憶媒体308へデータを移動するタイミングに関する設定情報である。
上記閾値とは、共有419に設定する容量の閾値、性能の閾値、および媒体寿命の閾値などである。容量、性能、媒体寿命などがこの閾値に達するとストレージ管理プログラム510は入出力装置504を介してストレージ管理者に閾値超過の旨を通知する。
上記バッファに必要な論理ボリュームは、共有419にデータを保存して可搬型記憶媒体308へデータを書きこむまでに一時的にデータを保存するブロックストレージ20内の論理ボリューム209を指定する。なお、ハイブリッド型記憶装置70内でバッファ用論理ボリュームを1つしか用意しない運用態様の場合、特に指定せずにデフォルトでその1つの論理ボリュームが指定される。なお、ここに記載した以外の項目を、共有419の作成に必要な情報として設定してもよい。
ステップS102にて、ユーザまたはストレージ管理者が装置管理サーバ50内の入出力装置504を介して、ストレージ管理プログラム510を利用して、共有419を作成するために必要な容量以上の未割当かつ空き容量を有するカートリッジ307を選択する。このときにユーザまたはストレージ管理者がストレージ管理プログラム510を利用して手動で必要なカートリッジ307を探してもよく、ストレージ管理プログラム510が適当なカートリッジ307を提示してもよい。なお、このときにオフライン管理が必要な場合があり、その処理が後述のステップS1000以降(特にステップS1110)の処理に繋がる。
ステップS103にて、ストレージ管理プログラム510が、入力された情報のうちバッファ用に指定されたボリュームがハイブリッド制御サーバ40に割り当て済か否かチェックする。そのボリュームが既に割り当て済、すなわちマウントまで実施済の場合、ステップS104へ進む。割り当て済みで無い、つまりマウントまで実施済でない場合、ステップS105へ進む。
ステップS104にて、ストレージ管理プログラム510がハイブリッド制御サーバ40のサーバ管理プログラム412に対して、共有割当設定リクエストを出す。
ステップS105にて、ストレージ管理プログラム510が、ブロックストレージ20内の論理ボリューム209をハイブリッド制御サーバ40へ割り当てる処理を実施する。この処理は、一般的なブロックストレージ内のボリュームをサーバへ割り当てる処理であるため詳細は割愛する。論理ボリュームを割り当てた後、ストレージ管理プログラム510がハイブリッド制御サーバ40のサーバ管理プログラム412へ論理ボリュームをマウントするよう指示を出す。サーバ管理プログラム412はデバイスマネージャ413を利用し、割り当てられた論理ボリュームをマウントする。
ステップS106にて、ハイブリッド制御サーバ40のサーバ管理プログラム412が、指定された情報を元に、共有管理テーブル414、マイグレーションポリシー管理テーブル417、およびユーザ管理テーブル418を更新する。
ステップS107にて、ハイブリッド制御サーバ40のサーバ管理プログラム412が、設定が完了したことをストレージ管理プログラム510へ通知する。
ステップS108にて、ストレージ管理プログラム510は装置管理サーバ50内のカートリッジ管理テーブル515、管理ソフト側共有管理テーブル516、および管理ソフト側ユーザ管理テーブル517を更新する。なお、カートリッジ管理テーブル515は、ステップS101にて入力された全ての項目を記載していないが、これらの項目の値をカートリッジ管理テーブル515に格納してもよい。
図19Aは、データ書込み時の処理(ステップS110)を示すフローチャートである。
ステップS111にて、ホスト計算機10からデータがハイブリッド制御サーバ40内の共有419に書きこまれる。読み書きプログラム411が共有管理テーブル414に記載された情報に従い、バッファにデータを書きこむ。
ステップS112にて、ハイブリッド制御サーバ40内のサーバ管理プログラム412がファイル管理テーブル415とバッファ内キャッシュデータ管理テーブル416を更新する。ファイル管理テーブル415における現在場所のカラムには、まずは共有管理テーブル414で指定された利用バッファの値を設定する。データ書込み時刻には現在の時刻を設定する。バッファ内キャッシュデータ管理テーブル416のWrite開始予定時刻のカラムには現在時刻とマイグレーションポリシー管理テーブル417に記載された条件(Write開始ポリシー4172)の時間を加算した時刻を設定する。
ステップS113にて、サーバ管理プログラム412が、書き込まれたデータがマイグレーションポリシー管理テーブル417に設定された条件を満足するか否かチェックする。
ステップS114にて、マイグレーションポリシーに設定された条件を満足するデータがある場合、ステップS114へ進む。条件を満足するデータが無い場合はステップS113へ戻る。
ステップS115にて、サーバ管理プログラム412は、読み書きプログラム411に対して、条件を満足したデータを、指定されたカートリッジ307へコピーするよう指示を出す。読み書きプログラム411は、指定されたデータを、指定されたカートリッジ307へコピーする。なお、カートリッジ307およびカートリッジ307内の可搬型記憶媒体308は事前にハイブリッド制御サーバ40からアクセスできるように設定しておく。この設定はSCSI直結でもよく、デバイスマネージャによるマウントでも、また他の方法による設定でもよい。データのコピーが完了した後、読み書きプログラム411は、バッファ内の実データについてはリンク情報(スタブ情報とも呼ぶ)のみ残し、実データを削除する。実データ削除とリンク作成が完了すると、読み書きプログラム411はサーバ管理プログラム412へ完了通知を送る。
ステップS116にて、サーバ管理プログラム412は、ファイル管理テーブル415における現在場所のカラムの値をカートリッジIDの値に変更する。また、サーバ管理プログラム412は、バッファ内キャッシュデータ管理テーブル416の該当データの行を削除する。
図19Bは、データ削除時の処理(ステップS120)を示すフローチャートである。
ステップS121にて、ホスト計算機10からデータ削除リクエストをハイブリッド制御サーバ40が受け取る。ハイブリッド制御サーバ40のサーバ管理プログラム412は、ファイル管理テーブル415を確認し、データ削除リクエストで指定されたデータがバッファにある場合、読み書きプログラム411へバッファ内の該当実データを削除するよう指示を出す。
ステップS122にて、サーバ管理プログラム412は、バッファ内のデータを削除した場合は、バッファ内キャッシュデータ管理テーブル416の該当行を削除し、ファイル管理テーブル415の該当行も削除する。バッファ内から可搬型記憶媒体308へ既にデータが移動している場合は、サーバ管理プログラム412はファイル管理テーブル415の削除フラグをYesへ変更する。
ステップS123にて、サーバ管理プログラム412は、共有管理テーブル414とファイル管理テーブル415の内容から、1つのカートリッジ307内の全てのデータの削除フラグがYesになっているカートリッジ307があるか否か調べ、全てのデータが削除になっているカートリッジ307があれば、ステップS124へ進む。全てのデータが削除されているカートリッジ307がなければ、処理を終了する。
ステップS124にて、サーバ管理プログラム412は、ストレージ管理プログラム510へ、全データが削除されたカートリッジ307の情報を通知する。通知を受けたストレージ管理プログラム510は、カートリッジ管理テーブル515において、通知されたカートリッジ307のファイル削除フラグをYesへ変更する。
なお、ここではステップS124でサーバ管理プログラム412がストレージ管理プログラム510へ情報を通知することにしたが、これに限定されない。他の例として、ストレージ管理プログラム510が定期的にハイブリッド制御サーバ40のサーバ管理プログラム412へ問い合わせることにより情報を取得し、カートリッジ管理テーブル515を更新することにしてもよい。
図20は、オフライン管理の全体処理を示すフローチャートである。実施例1では、ハイブリッド制御サーバ40がホスト計算機10からアクセス可能なファイルI/Fを提供する構成のシステムにおける処理の流れを示す。
ステップS1000にて、定期的に、ユーザまたは管理者がアーカイブ管理サーバ60に対してスケジュール情報を入力し、またアーカイブ管理サーバ60内の階層管理プログラム610が各種情報を収集し、さらに装置管理サーバ50のストレージ管理プログラム510が各種情報を収集する。
ステップS1100にて、ユーザまたはストレージ管理者が記憶領域の作成または追加を実施する。また、ユーザが、データ読み出し処理のような、カートリッジ307内のデータを利用する処理が実施される。この処理内でオフライン管理が必要な処理が発生する。
ステップS1200にて、装置管理サーバ50内のオフライン可否判定プログラム513が現在の構成情報およびユーザ情報をもとにカートリッジ307のオフライン判定を実施する。ステップS1200のオフライン判定で、オフライン化することが禁止されるカートリッジ307、即時オフライン化することが可能なカートリッジ307、現在の構成ではオフライン化できるか否か判定することができないカートリッジ307が判別される。
ステップS1300にて、装置管理サーバ50内のオフライン可否判定プログラム513がスケジュール管理テーブル518に設定されている情報を元に、将来の構成情報およびユーザ情報を計算し、その情報からカートリッジ307のオフライン判定を実施する。ステップS1300のオフライン判定で、ステップS1200で、現在の構成ではオフライン化できるか否か判定することができなかったカートリッジ307を対象とし、将来の構成では将来の所定の時刻にオフライン化することが可能となるカートリッジ307、将来の構成を考慮してオフライン化することが禁止されるカートリッジ307が判別される。
ステップS1400にて、装置管理サーバ50内のストレージ管理プログラム510がオフライン候補カートリッジ一覧を表示する。
以上の処理により、オフライン管理が必要となった場合に、ストレージ管理者は、オフライン化すべきカートリッジ307またはオフライン化してはいけないカートリッジ307を知ることができる。
図21A〜Cは、ステップS1000の詳細処理を示すフローチャートである。ステップS1000は3つの処理からなる。
図21Aは、スケジュール情報を入力する処理(ステップS1010)を示すフローチャートである。
ステップS1011にて、ユーザまたはアーカイブ管理者が、アーカイブ管理サーバ60の入出力装置604を介して階層管理プログラム610に対して、ジョブ実行情報を入力する。ジョブ実行情報とは、実行するジョブのジョブ種別、ジョブ実行エージェントマシン、ジョブ実行エージェントIPアドレス、(必要に応じて)利用アプリまたはスクリプト、ジョブ実行(データアクセス用)ユーザ、利用データ、およびジョブの実行開始予定時刻を含む。ジョブ種別は、基本的にはRead/Writeの種別であるが、アーカイブ管理サーバ60の処理としてバックアップしたアーカイブデータをリストアするRestoreなどといったジョブ種別も記載が可能とする。利用アプリまたはスクリプトには、例えばデータを移動する必要がある場合に、データの移動元および移動先などの詳細な処理を記載することが可能である。
ステップS1012にて、ユーザまたはアーカイブ管理者が入力した情報をもとに階層管理プログラム610がジョブ管理テーブル611を更新する。
図21Bは、データ情報を収集する処理(ステップS1020)を示すフローチャートである。
ステップS1021にて、階層管理プログラム610がホスト計算機10から、OS、アプリケーション、あるいは階層管理エージェント105を通じて、ファイル情報を定期的に収集する。ホスト計算機10aから直接データをハイブリッド制御サーバ40へ転送する場合、ハイブリッド制御サーバ40内の階層管理エージェント410からファイル情報を定期的に収集する。
ステップS1022にて、階層管理プログラム610が、収集した情報に基づいてデータ管理テーブル612を更新する。
図21Cは、装置管理サーバ50が情報を収集する処理(ステップS1030)を示すフローチャートである。
ステップS1031にて、装置管理サーバ50内のストレージ管理プログラム510が、ブロックストレージ20内のブロックストレージ管理プログラム204からブロック構成管理テーブル205の情報を、可搬型記憶装置30内の可搬型記憶装置管理プログラム311から可搬型記憶装置構成管理テーブル312の情報を、定期的に収集する。また、装置管理サーバ50内のハイブリッド制御サーバ管理プログラム511が、ハイブリッド制御サーバ40内のサーバ管理プログラム412から共有管理テーブル414、ファイル管理テーブル415、バッファ内キャッシュデータ管理テーブル416、およびユーザ管理テーブル418の情報を定期的に収集する。また、装置管理サーバ50内のアーカイブ管理サーバ連携プログラム512がアーカイブ管理サーバ60内の階層管理プログラム610からジョブ管理テーブル611とデータ管理テーブル612とポリシー管理テーブル613の情報を定期的に収集する。
ステップS1032にて、ストレージ管理プログラム510は、ブロック構成管理テーブル205と可搬型記憶装置構成管理テーブル312の情報に基づき、管理ソフト側ストレージ構成管理テーブル514の情報を更新する。またストレージ管理プログラム510は、共有管理テーブル414とユーザ管理テーブル418の情報に基づき、管理ソフト側共有管理テーブル516と管理ソフト側ユーザ管理テーブル517の情報を更新する。また、ストレージ管理プログラム510は、管理ソフト側共有管理テーブル516とファイル管理テーブル415とジョブ管理テーブル611とデータ管理テーブル612の情報に基づき、スケジュール管理テーブル518の情報を更新する。なお、データ管理テーブル612の説明で述べたように、データパス6124がハイブリッド型記憶装置70内の各種における識別子と対応させることができる。この実施例では、データパスのルートの情報がハイブリッド型記憶装置70の識別子と対応し、その1つ下位のディレクトリがハイブリッド制御サーバ40の共有419の識別子と対応する。よって、この情報からOSが認識するデータパスと、ハイブリッド制御サーバ40が認識するデータの位置および共有419を対応づけることが可能であり、さらにジョブ管理テーブル611のジョブ情報から、データに対するアクセススケジュールをスケジュール管理テーブル518に設定することが可能となる。
図22A、BはステップS1100の詳細処理を示すフローチャートである。ステップS1100は大きく2つの処理からなる。1つは、記憶領域(共有)を作成する処理と記憶領域容量を追加する処理である。もう1つは、データのRead/Writeの処理である。いずれについてもオフライン管理のきっかけとなる処理を説明する。
図22Aは、ステップS1100のうち、記憶領域(共有)の作成および記憶領域容量の追加の処理(ステップS1110)を示すフローチャートである。
ステップS1111にて、まず、記憶領域(共有)の作成あるいは容量の追加に必要となる容量の情報を入力する。この処理は、記憶領域(共有)の作成については、図18に示したステップS101に相当する。
ステップS1112にて、ストレージ管理プログラム510がカートリッジ管理テーブル515の情報に基づき、必要な空き容量を満足するカートリッジがあるか否か調べる。必要な空き容量がある場合、ステップS1113へ進み、ない場合はステップS1200へ進む。
ステップS1113にて、ストレージ管理プログラム510が、割り当てることが可能なカートリッジ307に該当するカートリッジ307の情報を表示する。この場合、オフライン管理の処理は不要なので、オフライン管理の全処理がここで終了となる。
図22Bは、ステップS1100のうち、Read/Write要求の処理(ステップS1120)を示すフローチャートである。
ステップS1121にて、サーバ管理プログラム412がホスト計算機からRead/Write要求を受けたとき、またはストレージ管理プログラム510がスケジュール管理テーブル518を参照してRead/Write要求が予定されていることを知ったとき、カートリッジ管理テーブル515の情報から、Read/Write要求の対象に該当するカートリッジ307の状態がオフラインかどうか調べる。該当するカートリッジ307がオフライン状態でなければ、オフライン管理の処理は不要であるため、オフライン管理の全処理がここで終了となる。一方、該当するカートリッジ307がオフライン状態であれば、ステップS1200へ進む。
図23は、オフライン可否判定プログラム513が現在の構成情報およびユーザ情報をもとにカートリッジのオフライン判定を実施する処理(ステップS1200)のフローチャートである。
ステップS1201にて、装置管理サーバ50内のオフライン可否判定プログラム513が、既にオフライン候補カートリッジ管理テーブル519に古い情報が設定されていれば、その内容を削除する。
以降のステップS1202〜S1210の処理は、カートリッジ管理テーブル515に記載された全てのカートリッジ307に対してループ処理を実施する。以下、各カートリッジ307に対する処理内容を説明する。
ステップS1202にて、オフライン可否判定プログラム513がカートリッジ管理テーブル515のファイル削除フラグを確認し、カートリッジ307内のデータが削除されているか否かチェックする。データが削除されていれば当該カートリッジ307へのアクセスが発生することはないため、ステップS1209へ進む。データが削除されていなければステップS1203へ進む。
ステップS1203にて、オフライン可否判定プログラム513がスケジュール管理テーブル518を調べ、該当カートリッジ307が割当済となっている共有419に、基準時間以内に、Read/Restore等、参照するアクセスが発生する予定があるか否か調べる。これは、共有419にアクセスする全てのユーザのスケジュールをチェックすることにより調べることができる。なお、上記基準時間は固定されていてもよいし、変更可能であってもよい。基準時間を固定する場合、例えばマイグレーションポリシーとして設定されている時間(例:24時間)を用いても良いし、別途、ハイブリッド型記憶装置70に固有の値が設定されてもよい。また、ストレージ管理プログラム510において基準時間をユーザによる設定が可能にしておいて、必要に応じて、ユーザが基準時間を設定することにしてもよい。スケジュールを調べた結果、カートリッジ307を参照するアクセスが発生する予定がある場合、そのカートリッジ307をオフライン化にしてはいけないため、ステップS1208へ進む。そのカートリッジ307を参照するアクセスが発生する予定がない場合、ステップS1204へ進む。
ステップS1204にて、オフライン可否判定プログラム513がカートリッジ管理テーブル515を参照し、カートリッジ307に容量に空きがあるか否かチェックする。カートリッジ307に空きがある場合は、現時点では、そのカートリッジ307がオフライン化することができるか否かを判断するための十分な情報が未だ揃っていないため、ステップS1210へ進む。カートリッジ307に空きが無ければ、ステップS1205へ進む。
ステップS1205にて、オフライン可否判定プログラム513がカートリッジ管理テーブル515を参照し、そのカートリッジ307に関連カートリッジがあるか否かチェックする。関連カートリッジがあれば、ステップS1205へ進む。ここで関連カートリッジが無いカートリッジ307は、そのカートリッジ307を参照するアクセスが発生する予定もなく、空き容量もないため、当該カートリッジ307へアクセスされることが無いと考えられる。そのため、ステップS1209へ進む。
ステップS1206にて、オフライン可否判定プログラム513が、スケジュール管理テーブル518を調べ、基準時間以内に全ての関連カートリッジが割当済の共有419に、Read/Restore等、その関連カートリッジをアクセスする予定があるか否か調べる。これは、共有419にアクセスする全てのユーザのスケジュールについてチェックすることで調べることができる。ここでの基準時間の考え方は、ステップS1203での基準時間の考え方と同じである。関連カートリッジを参照するアクセスが発生する予定がある場合、今後、当該カートリッジ307もアクセスされる可能性があると考え、安全のためにオフライン禁止と判断し、ステップS1208へ進む。関連カートリッジを参照するアクセスが発生する予定が無い場合は、ステップS1207へ進む。
ステップS1207にて、オフライン可否判定プログラム513が、全ての関連カートリッジの空き容量を調べる。カートリッジ307に空き容量のある関連カートリッジが無い場合は、そのカートリッジ307は即時オフライン可能であると判断できるため、ステップS1209へ移行する。1つでも空き容量のある関連カートリッジがあり、その関連カートリッジとの関連理由がBackupの正側である場合、現時点では、そのカートリッジ307はまだオフライン化することができるか否かの判断ができない。将来、関連カートリッジに空き容量が無くなった時点で、関連カートリッジ全体として判定が変わる可能性があるためである。そこで、その場合にはステップS1210へ進む。それ以外の場合は、即時オフライン化が可能と考えられるため、ステップS1209へ進む。
ステップS1208にて、オフライン可否判定プログラム513が、オフライン候補カートリッジ管理テーブル519に、当該カートリッジ307をオフライン禁止と登録する。すなわち、オフライン候補カートリッジ管理テーブル519のオフライン禁止カラムにYesを設定する。
ステップS1209にて、オフライン可否判定プログラム513がオフライン候補カートリッジ管理テーブル519に当該カートリッジを即時オフライン化が可能なカートリッジとして登録する。すなわちフライン候補カートリッジ管理テーブル519の即時オフライン可否カラムにYesを設定する。
ステップS1210にて、オフライン可否判定プログラム513が、当該カートリッジ307を現在構成ではオフライン化すべきかどうか判断できないカートリッジとする。そのカートリッジ307については、このフローではオフライン可否が確定しない。
ループ処理として次のカートリッジ307へ処理を移行させるため、次のカートリッジ307についてステップS1202からの処理を実行する。そして、全てのカートリッジ307についての処理が終わると、ステップS1300へ進む。
図24は、オフライン可否判定プログラム513がスケジュール管理テーブル518に設定されている情報を元に将来の構成情報およびユーザ情報を計算し、その情報からカートリッジ307のオフライン判定を実施する処理(ステップS1300)のフローチャートである。ステップS1301〜S1309では、カートリッジ管理テーブル515に記載されたカートリッジ307のうち、ステップS1200でオフライン可否の判定がされなかったカートリッジ307に対してループ処理を実施する。以下、各カートリッジ307に対する処理内容について説明する。
ステップS1301にて、オフライン可否判定プログラム513がスケジュール管理テーブル518の内容に基づき、基準時間以内に、カートリッジ307内のデータが全て削除されるかどうか、またはカートリッジ307が寿命に到達するかどうか、またはカートリッジ307のRetentionTermが経過するかどうか、をチェックする。
ここでの基準時間は、ステップS1203の処理における基準時間と同様、固定であってもよいし、可変であってもよい。この基準時間以内に、データの削除、または寿命に到達、またはRetentionTermが経過、という事象が発生する予定があれば、その事象の発生した以降は、カートリッジ307がアクセスされることがないため、ステップS1309へ進む。それらに事象の予定がなければ、ステップS1302へ進む。
ステップS1302にて、オフライン可否判定プログラム513がカートリッジ管理テーブル515を参照し、カートリッジ307に空き容量があるか否かチェックする。空き容量があればステップS1303へ進み、空き容量が無ければステップS1306へ進む。
ステップS1303にて、オフライン可否判定プログラム513が、ストレージ管理プログラム510が取得したバッファ内キャッシュデータ管理テーブル416の情報を取得する。
ステップS1304にて、オフライン可否判定プログラム513が、バッファ内キャッシュデータ管理テーブル416及び管理ソフト側ストレージ構成管理テーブル514の情報から、バッファから当該カートリッジ307の可搬型記憶媒体308に保存する予定のデータが書込み完了する時刻を計算する。バッファ内キャッシュデータ管理テーブル416のデータサイズとWrite開始予定時刻の情報と、管理ソフト側ストレージ構成管理テーブル514のHDDのRead/Write性能情報と、ライブラリのドライブのRead/Write性能情報と、ロボットのロード時間の情報とから、データ書込み完了時刻を計算することができる。
ステップS1305にて、オフライン可否判定プログラム513が、ステップS1304の結果の書込みを完了してもカートリッジ307の空き容量が残るか否かをチェックする。空き容量が残る場合は現時点ではオフライン化してよいかどうか未だ判断ができないため、安全のためオフライン禁止と考え、ステップS1308へ進む。空き容量が無くなる場合、カートリッジ307へのアクセスの予定が無く、空き容量も無くなるため、ステップS1309へ進む。
ステップS1306にて、オフライン可否判定プログラム513が全ての関連カートリッジについて、ステップS1303、S1304を実施する。
ステップS1307にて、ステップS1303およびS1304を実施した後、オフライン可否判定プログラム513が、全ての関連カートリッジを確認し、基準時間以内において空き容量がある状態の関連カートリッジがあるか否か確認する。空き容量がある関連カートリッジがあるカートリッジ307は、現時点ではオフライン化してよいかどうかの判断ができないため、安全のためオフライン禁止と考え、ステップS1308へ進む。基準時間内に全ての関連カートリッジ空き容量が無くなる場合、カートリッジ307へのアクセス予定が無く、カートリッジ307の空き容量も無くなるため、ステップS1309へ進む。
ステップS1308に、オフライン可否判定プログラム513がオフライン候補カートリッジ管理テーブル519に当該カートリッジ307をオフライン禁止として登録する。すなわち、オフライン候補カートリッジ管理テーブル519のオフライン禁止カラムにYesを設定する。
一方、ステップS1309にて、オフライン可否判定プログラム513がオフライン候補カートリッジ管理テーブル519に当該カートリッジを将来にオフライン可能なカートリッジとして登録する。すなわち、オフライン候補カートリッジ管理テーブル519の即時オフライン可否カラムにNoを設定し、オフライン可能時刻にチェックした基準時間または所定の条件を満たす時間を設定する。
全てのカートリッジ307のチェックが終わるとオフライン可否判定プログラム513がストレージ管理プログラム510に対してオフライン可否判定が終わったことを通知し、ステップS1400へ進む。
図25は、装置管理サーバ50内のストレージ管理プログラム510がオフライン候補カートリッジ一覧を表示する処理(ステップS1400)のフローチャートである。
ステップS1401にて、ストレージ管理プログラム510がオフライン候補カートリッジ管理テーブル519にオフライン可能なカートリッジ307があるか否かチェックする。すなわち、オフライン候補カートリッジ管理テーブル519に、即時オフライン可否カラムにYesが設定されているか、またはオフライン可能時刻に値が設定されているカートリッジ307があるか否かチェックする。チェックの結果、オフライン可能に該当するカートリッジ307がある場合はステップS1402へ進む。オフライン可能に該当するカートリッジ307が無い場合はステップS1405へ進む。
ステップS1402にて、ストレージ管理プログラム510がオフライン候補カートリッジ管理テーブル519から即時オフライン可否カラムがYesのカートリッジ307を抽出し、即時オフライン可能カートリッジの一覧を作成する。
ステップS1403にて、ストレージ管理プログラム510がオフライン候補カートリッジ管理テーブル519からオフライン可能時刻が設定されているカートリッジ307を抽出し、そのオフライン可能時刻から現在時刻を減算することにより必要な待ち時間を計算し、条件付きオフライン可能カートリッジの一覧を作成する。
ステップS1404にて、ストレージ管理プログラム510がステップS1402およびS1403で作成した一覧をオフライン可能カートリッジとしてストレージ管理者へ提示する。図26は、オフライン可能カートリッジをストレージ管理者へ提示するGUI(Graphical User Interface)の一例を示す図である。図26の説明は後述する。なお、ここではGUIによってオフライン可能カートリッジをストレージ管理者に提示する例を示したが、これに限定されることはない。他の例とし、GUIでなくてもよく、CLI(Command Line Interface)で提示しても良く、eメールやトラップによって通知してもよい。
ステップS1405にて、ストレージ管理プログラム510が、オフライン可能カートリッジが存在しないことをストレージ管理者へ提示する。
図26では、オフライン化する候補のカートリッジ307の一覧を提示するGUIの一例を示す。G1000が画面全体を示す。G1001はストレージ管理プログラム510が管理しているハイブリッド型記憶装置70の一覧を示すペインである。G1002は、G1001にて特定されたハイブリッド型記憶装置70内のオフライン管理を実施する候補のカートリッジ307の一覧を示す。G1003は、即時オフライン可能カートリッジの一覧を示す。G1003には、カートリッジ307を特定するためのライブラリ識別子、カートリッジ識別子、全容量、および空き容量が示される。G1004は一定時間経過後にオフライン可能となるカートリッジ307の一覧を示す。ここには、カートリッジ307を特定するためのライブラリ識別子、カートリッジ識別子、全容量、および空き容量に加え、更に、オフライン可能となるまでの待ち時間を示す。なお、ここでは待ち時間を示す例を示したが、本発明がこれに限定されることはない。他の例として、待ち時間でなく、オフライン可能となる絶対的な時刻を提示することにしてもよい。さらに、この一覧の情報はこれらに限らずカートリッジ抜き差し回数など他の情報を提示してもよい。また、G1003とG1004の一覧はクリックすることにより各カラムをソートできてもよい。例えば、任意の項目をクリックすることにより、その項目を基準としてカートリッジが並べ替えられてもよい。このソート処理により、各項目を基準とした順位にカートリッジを並べ替えることが可能となり、オフライン可能なカートリッジのうち、特定の項目基準で選択することが容易となる。
以上、本実施例の処理により、ハイブリッド制御サーバ40が提供するファイルI/Fによりホスト計算機10からアクセスが可能な構成のハイブリッド型記憶装置70において、オフライン管理実施時には、ストレージ管理者が装置内部の処理まで意識せずに、オフライン化すべきカートリッジ307またはオフライン化してはいけないカートリッジ307を適切に選択することが可能となる。また、それにより、不要なオフライン処理の回数を減らすことができる。
本実施例では、第1段階として、カートリッジ307について、即時にオフライン化が可能であるか、オフライン化することが禁止であるか、そのどちらともいえないかを判定し、第1段階において、どちらともいえないと判断されたカートリッジ307について、第2段階として、所定の基準時間内にオフライン化が可能となるか否かを判定する。そのため、現在の状態だけでなく、将来の状態も考慮してオフラインするものを適切に判断することができる。
また、装置管理サーバ50は、第1段階において、全てのデータが削除済ではなく、アクセス予定がなく、空き容量があるカートリッジ307を、即時にオフライン化が可能あるいはオフライン化することが禁止のどちらとも言えないと判定する。これにより、アクセス予定が無くても空き容量があれば、将来にはアクセスが発生する可能性があるとして第2段階に移行するので、将来のアクセスの可能がある場合に、その可能性を考慮して適切な判断を行うことができる。
また、装置管理サーバ50は、第1段階において、アクセス予定があるカートリッジ307を、オフライン化することが禁止であると判定する。アクセス予定がある場合にオフライン化すべきでないと判断するので、アクセスされたカートリッジ307がオフライン化されていたという事態の発生を低減することができる。
また、装置管理サーバ50は、第1段階において、正副の関連付けがされて使用される関連カートリッジがあるカートリッジ307については、カートリッジ307および関連カートリッジの状態に基づいて判定を行う。正副の関連付けがされているカートリッジ307はアクセスの発生が相互に依存するので、関連カートリッジの状態も考慮することにより、より適切な判断が可能となっている。
また、装置管理サーバ50は、第1段階において、全てのデータが削除済ではなく、アクセス予定がなく、空き容量がないカートリッジ307については、そのカートリッジ307と正副の関連付けがされて使用される関連カートリッジがある場合、関連カートリッジにアクセス予定がなく、関連付けにおいて、カートリッジ307が正側であり、関連カートリッジに空き容量があれば、カートリッジ307を、即時にオフライン化が可能でもオフライン化することが禁止でもないと判定する。これにより、関連カートリッジがある場合に、将来、関連カートリッジに空き容量が無くなった時点で、関連カートリッジの判定が変わる可能性があることを考慮して、カートリッジ307について適切な判断を行うことが可能となっている。
また、装置管理サーバ50は、第2段階において、所定の基準時間内に、全てのデータが削除されるか、寿命に達するか、リテンションタームが経過するかのいずれかの状態になるカートリッジ307を、それらの状態になる時刻以降はオフラインすることが可能であると判定する。第1段階では、オフライン化が可能か否か判断できなかったカートリッジ307であっても、基準時間内に所定の状態になるのであれば、それ以降はオフライン化が可能であると容易に適切な判断をすることができる。
また、装置管理サーバ50は、第2段階において、カートリッジ307が、基準時間内に完了する書き込みが行われた後に空き容量がなければ、ある時刻以降はオフライン化することが可能であると判定し、書き込みが行われた後に空き容量があれば、オフライン化することが禁止であると判定する。基準時間内の書き込みによって空き容量が無くなる場合にそれ以降はオフライン化することが可能であると判断するので、基準時間内の将来のアクセスを考慮して適切に判断を行うことができる。
また、装置管理サーバ50は、第2段階において、正副の関連付けがされて使用される関連カートリッジがあるカートリッジ307については、そのカートリッジ307および関連カートリッジの基準時間後の状態に基づいて判定を行う。正副の関連付けがされているカートリッジ307については、将来の状態についても関連カートリッジへのアクセスも考慮してオフライン化が可能か否か判断するので、関連付けがされているカートリッジ307について、より適切な判断が可能である。
また、装置管理サーバ50は、第2段階において、関連カートリッジに基準時間内に完了する書き込みが行われた後に空き容量がなければ、カートリッジ307をある時刻以降はオフライン化することが可能であると判定し、関連カートリッジに書き込みが行われた後に空き容量があれば、カートリッジ307をオフライン化することが禁止であると判定する。関連カートリッジの基準時間内の書き込みが行われた後の空き容量の有無により、カートリッジ307のオフライン化の可否を判定するので、関連カートリッジがあるカートリッジ307については関連カートリッジへの書き込みの予定を含めた適切な判断を行うことができる。
なお、本実施例ではアーカイブ管理サーバ60の情報(ジョブ管理テーブル611、データ管理テーブル612、ポリシー管理テーブル613)はアーカイブ管理サーバ連携プログラム512と階層管理プログラム610が通信することにより、装置管理サーバ50がアーカイブデータに対するアクセススケジュールを取得してスケジュール管理テーブル518の情報を作成したが、必ずしも通信によって取得する必要は無く、例えば、入出力装置504を介してユーザがスケジュールを手動で入力して、スケジュール管理テーブルを作成してもよい。
実施例2では、ハイブリッド型記憶装置70において、ハイブリッド制御サーバ40がホスト計算機10からアクセスが可能なブロックI/Fを提供する構成の一例を示す。実施例1でユーザに提供していた記憶領域である共有419が、実施例2ではブロックのLU(Logical Unit;論理ユニット)となる。そのため、実施例1における共有に実施例2におけるLUが対応する。
ここでは、実施例1における共有情報を実施例2におけるLU情報に置き換えるだけの部分については説明を省略し、主にそれ以外の差分のみを説明する。
また、本実施例では、LU単位でオフライン管理およびデータ移動を行う例を取り上げて、その処理について説明するが、これは一例であり、他の例としてデータの移動はブロックのページ単位で実施してもよい。
図27は、実施例2におけるハイブリッド制御サーバの構成を示すブロック図である。実施例2のハイブリッド制御サーバ42はブロックI/Fを提供する。図6に示した、ファイルI/Fを提供する実施例1のハイブリッド制御サーバ40との違いは、制御プロセッサ402がブロック制御プロセッサ422に変更されていること、共有管理テーブル414がLU構成管理テーブル424に変更されていること、ファイル管理テーブル415に対応するテーブルが無くなっていること、また、バッファ内キャッシュデータ管理テーブルとマイグレーションポリシー管理テーブルの内容も共有がLU情報に変更されていることである。また、ユーザ管理テーブル418はアクセス管理テーブル428に変更されている。また、ユーザへ提供する記憶領域が共有419からLU429へ変更されている。
図28は、実施例2における装置管理サーバの構成を示すブロック図である。ブロックI/Fを提供するハイブリッド制御サーバ42を管理する装置管理サーバ52の例が示されている。図6に示した、この装置管理サーバ52における、ファイルI/Fを提供するハイブリッド制御サーバ40を管理する実施例1による装置管理サーバ52との違いは、管理ソフト側共有管理テーブル516が管理ソフト側LU構成管理テーブル526に変更されていること、管理ソフト側ユーザ管理テーブル517が管理ソフト側アクセス管理テーブル527に変更されていること、スケジュール管理テーブルの内容が変更されていることである。
ハイブリッド制御サーバ42が持つテーブルのうち、実施例1とは共有とLUの違いだけでない違いがあるものについて説明する。
図29Aは、実施例2におけるLU構成管理テーブル424の一例を示す図である。LU構成管理テーブル424は、以下の(4240)乃至(4248)の情報を持つ。
LU ID4240は、LUの識別子である。
ライブラリID4241は、カートリッジ307を保持するライブラリの識別子である。
カートリッジID4242は、LUとつながるカートリッジ307の識別子である。
全容量4243は、LUに割り当てられているカートリッジ307の全容量を示す。
空き容量4244は、全容量4243のうちの空き容量を示す。
Retention Term4245は、LUに設定されるデータ保護期間であるRetention Termを示す。
利用バッファ4246は、バッファとして利用するブロックストレージ20内の論理ボリュームの識別子で表されている。
現在場所4247は、ライブラリとバッファのうち、どちらに現在のデータがあるか、また、そのどの場所にデータがあるかを示す。図29Aでは、データがバッファにある場合、現在場所4247としてブロックストレージ20内の論理ボリュームを示した例が挙げられている。しかし、これに限定されることはなく、ハイブリッド制御サーバ42内のキャッシュメモリやHDD内の記憶領域を指し示してもよい。
可搬型記憶媒体308が光ディスクのようなWrite Onceのメディアの場合、一旦ディスクにデータが書き込まれるとそのデータ自体は削除できない。そのため、ファイルサーバ側で管理情報を削除することでホスト計算機からは削除したように見えるようにしている。削除フラグ4248は、その場合にデータが削除されたか否かを示すフラグである。実施例1ではファイル単位で当該情報(削除フラグ4248)を保持していたが、実施例2ではLU単位で情報を保持する。なお、ブロックのページ単位で当該情報を保持しても良い。
図29Bは、実施例2によるマイグレーションポリシー管理テーブル427の一例を示す図である。マイグレーションポリシー管理テーブル427は、以下の(4270)乃至(4272)の情報を持つ。
装置ID4270は、ハイブリッド型記憶装置70の識別子である。
LU ID4271は、LUの識別子であり、LU単位でマイグレーションポリシーを設定したい場合にそのLUの識別子が設定される。この欄が空欄の場合は装置単位のマイグレーションポリシーが用いられることを示し、この欄に記載のあるLUについてのみ個別でLU単位のマイグレーションポリシーが適用される。
Write開始ポリシー4272は、バッファに書き込まれたデータを可搬型記憶媒体308に書き込むためのポリシーである。実施例1では、バッファへのデータ書込みからの経過時間をこのポリシーとして記載していた。しかし、実施例2のようにLU単位の場合は、実施例1のファイル単位とは異なり、LUが保持できる容量いっぱいまでWriteデータが蓄積された場合に、バッファ内のデータの可搬型記憶媒体308への書込みが発生するという利用方法が多い。そのため、実施例2では、そちらの例を挙げて説明する。
なお、このように、可搬型記憶媒体308へのWriteの開始を規定するWrite開始ポリシーが、バッファへの書き込みからの経過時間でなく、バッファの使用容量で規定される場合、後述するように、装置管理サーバ52内のLU容量履歴管理テーブルで容量の履歴を管理しておき、ステップS1300の処理で必要となる将来の構成を予測すればよい。
図29Cは、アクセス管理テーブル428の一例を示す図である。アクセス管理テーブル428は以下の(4280)乃至(4282)の情報を持つ。
WWN ID4280は、LUへアクセス許可のあるWWNを示す識別子である。
LU ID4281は、LUの識別子である。
権限4282は、LUへアクセスするときに許可される権限の種別を示す情報である。
次に、装置管理サーバ52が持つテーブルのうち実施例1とは共有とLUの違いだけでない違いがあるものと、実施例1には対応するものがないテーブルについて説明する。
図30Aは、管理ソフト側LU構成管理テーブル526の一例を示す図である。管理ソフト側LU構成管理テーブル526は以下の(5260)乃至(5269)の情報を持つ。
装置ID5260は、ハイブリッド型記憶装置70の識別子である。
LU ID5261は、LUの識別子である。
ライブラリID5262は、カートリッジを保持するライブラリの識別子である。
カートリッジID5263は、LUとつながるカートリッジの識別子である。
全容量5264は、LUに割り当てられているカートリッジの全容量を示す。
空き容量5265は、LUの全容量のうちの空き容量を示す。
Retention Term5266は、LUに設定されるデータ保護期間であるRetention Termを示す。
利用バッファ5267は、バッファとして利用するブロックストレージ20内の論理ボリュームの識別子によって示される。
現在場所5268は、ライブラリとバッファのうち、どちらに現在のデータがあるか、またそのどの場所にデータがあるかを示す情報である。図30Aには、バッファにデータがあり、データのある場所がブロックストレージ20内の論理ボリュームである例を示すが、これに限定されることはない。他の例として、現在場所5268がハイブリッド制御サーバ40内のキャッシュメモリやHDD内の記憶領域を指してもよい。
記憶媒体が光ディスクのようなWrite Onceのメディアの場合、ディスクにデータが書き込まれるとデータ自体は削除できない。そこで、ハイブリッド制御サーバ40側で管理情報を削除することでホスト計算機10からは削除したように見せる。削除フラグ5269は、その場合にファイルが削除されたかどうかを示すフラグである。実施例1ではファイル単位で当該フラグの情報を保持していたが、実施例2ではLU単位でこのフラグの情報を保持する。なお、ブロックのページ単位で当該情報を保持しても良い。
図30Bは、管理ソフト側アクセス管理テーブル527の一例を示す図である。管理ソフト側アクセス管理テーブル527は、以下の(5270)乃至(5278)の情報を持つ。
装置ID5270は、ハイブリッド型記憶装置70の識別子である。
WWN ID5271は、LUへアクセス許可のあるWWNを示す識別子である。
LU ID5272は、LUの識別子である。
権限5273は、LUへアクセスするときに許可される権限の種別を示す。
図30Cは、LU容量履歴管理テーブル520の一例を示す図である。LU容量履歴管理テーブル520は、以下の(5200)乃至(5204)の情報を持つ。当該テーブルは、Write開始ポリシー4272の説明で述べたように、マイグレーションポリシーが経過時間ではなく使用容量で規定される場合のマイグレーションポリシーの条件に到達する時刻の予測及びステップS1304の処理でのカートリッジ307への書込みが完了する時刻の予測に利用する。
装置ID5200は、ハイブリッド型記憶装置70の識別子である。
LU ID5201は、LUの識別子である。
時刻5202は、所定の時刻を示す情報である。なお、図30Cでは、一例として2時間毎の時刻を示しているが、これに限らず、時間間隔は任意に設定してよい。
全容量5203はLUの全容量を示す。
空き容量5204は、時刻ごとのLUの空き容量を示す。
図31は、実施例2における、ハイブリッド型記憶装置70での記憶領域を割り当てる処理(ステップS200)のフローチャートである。本実施例では、ユーザへ提供する記憶領域としてLUを用意し、そのLUに可搬型記憶媒体308を含むカートリッジ307を割り当てることとするが、これに限定されることはなく、カートリッジ307単位ではなく可搬型記憶媒体308そのものをLUに割り当てることにしても良い。
ステップS201にて、ユーザまたはストレージ管理者が装置管理サーバ50内の入出力装置504を介して、ストレージ管理プログラム510に、LUの作成に必要な各種値を入力する。LUの作成に必要な値として、LU名、LU Number、LUの容量、LUにアクセス可能なWWN、Replication(Backup)設定、書込みモード設定、Retention Term設定、LU単位に設定するマイグレーションポリシー設定、閾値設定、バッファに必要となる論理ボリュームなどが挙げられる。なお、ここに記載した以外の項目を設定してもよい。
ステップS202にて、ユーザまたはストレージ管理者が装置管理サーバ50内の入出力装置504を介して、ストレージ管理プログラム510を利用して、作成するLUの容量を賄うだけの未割当かつ空きの容量を有するカートリッジ307を選択する。このときにユーザまたはストレージ管理者が、ストレージ管理プログラム510を利用して、手動で必要なカートリッジ307を探してもよく、ストレージ管理プログラムが適当なカートリッジ307をユーザまたはストレージ管理者に提示してもよい。なお、このときにオフライン管理が必要となる場合があり、その処理が実施例1のステップS1000以降(特にステップS1110)の処理に繋がる。
ステップS203にて、ストレージ管理プログラム510が、入力された情報のうちバッファ用に指定された論理ボリュームがハイブリッド制御サーバ42に割り当て済かどうかチェックする。論理ボリュームがハイブリッド制御サーバ42へ既に割当済であれば、ステップS204へ進む。論理ボリュームがハイブリッド制御サーバ42へ割当済みで無ければ、ステップS205へ進む。
ステップS204にて、ストレージ管理プログラム510がハイブリッド制御サーバ42のサーバ管理プログラム412に対して、LU割当設定リクエストを出す。
ステップS205にて、ストレージ管理プログラム510が、ブロックストレージ20内の論理ボリューム209をハイブリッド制御サーバ42へ割り当てる処理を実施する。この処理は一般的なブロックストレージ内のボリュームをサーバへ割り当てる処理である。
ステップS206にて、ハイブリッド制御サーバ42のサーバ管理プログラム412が、指定された情報を元に、LU構成管理テーブル424、マイグレーションポリシー管理テーブル427、およびアクセス管理テーブル428を更新する。
ステップS207にて、ハイブリッド制御サーバ42のサーバ管理プログラム412が、記憶領域の割り当ての設定が完了したことをストレージ管理プログラム510へ通知する。
ステップS208にて、ストレージ管理プログラム510は装置管理サーバ50内のカートリッジ管理テーブル515、管理ソフト側LU構成管理テーブル526、および管理ソフト側アクセス管理テーブル527を更新する。なお、このでは、カートリッジ管理テーブル515は、ステップS201にて挙げた入力項目を全て記載はしていないが、これら全ての値をカートリッジ管理テーブル515に格納してもよい。
以上が実施例2における実施例1との差分にあたる処理である。この実施例2により、ハイブリッド型記憶装置70において、ハイブリッド制御サーバ42がブロックI/Fによりホスト計算機10からアクセスが可能な構成で、ストレージ管理者がオフライン管理実施時に装置内部処理を意識せずに、オフライン化すべき、またはオフライン化してはいけないカートリッジ307を適切に選択することが可能となる。また、それにより不要なオフライン処理の回数を減らすことができる。
実施例3では、実施例1のようにオフライン候補カートリッジ一覧を表示するだけでなく、候補のカートリッジ307内でオフライン化すべき順にランク付けをして表示する。これによりストレージ管理者がオフライン化すべきカートリッジ307を選択しやすくなり、負荷を低減することができる。
図32は、オフライン化する候補となるカートリッジ307をランク付けして表示する処理を示すフローチャートである。
ステップS3001にて、実施例1のステップS1300にてオフライン可能なカートリッジが特定され、オフライン候補カートリッジ管理テーブル519に情報が設定される。以下、ステップS3002〜S3006の処理は、オフライン可能と判断されたカートリッジ307に対してループ処理を実施する。
ステップS3002にて、オフライン可否判定プログラム513が、カートリッジ管理テーブル515のファイル削除フラグを確認し、カートリッジ307内のデータが削除されているか否かチェックする。データが削除されていればステップS3003へ進み、削除されていなければステップS3004へ進む。
ステップS3003にて、オフライン可否判定プログラム513は、全てのデータが削除されていた当該カートリッジ307にオフライン候補のランク付けとして最高点を設定する。点数の付け方の例として、バイト列で表現する例がある。
本実施例では、後述のように削除済みのカートリッジ307を最高点にランク付けし、現在の構成により特定されたオフライン候補(図23のステップS1205あるいはS1207からステップS1209へ進んだカートリッジ307)の点数を2番目にランク付けし、将来の構成で特定されたオフライン候補(図24のステップS1305あるいはS1307からステップS1309へ進んだカートリッジ307)の点数を3番目にランク付けする。
2番目、3番目のランクには更にその中に詳細なランク付けを行ってもよい。例えば、オフライン候補のカートリッジ307のランク付けを表現するのに3バイトを使うことにし、MSB(Most Significant Byte)を最高点に対応させ、2バイト目を2番目のランクに対応させ、LSB(Least Significant Byte)を3番目のランクに対応させることで得点を表現すればよい。この点数の表現方法の場合、削除済みカートリッジはMSBに1が設定され、2バイト目とLSBに0が設定される(例:100)。ステップS3003にて最高点を設定した後はループ処理を次のカートリッジ307へ進める。
ステップS3004にて、オフライン可否判定プログラム513が、全てのデータが削除されてはいない当該カートリッジ307に対して即時オフライン化が可能かどうかチェックする。即時オフライン化が可能の場合はステップS3005へ進み、即時オフライン化が可能ではない場合はステップS3006へ進む。
ステップS3005にて、オフライン可否判定プログラム513が、カートリッジ管理テーブル515の抜き差し回数が少ないもの、最終アクセス時刻が基準時刻よりも遅いもの、Backupの副で利用されているもの、などの条件をチェックし、あらかじめ決めておいた基準に従い点数(ランク)を決定する。点数の決定方法は、事前にテーブル等により固定でパラメタ毎に得点をつけておいてもよく、ユーザ入力により可変で設定してもよい。ステップS3005で決定された点数は、3バイトのうちの2バイト目に設定される(例:0B0)。2バイト目の点数を設定した後はループ処理を次のカートリッジ307へ進める。
ステップS3006にて、オフライン可否判定プログラム513がスケジュール管理テーブル518をチェックし、将来、削除される予定のカートリッジ307、Retention Term期限が切れるカートリッジ307、寿命が切れるカートリッジ、基準時間内のアクセス回数の多さなどの条件を、あらかじめ決めておいた基準に従い点数を決定する。点数の決定方法は、事前にテーブル等により固定でパラメタ毎に得点をつけておいてもよく、ユーザ入力により可変で設定してもよい。ステップS3006で決定された点数は、3バイトのうちのLSBに設定される(例:008)。3バイト目の点数を設定した後はループ処理を次のカートリッジへ進める。
以上のステップS3002〜S3006までの処理を、全てのカートリッジ307に対して行ったら次にステップS3007へ移行する。
ステップS3007にて、ストレージ管理プログラム510が各カートリッジ307の点数をチェックし、点数の高いカートリッジから表示する。本実施例によるオフライン候補の表示は、例えば、図26のGUIにおいて、表G1003に、点数の高いカートリッジ307から順に上から表示しても良い。更に、各カートリッジ307の点数の理由を併せて表示してもよい。
以上説明したように、実施例3では、装置管理サーバ50は、オフライン化が可能であると判定されたカートリッジ307に対して、その判定に用いた条件に基づき、即時にオフライン化が可能なカートリッジ307を最高ランクとするランク付けを行う。オフライン化が可能なカートリッジ307にランク付けをしてストレージ管理者へ提示することができるので、ストレージ管理者はオフライン化すべきカートリッジ307を選択しやすくなり、ストレージ管理者に必要となる前提知識の低減が可能となり、オフライン管理作業の管理コストを下げることができる。
現状のシステムではデータへのアクセススケジュール情報が事前に設定不可の場合がある。設定不可の場合とは、例えば、そもそもデータへのアクセススケジュールが計画されない場合や、管理者がスケジュールを把握していても、システムに設定できない場合である。しかし、その場合であっても、オフライン可否を判断する必要が生じる。その場合、依然として装置内のデータ処理は管理者には把握できないため、オフライン作業に不都合が生じる可能性がある。
そこで、本実施例ではスケジュール情報が設定不可の場合の処理手順を説明する。実施例3までのうち、変更があるもののみ説明する。
まず実施例4の計算機システム1は、図2からアーカイブ管理サーバ60が無くなった構成とする。装置管理サーバ50は図33に示すように、実施例3の装置管理サーバ50から、アーカイブ管理サーバ連携プログラム512とスケジュール管理プログラム518が削除されたものである。また、管理者アカウント管理テーブル530とパラメタ選択履歴管理テーブル531が追加となる。管理者アカウント管理テーブル530とパラメタ選択履歴管理テーブル531の説明は後述する。
アーカイブ管理サーバ60が無いため、図21Aのジョブ管理テーブル更新処理、図21Bのデータ管理テーブル更新処理、および図21Cのアーカイブ管理サーバからの情報収集処理は実施例4では不要となる。
ここからは、実施例4で追加されるテーブルを説明する。
図34Aは、管理者アカウント管理テーブル530の一例を示す図である。管理者アカウント管理テーブル530は、ストレージ管理プログラム510やハイブリッド制御サーバ管理プログラム511を利用する管理者アカウントの情報を示すテーブルである。理者アカウント管理テーブル530は、以下の(5300)乃至(5301)の情報を持つ。
管理者ID5300は、管理者アカウントを識別する識別子である。
パスワード5301は、管理プログラムにログインするときのパスワードである。一般的にパスワードは暗号化して保存される。
f ロール5302は、管理者アカウントのロールを示す情報である。管理者アカウントのロールとしては、ストレージ管理の全ての操作(例:装置の構成変更、装置の構成情報参照、管理アカウント情報の変更、など)を実行可能なAdminと、装置の構成変更と構成情報の参照のみが実行可能なModifyと、装置の構成情報の参照のみが実行可能なViewなどの例が挙げられるが、これに限定されることはなく、その他のロールがあってもよい。
管理者グループID5303は複数の管理者をまとめて扱う場合の管理者アカウントの集合であるグループを表わす識別子である。
管理者アカウント管理テーブル530の情報について、まず初めにストレージ管理プログラム510に全ての操作が可能なデフォルトの管理者アカウントが用意されている。必要に応じて、管理者アカウント情報の変更が可能な管理者が随時管理者アカウントを作成し、そのときに管理者アカウント管理テーブル530の情報が更新される。
図34Bは、パラメタ選択履歴管理テーブル531の一例を示す図である。パラメタ選択履歴管理テーブル531は、オフライン候補カートリッジが画面に表示された後に、ユーザ(管理者)が管理画面でソートするためのカラムをクリックした回数を保存するテーブルである。このクリックの回数が多いほど、その管理者がオフラインするためのカートリッジの選択基準としてそのカラムの情報が重要であるとみなすと考えることができる。パラメタ選択履歴管理テーブル531は以下の(5310)乃至(5315)の情報を示す。
管理者ID5310は、管理者アカウントを識別する識別子である。
空き容量5311は、管理画面で表示される空き容量カラムのソートが実行された回数を示す。
オフライン可能時間5312は、管理画面で表示されるオフライン可能時間カラムによるソートが実行された回数を示す。
関連カートリッジ5313は、管理画面で表示される関連カートリッジカラムによるソートが実行された回数を示す。
抜き差し回数5314は、管理画面で表示される抜き差し回数カラムによるソートが実行された回数を示す。
最終アクセス時刻5315は、管理画面で表示される最終アクセス時刻カラムによるソートが実行された回数を示す。
なお、パラメタ選択履歴管理テーブル531が保持する情報はこの例に限定されることは無く、それ以外のカートリッジを表す属性情報を含めてよい。
図35、図36、図37は実施例4における、オフライン可否判定プログラム513によるオフライン可否判定処理およびオフライン可能カートリッジのランキングづけするための処理である。
図35は実施例4における、オフライン可否判定処理のうち、オフライン可否判定プログラム513が現在の構成情報をもとにカートリッジのオフライン判定を実施するための処理(ステップS4200)のフローチャートである。
ステップS4201にて、装置管理サーバ50内のオフライン可否判定プログラム513が、既にオフライン候補カートリッジ管理テーブル519に古い情報が設定されていれば、その内容を削除する。
以降のステップS4202〜S4206の処理は、ループ処理として、カートリッジ管理テーブル515に記載された全てのカートリッジ307に対して実施される。以下、各カートリッジ307に対する処理内容を説明する。
ステップS4202にて、オフライン可否判定プログラム513がカートリッジ管理テーブル515のファイル削除フラグを確認し、カートリッジ307内のデータが削除されているか否かチェックする。データが削除されていれば当該カートリッジ307へのアクセスが発生することはないため、ステップS4206へ進む。データが削除されていなければステップS4203へ進む。
ステップS4203にて、オフライン可否判定プログラム513がカートリッジ管理テーブル515を参照し、カートリッジ307に容量に空きがあるか否かチェックする。カートリッジ307に空きがある場合は、現時点では、そのカートリッジ307がオフライン化することができるか否かを判断するための十分な情報が未だ揃っていないため、ステップS4205へ進む。カートリッジ307に空きが無ければ、ステップS4204へ進む。
ステップS4204にて、オフライン可否判定プログラム513が当該カートリッジを容量の観点でランキング1位として登録する。
ステップS4205にて、オフライン可否判定プログラム513が、当該カートリッジ307を現在構成ではオフライン化すべきかどうか判断できないカートリッジとする。そのカートリッジ307については、このフローではオフライン可否が確定しない。
ループ処理として次のカートリッジ307へ処理を移行させるため、次のカートリッジ307についてステップS4202からの処理を実行する。そして、全てのカートリッジ307についての処理が終わると、ステップS4300へ進む。
図36は、オフライン可否判定処理のうち、オフライン可否判定プログラム513がハイブリッド制御サーバ内の内部処理を踏まえた、将来の構成情報を計算し、その情報からカートリッジ307のオフライン判定を実施する処理(ステップS4300)のフローチャートである。ステップS4301〜S4307では、カートリッジ管理テーブル515に記載されたカートリッジ307のうち、ステップS4200でオフライン可否の判定がされなかったカートリッジ307に対してループ処理を実施する。以下、各カートリッジ307に対する処理内容について説明する。
ステップS4301にて、オフライン可否判定プログラム513がスケジュール管理テーブル518の内容に基づき、基準時間以内に、カートリッジ307内のデータが全て削除されるか、またはカートリッジ307が寿命に到達するか、またはカートリッジ307のRetentionTermが経過するか、をチェックする。
ここでの基準時間は、ステップS1203の処理における基準時間と同様、固定であってもよいし、可変であってもよい。この基準時間以内に、データの削除、または寿命に到達、またはRetentionTermが経過、という事象が発生する予定があれば、その事象の発生した以降は、カートリッジ307がアクセスされることがないため、ステップS4302へ進む。それらに事象の予定がなければ、ステップS4303へ進む。
ステップ4302にて、オフライン可否判定プログラム513がオフライン候補カートリッジ管理テーブル519に当該カートリッジを将来においてオフライン可能となるカートリッジとして登録する。すなわち、オフライン候補カートリッジ管理テーブル519の即時オフライン可否カラムにNoを設定し、オフライン可能時刻にチェックした基準時間または所定の条件を満たす時間を設定する。
ステップS4303にて、オフライン可否判定プログラム513が、ストレージ管理プログラム510が取得したバッファ内キャッシュデータ管理テーブル416の情報を取得する。
ステップS4304にて、オフライン可否判定プログラム513が、バッファ内キャッシュデータ管理テーブル416及び管理ソフト側ストレージ構成管理テーブル514の情報から、バッファから当該カートリッジ307の可搬型記憶媒体308に保存する予定のデータの書込みが完了する時刻(データ書き込み完了時刻)を計算する。バッファ内キャッシュデータ管理テーブル416のデータサイズとWrite開始予定時刻の情報と、管理ソフト側ストレージ構成管理テーブル514のHDDのRead/Write性能情報と、ライブラリのドライブのRead/Write性能情報と、ロボットのロード時間の情報とから、データ書込み完了時刻を計算することができる。
ステップS4305にて、オフライン可否判定プログラム513が、ステップS4304でデータ書き込み完了時刻を計算したデータの書込みを完了してもカートリッジ307の空き容量が残るか否かをチェックする。空き容量が残る場合はステップS4306へ進む。空き容量が無い場合はステップS4307へ進む。
ステップS4306にて、オフライン可否判定プログラム513が、カートリッジ307を容量の観点ではランキングを3位と登録する。
ステップS4307にて、オフライン可否判定プログラム513が、カートリッジ307を容量の観点ではランキングを2位と登録する。
全てのカートリッジ307のチェックが終わるとオフライン可否判定プログラム513がストレージ管理プログラム510に対してオフライン可否判定が終わったことを通知し、ステップS4400へ進む。
図37は、オフライン可否判定処理のうち、ステップS4200、ステップS4300で調べたオフライン可否判定の情報を踏まえてオフライン可能カートリッジの中でランキングを設定する処理(ステップS4400)のフローチャートである。
ステップS4401にて、ステップS4300の処理に基づきオフライン可能なカートリッジが特定され、オフライン候補カートリッジ管理テーブル519に情報が設定される。以下、ステップS4402〜S4404の処理は、ループ処理として、オフライン可能と判断されたカートリッジ307に対して実施される。
ステップS4402にて、オフライン可否判定プログラム513が、カートリッジ管理テーブル515のファイル削除フラグを確認し、カートリッジ307内のデータが削除されているか否かチェックする。データが削除されていればステップS4403へ進み、削除されていなければステップS4404へ進む。
ステップS4403にて、オフライン可否判定プログラム513は、全てのデータが削除されていた当該カートリッジ307にオフライン候補のランク付けとして最高点を設定する。点数の付け方の例として、バイト列で表現する例がある。
本実施例では、後述のように削除済みのカートリッジ307を最高点にランク付けし、それ以外のカートリッジについてはカートリッジの各パラメタの値を正規化することにより点数を算出し、さらに各パラメタについての点数に重みをつけることでカートリッジの得点を算出し、その得点によりランキングをつける。重みの付け方はステップS4404で説明する。
ステップS4404にて、オフライン可能なカートリッジ307の各パラメタについて値を正規化する。各パラメタについて正規化の考え方の一例を説明する。空き容量に関して、容量ランキングが1位のものは全て空き容量が無しであり、それらは同率の1位である。次に空き容量ありだが、将来(基準時間内に)空き容量が無くなるものは容量ランキングが2位にランキングづけられており、同じ2位の中では現在の空き容量の順に並べられる。容量ランキングが3位のものは基準時間経過後も空き容量が無くならないものであり、同じ3位の中ではその空き容量の順に並べられる。容量ランキング1位、2位(同じ2位のものは現在の空き容量が少ない順で並べる)、3位(同じ3位のものは現在の空き容量順で並べる)で並べ、100点の範囲内で正規化して点数を算出する。この点数をCoS(Capacity of Score)とする。
最終アクセス時刻に関して、もっとも最近にアクセスされたものが次にアクセスされる可能性が高いと考え、最もオフラインすべきでない、と考えると、最終アクセス時刻で各カートリッジを並べ替え、最終アクセス時刻が最も過去のカートリッジを100点とし、最も直近のカートリッジを0点として正規化して点数を算出する。この点数をLoS(Last Accessed Time of Score)とする。なお、アクセスに関する情報としては最終アクセス時刻ではなく、例えば現在から遡って所定の基準時間以内に行われたアクセスの回数を用いてもよい。基準時間以内のアクセス回数をアクセス履歴として保存しておき、そのアクセス回数の多いものを次にアクセスされる可能性が最も高いと考え、最もオフラインすべきでない、としてアクセス回数の少ないもののカートリッジを100点とし、最もアクセス回数の多いものを0点としてアクセス回数で正規化しても良い。
このようにして、複数個のパラメタについて点数を正規化し、各パラメタの点数をつける。カートリッジ毎にパラメタ毎の点数Cos、LoS、XoS(Xは任意のパラメタを表し、X of Score)とする。
次に重みづけの計算を説明する。システムを初めて動作させるときはユーザまたは管理者の判断傾向がわからないため、パラメタ毎の点数を同じ重みで点数付けし、それをカートリッジのオフラインのための点数とする。つまり1/3*Cos+1/3*LoS+1/3*XoSがカートリッジの点数となる(X of ScoreのXの数が1つの場合。Xが複数個ある場合には重みの値が変わる)。しかし、後述のステップS4407にて特定のパラメタをチェックする(ソートする)回数が増えると、その回数に基づきユーザまたは管理者毎のパラメタに対する重みづけも学習して変更する。例えば空き容量が4回、最終アクセス時間が1回ソートされたのであれば、そのユーザまたは管理者は空き容量を重視しているとの判断から、空き容量が最も重みが大きく、次に最終時間が重く、その他のパラメタは比較的重要で無いと判断してもよい。4/(4+1)*Cos+1/(4+1)*LoS+0/(4+1)*XoSが当該ユーザまたは管理者の当該カートリッジの点数として換算される。
以上のステップS4402〜S4404までの処理を、全てのカートリッジ307に対して行い、次にステップS4405へ移行する。
ステップS4405にて、最終的に全てのカートリッジについて点数を計算し、ステップS4403で示した最高点のついたカートリッジを先頭に表示し、それ以外のカートリッジは点点数の高い順に表示する。
ステップS4406までに、ユーザまたは管理者によって、図26のGUIが操作される。ここでユーザまたは管理者はランキングづけられたカートリッジ一覧を見て、表1003や表1004の各パラメタでソートなどを繰り返し、適当なカートリッジを判断して選択する。
その間、ステップS4406にて、オフライン可否判定プログラム513は、ソートの回数をカウントする。
ステップS4407において、オフライン可否判定プログラム513は、カウントした値をパラメタ選択履歴管理テーブル531に設定する。
また、図26はテーブル形式でカートリッジの情報を表で表現しているが、これは一例であり、各パラメタやランキングの値をバーチャートや円グラフで表現しても良い。
以上説明したように、実施例4では、装置管理サーバ50は、アーカイブ管理サーバからアクセススケジュールを取得できない場合であっても、オフラインすべきカートリッジの候補をランク付けしてストレージ管理者へ提示することが可能となる。これによりストレージ装置内の内部処理を把握していないストレージ管理者であってもオフライン化すべきカートリッジ307を選択しやすくなり、ストレージ管理者に必要となる前提8知識の低減が可能となり、オフライン管理作業のコストを下げることが可能となる。
実施例5では、ハイブリッド型記憶装置内を複数の管理者で分割して管理する場合のオフライン管理作業について説明する。以降ではこの分割する単位をテナントと呼ぶこととする。本実施例では、テナントに、装置のリソースとして、カートリッジ307を割り当てるテナント毎のオフライン管理の例を示す。またテナントという管理単位を明記せずカートリッジ毎に対応するストレージ管理者を割り当てる例を示すが、必ずしもこのとおりにする必要は無く、テナントのIDを割当ててもよいし、ストレージ管理者ではなく、ストレージ管理者のグループをテナントに割り当てても良い。また、テナントに割り当てるリソースを、カートリッジ単位でなくディスク単位で割り当てても良い。
実施例5について実施例1からの差分のみ説明する。実施例5では実施例1に加えて、装置管理サーバ50が、実施例4で説明した図34Aの管理アカウント管理テーブル530と図38に示すカートリッジ管理テーブル555を持つ。
図38のカートリッジ管理テーブル555は実施例1で説明した図13のカートリッジ管理テーブル515とほぼ同じであるため、変更差分である追加カラムのみ説明する。
追加カラムである管理者ID51515はカートリッジを管理する管理者の識別子である。この情報は、管理アカウント管理テーブル530の情報を更新するときに、その管理者に割当てるべきカートリッジについて、管理アカウント情報を変更する権限のロールを持った管理アカウントが設定する。なお、テナントの管理者に割り当てるユーザを個々の管理者ではなくグループで設定する場合は、管理者IDではなく、管理者グループIDを設定してもよい。
実施例1から4ではオフライン管理カートリッジの選択処理は全ての管理カートリッジが対象になっていたが、実施例5では、管理カートリッジ選択処理のときにストレージ管理プログラムにログインしているストレージ管理者に該当する管理アカウントに割当てられたカートリッジが探索対象となる。それ以外の処理は実施例1から4と同じ処理である。
以上説明したように、実施例5では、装置管理サーバ50は、カートリッジがテナントに分割して割当てられている場合であっても、そのテナントの範囲内でオフライン可能なカートリッジをストレージ管理者へ提示することが可能となる。これによりテナント構成を作成したときの各テナントに割り当たっている、ストレージ管理者またはストレージ管理者のグループが、他のテナントを意識せずにオフライン化すべきカートリッジ307を選択できるようになり、オフライン管理作業のコストを下げることが可能となる。
以上、本発明の実施形態および実施例について述べてきたが、本発明は、これらだけに限定されるものではなく、本発明の技術思想の範囲内において、これらの実施形態および実施例を組み合わせて使用したり、一部の構成を変更したりしてもよい。
1…計算機システム、10…ホスト計算機、101…CPU、102…メモリ、103…OS、104…アプリケーション、105…階層管理エージェント、106…デバイスマネージャ、107…HDD、108…データI/F、109…管理I/F、10a…ホスト計算機、10b…ホスト計算機、20…ブロックストレージ、201…ホストI/F、202…ブロック制御プロセッサ、203…メモリ、204…ブロックストレージ管理プログラム、205…ブロック構成管理テーブル、209…論理ボリューム、2050…デバイス種別、2051…デバイス識別子、2052…スペック、206…物理ストレージデバイス、207…HDD、209…論理ボリューム、211…管理I/F、30…可搬型記憶装置、301…ホストI/F、302…コントローラ、303…メモリ、304…キャッシュメモリ、305…ドライブ、306…媒体搬送部、307…カートリッジ、308…可搬型記憶媒体、309…管理I/F、310…プログラム、311…可搬型記憶装置管理プログラム、312…可搬型記憶装置構成管理テーブル、3120…デバイス種別、3121…デバイス識別子、3122…スペック、3123…親要素、3124…媒体寿命、3307…カートリッジ、40…ハイブリッド制御サーバ、40…可搬型記憶装置、401…ホストI/F、402…ファイル制御プロセッサ、403…メモリ、404…キャッシュメモリ、405…HDD、406…ディスクI/F、407…ライブラリI/F、408…管理I/F、410…階層管理エージェント、411…プログラム、412…サーバ管理プログラム、413…デバイスマネージャ、414…共有管理テーブル、415…ファイル管理テーブル、416…バッファ内キャッシュデータ管理テーブル、417…マイグレーションポリシー管理テーブル、4170…装置ID、4171…共有ID、4172…Write開始ポリシー、418…ユーザ管理テーブル、419…共有、42…ハイブリッド制御サーバ、422…ブロック制御プロセッサ、424…LU構成管理テーブル、427…マイグレーションポリシー管理テーブル、428…アクセス管理テーブル、429…LU、50…装置管理サーバ、504…入出力装置、510…ストレージ管理プログラム、511…ハイブリッド制御サーバ管理プログラム、512…アーカイブ管理サーバ連携プログラム、513…オフライン可否判定プログラム、514…管理ソフト側ストレージ構成管理テーブル、515…カートリッジ管理テーブル、516…管理ソフト側共有管理テーブル、517…管理ソフト側ユーザ管理テーブル、518…スケジュール管理テーブル、519…オフライン候補カートリッジ管理テーブル、52…装置管理サーバ、520…LU容量履歴管理テーブル、5200…装置ID、5201…ID、5202…時刻、526…LU構成管理テーブル、527…管理ソフト側アクセス管理テーブル、60…アーカイブ管理サーバ、601…CPU、602…NIC、603…メモリ、604…入出力装置、610…階層管理プログラム、611…ジョブ管理テーブル、612…データ管理テーブル、613…ポリシー管理テーブル、70…ハイブリッド型記憶装置、71…記憶システム、72…階層記憶システム、80…データネットワーク、90…管理ネットワーク

Claims (19)

  1. ホスト計算機からアクセスされるデータを格納するストレージ装置と、
    前記ストレージ装置から転送されたデータを格納する、着脱が可能な複数の可搬型記憶媒体と、前記複数の可搬型記憶媒体へのデータの読み書きを制御するコントローラとを備えた可搬型記憶装置と、
    前記ストレージ装置と前記可搬型記憶装置とをハイブリッド型記憶装置として制御する計算機と、
    第1段階として、前記複数の可搬型記憶媒体のうちの少なくとも一つの可搬型記憶媒体について、即時にオフライン化が可能であるか否かを判定し、前記第1段階において即時にオフライン化が可能でない場合に、第2段階として、当該複数の可搬型記憶媒体のうちの少なくとも一つの可搬型記憶媒体について、所定の基準時間内にオフライン化が可能となるか否かを判定し、前記第1段階または前記第2段階のいずれかにおいてオフライン可能となる可搬型記憶媒体を、オフライン候補の可搬型記憶媒体としてユーザに提示する装置管理サーバと、
    を有する計算機システム。

  2. 前記装置管理サーバは、前記第1段階として、前記可搬型記憶媒体の少なくとも一つの可搬型記憶媒体について、即時にオフライン化が可能でない場合、現在の構成情報からオフライン化することが禁止であるか否かを判定し、前記第1段階において、オフライン化することが禁止でないと判断された可搬型記憶媒体について、前記第2段階として、所定の基準時間内にオフライン化が可能となるか否かを判定する、請求項1に記載の計算機システム。
  3. 前記装置管理サーバは、前記第1段階において、アクセス予定がある可搬型記憶媒体を、オフライン化することが禁止であると判定する、請求項2に記載の計算機システム。
  4. 前記装置管理サーバは、前記第1段階において、前記可搬型記憶媒体について全てのデータが削除済でなく、アクセス予定がなく、かつ、空き容量がある場合、当該可搬型記憶媒体について、現在の構成情報からオフライン化することが禁止でないと判定する、請求項2に記載の計算機システム。
  5. 前記装置管理サーバは、前記第1段階において、正副の関連付けがされて使用される関連可搬型記憶媒体がある可搬型記憶媒体については、前記可搬型記憶媒体および前記関連可搬型記憶媒体の状態に基づいて判定を行う、請求項2に記載の計算機システム。
  6. 前記装置管理サーバは、前記第1段階において、当該可搬型記憶媒体の全てのデータが削除済ではなく、アクセス予定がなく、空き容量がない可搬型記憶媒体については、前記可搬型記憶媒体と正副の関連付けがされて使用される関連可搬型記憶媒体がある場合、前記関連可搬型記憶媒体にアクセス予定がなく、前記関連付けにおいて、前記可搬型記憶媒体が正側であり、前記関連可搬型記憶媒体に空き容量があれば、前記可搬型記憶媒体を、現在の構成情報からオフライン化することが禁止でないと判定する、請求項4に記載の計算機システム。
  7. 前記装置管理サーバは、前記第2段階において、所定の基準時間内に全てのデータが削除されるか、寿命に達するか、データ保持期限が経過するかのいずれかの状態になる可搬型記憶媒体を、前記状態になる時刻以降はオフラインすることが可能であると判定する、請求項1に記載の計算機システム。
  8. 前記装置管理サーバは、前記第2段階において、前記可搬型記憶媒体が、所定の基準時間内に完了する書き込みが行われた後に空き容量がなければ、所定時刻以降はオフライン化することが可能であると判定し、前記書き込みが行われた後に空き容量があれば、オフライン化することが禁止であると判定する、請求項1に記載の計算機システム。
  9. 前記装置管理サーバは、前記第2段階において、正副の関連付けがされて使用される関連可搬型記憶媒体がある可搬型記憶媒体については、前記可搬型記憶媒体および前記関連可搬型記憶媒体の所定の基準時間後の状態に基づいて判定を行う、請求項1に記載の計算機システム。
  10. 前記装置管理サーバは、前記第2段階において、前記関連可搬型記憶媒体に所定の基準時間内に完了する書き込みが行われた後に空き容量がなければ、前記可搬型記憶媒体を所定時刻以降はオフライン化することが可能であると判定し、前記関連可搬型記憶媒体に前記書き込みが行われた後に空き容量があれば、前記可搬型記憶媒体をオフライン化することが禁止であると判定する、請求項9に記載の計算機システム。
  11. 前記可搬型記憶装置は、前記複数の可搬型記憶媒体の少なくとも一つを用いて、共有または論理ユニットを構成することによってユーザに記憶領域を提供する、請求項1に記載の計算機システム。
  12. 前記装置管理サーバは、オフライン化が可能であると判定された可搬型記憶媒体に対して、前記第1段階でオフライン化が可能であると判定された可搬型記憶媒体を上位に、前記第2段階でオフライン化が可能であると判定された可搬型記憶媒体を下位にランク付けて、オフライン候補としてユーザに提示する、請求項1に記載の計算機システム。
  13. 前記装置管理サーバは、前記第1段階でオフライン化が可能であると判定された複数の可搬型記憶媒体について、当該可搬型記憶媒体の挿抜回数、最終アクセス時刻、又は、正副の関連付けの少なくとも一つを含む、当該可搬型記憶媒体の属性情報に基づいて、ランク付けを行ってユーザに提示する、請求項12に記載の計算機システム。
  14. 前記装置管理サーバは、前記第2段階でオフライン化が可能であると判定された複数の可搬型記憶媒体について、当該可搬型記憶媒体内のデータを所定の基準時間経過後に削除するか否か、データ保持期限、寿命、又は、アクセス頻度の少なくとも一つを含む、当該可搬型記憶媒体の属性情報に基づいて、ランク付けを行ってユーザに提示する、請求項12に記載の計算機システム。
  15. 前記ハイブリッド型記憶装置が複数の管理者で管理される場合であって、
    前記複数の可搬型記憶媒体は、それぞれ、前記複数の管理者のいずれに関連するかを属性情報として有し、
    前記装置管理サーバは、前記可搬型記憶媒体に割り当てられた前記管理者の属性情報に基づいて、前記第1段階及び前記第2段階でオフライン化が可能であるか否かを判定する、請求項1に記載の計算機システム。
  16. 装置管理サーバであって、
    プログラムを実行するプロセッサと、
    前記プログラムと、前記プログラムの実行に利用する情報とを記憶するメモリと、を有し、
    前記プロセッサは、前記プログラムを実行することにより、ホスト計算機からアクセスされるデータを格納するストレージ装置と、前記ストレージ装置から転送されたデータを格納する、着脱が可能な複数の可搬型記憶媒体と、前記複数の可搬型記憶媒体へのデータの読み書きを制御するコントローラとを備えた可搬型記憶装置と、前記ストレージ装置と前記可搬型記憶装置とをハイブリッド型記憶装置として制御する計算機とを管理し、
    前記プロセッサが前記プログラムを実行することにより、第1段階として、前記複数の可搬型記憶媒体のうちの少なくとも一つの可搬型記憶媒体について、即時にオフライン化が可能であるか否かを判定し、前記第1段階において即時にオフライン化が可能でない場合に、第2段階として、当該複数の可搬型記憶媒体のうちの少なくとも一つの可搬型記憶媒体について、所定の基準時間内にオフライン化が可能となるか否かを判定し、前記第1段階または前記第2段階のいずれかにおいてオフライン可能となる可搬型記憶媒体を、オフライン候補の可搬型記憶媒体としてユーザに提示する、
    装置管理サーバ。
  17. ホスト計算機からアクセスされるデータを格納するストレージ装置と、
    前記ストレージ装置から転送されたデータを格納する、着脱が可能な複数の可搬型記憶媒体と、前記複数の可搬型記憶媒体へのデータの読み書きを制御するコントローラとを備えた可搬型記憶装置と、
    前記ストレージ装置と前記可搬型記憶装置とをハイブリッド型記憶装置として制御する計算機と、
    前記複数の可搬型記憶媒体のうちの少なくとも一つの可搬型記憶媒体について、当該可搬型記憶媒体内のデータの削除に関する情報、当該可搬型記憶媒体の空き容量情報、挿抜回数情報、正副の関連付け情報、又は、最終アクセス時間情報の少なくとも一つの属性情報に基づいて、オフライン化が可能であるか否かを判定し、オフライン可能となる可搬型記憶媒体を前記ユーザの要求に応じてランク付け、オフライン候補の可搬型記憶媒体としてユーザに提示する装置管理サーバと、
    を有する計算機システム。
  18. 前記装置管理サーバは、前記ユーザの要求に応じて、前記可搬型記憶媒体の属性情報毎に、オフライン可能となる可搬型記憶媒体をソートしてランク付け、前記可搬型記憶媒体の属性情報毎のオフライン候補としてユーザに提示する、請求項17に記載の計算機システム。
  19. 前記装置管理サーバは、前記可搬型記憶媒体の属性情報毎のソート回数を前記ユーザに対応付けて管理し、当該ソート回数に基づいてランク付けを調整する、請求項18に記載の計算機システム。

JP2014212608A 2014-10-17 2014-10-17 計算機システムおよび装置管理サーバ Pending JP2016081332A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014212608A JP2016081332A (ja) 2014-10-17 2014-10-17 計算機システムおよび装置管理サーバ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014212608A JP2016081332A (ja) 2014-10-17 2014-10-17 計算機システムおよび装置管理サーバ

Publications (1)

Publication Number Publication Date
JP2016081332A true JP2016081332A (ja) 2016-05-16

Family

ID=55956333

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014212608A Pending JP2016081332A (ja) 2014-10-17 2014-10-17 計算機システムおよび装置管理サーバ

Country Status (1)

Country Link
JP (1) JP2016081332A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022172721A1 (ja) * 2021-02-15 2022-08-18 富士フイルム株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
WO2023032121A1 (ja) 2021-09-02 2023-03-09 キオクシア株式会社 ストレージシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022172721A1 (ja) * 2021-02-15 2022-08-18 富士フイルム株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
WO2023032121A1 (ja) 2021-09-02 2023-03-09 キオクシア株式会社 ストレージシステム

Similar Documents

Publication Publication Date Title
JP5893745B2 (ja) ストレージ装置が有する階層型プール内のデータの配置を制御する計算機及び方法
JP5771280B2 (ja) 計算機システム及びストレージ管理方法
JP4367406B2 (ja) コンピュータ割り当て方法
US8549247B2 (en) Storage system, management method of the storage system, and program
US8239621B2 (en) Distributed data storage system, data distribution method, and apparatus and program to be used for the same
JP4733461B2 (ja) 計算機システム、管理計算機及び論理記憶領域の管理方法
JP4914173B2 (ja) 再配置システムおよび再配置方法
JP4437650B2 (ja) ストレージシステム
JP4943081B2 (ja) ファイル格納制御装置及び方法
US8713577B2 (en) Storage apparatus and storage apparatus management method performing data I/O processing using a plurality of microprocessors
US8392685B2 (en) Arrangements for managing metadata of an integrated logical unit including differing types of storage media
JP5286192B2 (ja) ストレージシステムの容量を管理する管理計算機及びストレージシステムの容量管理方法
JP5185445B2 (ja) ストレージシステム及びストレージシステムにおける使用容量管理方法
US20110320754A1 (en) Management system for storage system and method for managing storage system
US20120011329A1 (en) Storage apparatus and storage management method
EP1708078A1 (en) Data relocation method
US20120297156A1 (en) Storage system and controlling method of the same
JP2013114624A (ja) ストレージシステム及びプール容量縮小の制御方法
US8583882B2 (en) Storage subsystem and its control method
WO2013080243A2 (en) Storage system controller, storage system, and access control method
US7836145B2 (en) Computer system, management method, and management computer for managing data archiving storage extents based on server performance management information and storage utilization information
JP2005301684A (ja) ストレージシステム
US20050256898A1 (en) Computer system including file sharing device and a migration method
JP5421201B2 (ja) 計算機システムを管理する管理システム及び管理方法
JP2016081332A (ja) 計算機システムおよび装置管理サーバ