IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

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

特許7409196ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム
<>
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図1
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図2
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図3
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図4
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図5
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図6
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図7
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図8
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図9
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図10
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図11
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図12
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図13
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図14
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図15
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図16
  • 特許-ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-25
(45)【発行日】2024-01-09
(54)【発明の名称】ストレージ制御装置、ストレージシステム、及びストレージ制御プログラム
(51)【国際特許分類】
   G06F 3/06 20060101AFI20231226BHJP
   G06F 13/10 20060101ALI20231226BHJP
   G06F 11/14 20060101ALI20231226BHJP
【FI】
G06F3/06 304F
G06F3/06 303E
G06F3/06 302A
G06F13/10 340A
G06F11/14 648
【請求項の数】 9
(21)【出願番号】P 2020057473
(22)【出願日】2020-03-27
(65)【公開番号】P2021157527
(43)【公開日】2021-10-07
【審査請求日】2022-12-08
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110003649
【氏名又は名称】弁理士法人真田特許事務所
(74)【代理人】
【識別番号】100092978
【弁理士】
【氏名又は名称】真田 有
(74)【代理人】
【識別番号】100189201
【弁理士】
【氏名又は名称】横田 功
(72)【発明者】
【氏名】平島 伸幸
(72)【発明者】
【氏名】栗原 拓弥
【審査官】松平 英
(56)【参考文献】
【文献】特開2014-206873(JP,A)
【文献】特開2007-323589(JP,A)
【文献】特開2006-040065(JP,A)
【文献】特開2016-042294(JP,A)
【文献】特開2017-049897(JP,A)
【文献】特開2014-219750(JP,A)
【文献】特開2008-083845(JP,A)
【文献】国際公開第2009/101681(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/06-3/08
11/14
13/10-13/14
16/00-16/958
(57)【特許請求の範囲】
【請求項1】
記憶装置が記憶する複数のデータのそれぞれの格納先の記録媒体に関する管理情報を、複数の前記記録媒体のそれぞれについて記憶する第1記憶領域と、
前記記録媒体が記録するデータが更新される際に、前記第1記憶領域において、更新前のデータを無効状態として管理し、前記記録媒体の空き記憶領域に書き込まれた更新後のデータを有効状態として管理する管理部と、
前記複数の記録媒体のバックアップの開始指示の受信に応じて、複数の前記管理情報に対して、前記複数の記録媒体に記録された少なくとも有効状態のデータのそれぞれにバックアップの実施対象であることを示す実施情報を設定する設定部と、
前記実施情報が設定された前記複数の管理情報を第2記憶領域に複製する複製部と、
第1管理情報において実施情報が設定された有効状態の第1データであって前記記憶装置が記憶する前記第1データを、第2データに更新する更新指示の受信に応じて、前記管理部により第2管理情報において有効状態として管理される前記第2データに更新の発生を示す更新情報を設定する更新部と、
復元指示の受信に応じて、前記第2記憶領域に格納された複数の複製管理情報により、前記第1記憶領域に格納された前記複数の管理情報を更新し、前記更新情報が設定された前記第2データを、前記第2管理情報において無効状態に設定するとともに、前記記憶装置から削除する復元部と、
を備える、ストレージ制御装置。
【請求項2】
配置変更元の記録媒体に記録された有効状態のデータを、配置変更先の記録媒体に移動し、前記配置変更元の記録媒体を先頭の記憶領域から使用可能に設定する配置変更処理を実行する処理部、を備え、
前記設定部は、前記複数の記録媒体のそれぞれについて、前記記録媒体に記録された全データ数に対する無効状態のデータ数の割合に応じて、前記実施情報として第1実施情報及び第2実施情報のいずれかを設定し、
前記処理部は、前記配置変更元の記録媒体の管理情報に設定された前記実施情報に応じて、前記配置変更元の記録媒体に対する前記配置変更処理を制御する、
請求項1に記載のストレージ制御装置。
【請求項3】
前記設定部は、前記複数の記録媒体のそれぞれについて、前記記録媒体における前記割合が所定の閾値未満の場合、前記記録媒体の管理情報の先頭から最終の有効状態のデータまでのデータのそれぞれに、前記第1実施情報を設定し、
前記処理部は、前記配置変更元の記録媒体の管理情報において前記第1実施情報が設定されているデータを、前記配置変更処理の対象データから除外する、
請求項2に記載のストレージ制御装置。
【請求項4】
前記設定部は、前記複数の記録媒体のそれぞれについて、前記記録媒体における前記割合が所定の閾値以上の場合、前記記録媒体の管理情報の有効状態のデータのそれぞれに、前記第2実施情報を設定し、
前記処理部は、前記配置変更元の記録媒体の管理情報において前記第2実施情報が設定されているデータを、配置変更先の記録媒体に移動する、
請求項2又は請求項3に記載のストレージ制御装置。
【請求項5】
前記処理部は、前記第2実施情報が設定されているデータの前記配置変更元及び前記配置変更先のそれぞれの管理情報に基づいて、前記第2記憶領域に格納された前記配置変更元及び前記配置変更先のそれぞれに対応する複製管理情報を更新する、
請求項4に記載のストレージ制御装置。
【請求項6】
前記復元指示の受信に応じた前記複数の管理情報の更新後に、前記第1データに対するアクセス指示の受信に応じて、前記第1管理情報に基づき、前記第1データを記録する記録媒体から前記第1データを前記記憶装置に読み出すアクセス部、を備える、
請求項1~請求項5のいずれか1項に記載のストレージ制御装置。
【請求項7】
前記更新部は、前記第1データが前記第2データに更新される際に、前記第1データを前記記憶装置の待避領域に格納し、前記第2管理情報において前記第2データに前記更新情報を設定し、
前記管理部は、前記記憶装置に格納された前記第2データが格納先の記録媒体に書き込まれた場合、前記第1管理情報において前記第1データを無効状態に設定するとともに、前記第2管理情報において前記第2データを有効状態に設定し、
前記更新部は、前記待避領域に格納した前記第1データを削除する、
請求項1~請求項6のいずれか1項に記載のストレージ制御装置。
【請求項8】
記憶装置と、
前記記憶装置が記憶する複数のデータのそれぞれの格納先の記録媒体を収容するストレージ装置と、
前記記憶装置及び前記ストレージ装置を制御するストレージ制御装置と、を備え、
前記ストレージ制御装置は、
前記複数の記録媒体に関する管理情報を、複数の前記記録媒体のそれぞれについて記憶する第1記憶領域と、
前記記録媒体が記録するデータが更新される際に、前記第1記憶領域において、更新前のデータを無効状態として管理し、前記記録媒体の空き記憶領域に書き込まれた更新後のデータを有効状態として管理する管理部と、
前記複数の記録媒体のバックアップの開始指示の受信に応じて、複数の前記管理情報に対して、前記複数の記録媒体に記録された少なくとも有効状態のデータのそれぞれにバックアップの実施対象であることを示す実施情報を設定する設定部と、
前記実施情報が設定された前記複数の管理情報を第2記憶領域に複製する複製部と、
第1管理情報において実施情報が設定された有効状態の第1データであって前記記憶装置が記憶する前記第1データを、第2データに更新する更新指示の受信に応じて、前記管理部により第2管理情報において有効状態として管理される前記第2データに更新の発生を示す更新情報を設定する更新部と、
復元指示の受信に応じて、前記第2記憶領域に格納された複数の複製管理情報により、前記第1記憶領域に格納された前記複数の管理情報を更新し、前記更新情報が設定された前記第2データを、前記第2管理情報において無効状態に設定するとともに、前記記憶装置から削除する復元部と、
を備える、ストレージシステム。
【請求項9】
記憶装置が記憶する複数のデータのそれぞれの格納先の記録媒体に関する管理情報を、複数の前記記録媒体のそれぞれについて記憶する第1記憶領域において、前記記録媒体が記録するデータが更新される際に、更新前のデータを無効状態として管理し、前記記録媒体の空き記憶領域に書き込まれた更新後のデータを有効状態として管理し、
前記複数の記録媒体のバックアップの開始指示の受信に応じて、複数の前記管理情報に対して、前記複数の記録媒体に記録された少なくとも有効状態のデータのそれぞれにバックアップの実施対象であることを示す実施情報を設定し、
前記実施情報が設定された前記複数の管理情報を第2記憶領域に複製し、
第1管理情報において実施情報が設定された有効状態の第1データであって前記記憶装置が記憶する前記第1データを、第2データに更新する更新指示の受信に応じて、第2管理情報において有効状態として管理される前記第2データに更新の発生を示す更新情報を設定し、
復元指示の受信に応じて、前記第2記憶領域に格納された複数の複製管理情報により、前記第1記憶領域に格納された前記複数の管理情報を更新し、前記更新情報が設定された前記第2データを、前記第2管理情報において無効状態に設定するとともに、前記記憶装置から削除する、
処理をコンピュータに実行させる、ストレージ制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストレージ制御装置、ストレージシステム、及びストレージ制御プログラムに関する。
【背景技術】
【0002】
テープライブラリ装置の利用形態の一例として、テープライブラリ装置、ディスクアレイ装置及び制御サーバを備える仮想テープ装置(「仮想テープシステム」と称されてもよい)が知られている。
【0003】
テープライブラリ装置は、磁気テープカートリッジや光ディスクカートリッジ等の物理ボリューム(Physical Volume;以下、PVと表記する)を複数収納する。物理ボリュームは、削除対象のデータや更新前のデータが無効として管理されるとともに、書込対象のデータや更新後のデータが空き記憶領域に追記される追記型の記録媒体の一例である。
【0004】
ディスクアレイ装置は、ホスト装置において認識可能なボリュームであって、PVへの書き込み単位のボリュームである論理ボリューム(Logical Volume;以下、LVと表記する)のデータを格納する記憶装置である。
【0005】
制御サーバは、制御サーバ上で実行される仮想ドライブに、ディスクアレイ装置内のLVをマウントすることで、ホスト装置に対してLVへのアクセス環境を提供する。例えば、制御サーバは、ホスト装置によってLVの更新等の書き込みが行なわれると、ディスクアレイ装置内のLVの更新を行ない、所定のタイミングで、更新後のLVのデータをテープライブラリ装置内のPVに書き込む。
【0006】
また、制御サーバは、ディスクアレイ装置の空き容量が減少すると、ディスクアレイ装置から古いデータを削除する。さらに、制御サーバは、削除済みのLVに対するアクセス要求をホスト装置から受領した場合、該当するLVを格納するPVから、ディスクアレイ装置にLVのデータを読み出す。
【先行技術文献】
【特許文献】
【0007】
【文献】特開2004-192133号公報
【文献】特開平06-019765号公報
【文献】特開2013-161234号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
データを格納するストレージシステムにおいては、データのバックアップの作成、及び、作成したバックアップデータからのデータの復元(復旧)を、それぞれ短時間で実行できることが重要である。
【0009】
例えば、ディスクアレイ装置では、スナップショット(Snap Shot)機能等を用いることにより、これらを短時間で実行可能である。一方、テープライブラリ装置は、それ自体がバックアップ装置として利用される装置であるため、スナップショット機能等が設けられていない。
【0010】
例えば、仮想テープ装置は、バックアップの際に、或る時点のLVのデータをPVにコピーしておき、復元の際に、PVからディスクアレイ装置に当該LVのデータを復元するバックアップ機能を備える場合がある。しかし、バックアップ機能では、テープライブラリ装置内のPVに対するバックアップデータの書き込み処理が発生するため、仮想テープ装置全体のバックアップデータを短時間で作成することは困難である。
【0011】
1つの側面では、本発明は、追記型の記録媒体のバックアップの作成及び復元時間を短縮することを目的の1つとする。
【課題を解決するための手段】
【0012】
1つの態様では、ストレージ制御装置は、第1記憶領域と、管理部と、設定部と、複製部と、更新部と、復元部と、を備えてよい。前記第1記憶領域は、記憶装置が記憶する複数のデータのそれぞれの格納先の記録媒体に関する管理情報を、複数の前記記録媒体のそれぞれについて記憶してよい。前記管理部は、前記記録媒体が記録するデータが更新される際に、前記第1記憶領域において、更新前のデータを無効状態として管理し、前記記録媒体の空き記憶領域に書き込まれた更新後のデータを有効状態として管理してよい。前記設定部は、前記複数の記録媒体のバックアップの開始指示の受信に応じて、複数の前記管理情報に対して、前記複数の記録媒体に記録された少なくとも有効状態のデータのそれぞれにバックアップの実施対象であることを示す実施情報を設定してよい。前記複製部は、前記実施情報が設定された前記複数の管理情報を第2記憶領域に複製してよい。前記更新部は、第1管理情報において実施情報が設定された有効状態の第1データであって前記記憶装置が記憶する前記第1データを、第2データに更新する更新指示の受信に応じて、前記管理部により第2管理情報において有効状態として管理される前記第2データに更新の発生を示す更新情報を設定してよい。前記復元部は、復元指示の受信に応じて、前記第2記憶領域に格納された複数の複製管理情報により、前記第1記憶領域に格納された前記複数の管理情報を更新し、前記更新情報が設定された前記第2データを、前記第2管理情報において無効状態に設定するとともに、前記記憶装置から削除してよい。
【発明の効果】
【0013】
1つの側面では、追記型記録媒体のバックアップの作成及び復元時間を短縮することができる。
【図面の簡単な説明】
【0014】
図1】一実施形態の一例としての仮想テープシステムの構成例を示すブロック図である。
図2図1に示す仮想テープシステムにおける制御サーバのハードウェア構成例を示すブロック図である。
図3】一実施形態に係る仮想テープシステムの機能構成例を示すブロック図である。
図4図3に示す仮想テープシステムを説明するための図である。
図5】PV配置変更処理の一例を説明するための図である。
図6】制御サーバの機能構成例を示すブロック図である。
図7】LVデータ情報の一例を示す図である。
図8】キープ対象のLVに対するバックアップ処理の動作例を説明するための図である。
図9】アレンジメント対象のLVに対するバックアップ処理の動作例を説明するための図である。
図10】バックアップの開始処理の動作例を説明するための図である。
図11】バックアップの開始処理後のPV配置変更処理の動作例を説明するための図である。
図12】バックアップデータの復元処理の動作例を説明するための図である。
図13】PV配置変更処理が実行されない場合のバックアップ処理の実施例を説明するための図である。
図14】PV配置変更処理が実行される場合のバックアップ処理(第1処理)の実施例を説明するための図である。
図15】PV配置変更処理が実行される場合のバックアップ処理(第1処理)の実施例を説明するための図である。
図16】PV配置変更処理が実行される場合のバックアップ処理(第2処理)の実施例を説明するための図である。
図17】PV配置変更処理が実行される場合のバックアップ処理(第2処理)の実施例を説明するための図である。
【発明を実施するための形態】
【0015】
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形や技術の適用を排除する意図はない。例えば、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。なお、以下の実施形態で用いる図面において、同一符号を付した部分は、特に断らない限り、同一若しくは同様の部分を表す。
【0016】
〔1〕一実施形態
〔1-1〕仮想テープシステムの構成例
図1は、一実施形態の一例としての仮想テープシステム1の構成例を示すブロック図である。仮想テープシステム1は、ストレージシステムの一例であり、図1に示すように、例示的に、テープライブラリ2、ディスク装置3及び制御サーバ4を備えてよい。制御サーバ4には、ホスト装置5が接続されてよい。なお、仮想テープシステム1は、テープライブラリ2、ディスク装置3及び制御サーバ4の少なくとも1つを複数台備えてもよい。
【0017】
一実施形態に係る仮想テープシステム1は、ホスト装置5に対してフロント側の仮想部にディスク装置3を配置し、ホスト装置5に対してバックエンド側の物理部にテープライブラリ2が接続される構成となる。
【0018】
テープライブラリ2は、テープライブラリ装置又はストレージ装置の一例である。テープライブラリ2は、物理ボリュームの一例であるPV20を複数収納(収容)し、制御サーバ4からの指示に応じてPV20に対するアクセスを行なう。
【0019】
PV20は、PV20内の削除対象のデータが無効として管理され、書込対象のデータがPV20内の空き記憶領域に書き込まれるとともに有効状態として管理される追記型の記録媒体の一例であり、また、可搬型の記録媒体の一例である。PV20としては、LTO(Linear Tape Open)カートリッジ等の磁気テープや、光ディスクカートリッジ等が挙げられる。
【0020】
なお、削除対象のデータには、削除指示の対象データの他に、更新指示に係る更新前のデータが含まれてよい。また、書込対象のデータには、書込指示の対象データの他に、更新指示に係る更新後のデータが含まれてよい。例えば、PV20内のデータが更新される場合、PV20のような追記型の記録媒体においては、既存のLV30の削除と、更新後のLV30の書き込みとが行なわれる。従って、PV20内の更新前のデータは、無効状態として管理され、書込対象として空き記憶領域に書き込まれる更新後のデータは、有効状態として管理されてよい。
【0021】
テープライブラリ2は、図示しない複数のドライブ、1台以上のロボット及びコントローラを備えてよい。コントローラは、制御サーバ4から受信したコマンドに応じて、PV40をドライブに挿抜するロボットの制御、及び、挿入されたPV40にアクセスするドライブの制御を行なってよい。
【0022】
ディスク装置3は、複数のPV20に格納されるデータを記憶する記憶装置の一例であり、ホスト装置5とテープライブラリ2との間のアクセスに係るLV30のデータを記憶する。例えば、ディスク装置3は、複数のLV30を記憶する記憶領域と、後述する待避領域31とを備えてよい。
【0023】
ディスク装置3は、複数の記憶モジュールを含んでよく、これらの記憶モジュールによりRAID(Redundant Arrays of Inexpensive Disks)を構成してよい。換言すれば、ディスク装置3は、ディスクアレイ装置であってもよい。
【0024】
記憶モジュールとしては、HDD(Hard Disk Drive)等の磁気ディスク装置、及び、SSD(Solid State Drive)等の半導体ドライブ装置、の一方又は双方が挙げられる。ディスク装置3は、RAID等のディスクグループを用いてファイルシステムを提供してもよい。なお、一実施形態に係るディスク装置3は、スナップショット機能を有していなくてよい。
【0025】
制御サーバ4は、テープライブラリ2とホスト装置5との間に介設されるとともに、ディスク装置3と接続され、ホスト装置5からの要求に応じて、ディスク装置3を利用して、テープライブラリ2に対する種々の制御を行なう。
【0026】
制御サーバ4は、制御サーバ4上で実行される仮想ドライブ40に、ディスク装置3内のLV30をマウントすることで、ホスト装置5に対してLV30へのアクセス環境を提供する。例えば、制御サーバ4は、ホスト装置5によって、仮想ドライブ40にマウントされたLV30に対する更新等の書き込みが行なわれると、ディスク装置3内のLV30の更新を行ない、所定のタイミングで、更新後のLV30のデータをテープライブラリ2内のPV20に書き込む。
【0027】
また、制御サーバ4は、ディスク装置3の空き容量が減少すると、ディスク装置3から古いデータを削除する。さらに、ホスト装置5から、ディスク装置3からは削除済みのLV30に対するアクセス要求を受領した場合、制御サーバ4は、該当するLV30を格納するPV20から、ディスク装置3にLV30のデータを読み出す。
【0028】
制御サーバ4は、仮想テープシステム1において種々の制御を行なう制御装置又はストレージ制御装置の一例である。一実施形態において、制御サーバ4は、ホスト装置5からバックアップの開始指示又は復元指示を受信すると、ディスク装置3及びテープライブラリ2とともにバックアップの開始処理又は復元処理を行なう。
【0029】
このように、制御サーバ4は、ホスト装置5から受領したバックアップデータを、ディスク装置3、及び、テープライブラリ2内のPV20の双方に格納する。
【0030】
なお、制御サーバ4は、複数台存在してもよい。例えば、複数台のうちの1台の制御サーバ4は、プライマリとして動作し、複数台のうちの1台以上(例えば残り)の制御サーバ4は、プライマリに障害が発生した場合に動作するセカンダリ(スタンバイ)として待機してよい。例えば、セカンダリの制御サーバ4は、プライマリの制御サーバ4に異常が発生したときに自身がプライマリに昇格して元のプライマリの処理を引き継いでよい。
【0031】
また、図1において、便宜上図示を省略しているが、仮想テープシステム1は、上述した装置に加えて、例えば、制御サーバ4とは異なる機能を有するサーバ、通信装置、及び電源装置等の種々の装置を備えてもよい。
【0032】
制御サーバ4とテープライブラリ2との間は、FC(Fibre Channel)ケーブル等を介したSAN(Storage Area Network)等のネットワークにより相互に通信可能に接続されてよい。また、仮想テープシステム1内の図示しない装置間は、LAN(Local Area Network)又はSAN等のネットワークにより相互に通信可能に接続されてよい。
【0033】
ホスト装置5は、制御サーバ4を介したテープライブラリ2へのアクセスを行なう情報処理装置又は上位装置の一例である。ホスト装置5としては、例えば、PC(Personal Computer)、サーバ、或いはメインフレーム等の種々のコンピュータが挙げられる。
【0034】
ホスト装置5では、例えば、仮想テープシステム1の運用に関する種々の制御を行なうソフトウェアが実行されてよい。当該ソフトウェアによる制御には、例えば、仮想テープシステム1におけるテープライブラリ2(複数のPV20)のバックアップ及び復元に関する制御や、LV30へのアクセスに関する制御等が含まれてよい。ホスト装置5と制御サーバ4との間は、例えば、LAN等のネットワークにより相互に通信可能に接続されてよい。
【0035】
〔1-2〕ハードウェア構成例
次に、図2を参照して、図1に示す仮想テープシステム1における制御サーバ4のハードウェア構成例について説明する。
【0036】
図2に示すように、制御サーバ4は、例示的に、プロセッサ4a、メモリ4b、記憶部4c、テープIF(Interface)4d-1、入出力IF4d-2、ホストIF4d-3、ディスクIF4d-4、及び読取部4eを備えてよい。
【0037】
プロセッサ4aは、種々の制御や演算を行なう演算処理装置の一例である。プロセッサ4aは、各ブロック4b~4eとバス4iで相互に通信可能に接続されてよい。プロセッサ4aとしては、例えば、CPU、MPU、DSP、ASIC、PLD(例えばFPGA)等の集積回路(IC;Integrated Circuit)のうちのいずれか1つが挙げられる。なお、プロセッサ4aとして、例えば、これらの集積回路のうちの2以上の組み合わせが用いられてもよい。CPUはCentral Processing Unitの略称であり、MPUはMicro Processing Unitの略称であり、DSPはDigital Signal Processorの略称である。また、ASICはApplication Specific Integrated Circuitの略称であり、PLDはProgrammable Logic Deviceの略称であり、FPGAはField Programmable Gate Arrayの略称である。
【0038】
メモリ4bは、種々のデータやプログラムを格納するハードウェアの一例である。メモリ4bとしては、例えば、DRAM(Dynamic Random Access Memory)等の揮発性メモリ及びPM(Persistent Memory)等の不揮発性メモリの一方又は双方が挙げられる。
【0039】
記憶部4cは、種々のデータやプログラム等を格納するハードウェアの一例である。例えば、記憶部4cは、制御サーバ4の二次記憶装置として使用されてよく、OS(Operating System)やファームウェア、アプリケーション等のプログラム、及び各種データが格納されてよい。記憶部4cとしては、例えば、HDD等の磁気ディスク装置、SSD等の半導体ドライブ装置、不揮発性メモリ等の各種記憶装置が挙げられる。不揮発性メモリとしては、例えば、フラッシュメモリ、SCM(Storage Class Memory)、ROM(Read Only Memory)、PM等が挙げられる。記憶部4cは、制御サーバ4の各種機能の全部若しくは一部を実現するプログラム4fを格納してもよい。
【0040】
テープIF4d-1、入出力IF4d-2、ホストIF4d-3、及びディスクIF4d-4は、それぞれ、テープライブラリ2、入出力装置4g、ホスト装置5、及びディスク装置3との間の接続及び通信の制御等を行なう通信IFの一例である。なお、入出力装置4gは、例えば、マウス、キーボード、タッチパネル、操作ボタン等の入力部、及び、ディスプレイやプリンタ等の出力部、の一方又は双方を含んでよい。
【0041】
制御サーバ4は、管理者の管理端末との間の接続及び通信の制御等を行なう通信IFを備えてもよく、当該通信IFを用いて、図示しないネットワークからプログラム4fをダウンロードしてもよい。
【0042】
読取部4eは、記録媒体4hに記録されたデータやプログラムを読み出しプロセッサ4aに出力するリーダの一例である。読取部4eは、記録媒体4hを接続又は挿入可能な接続端子又は装置を含んでもよい。読取部4eとしては、例えばUSB(Universal Serial Bus)等に準拠したアダプタ、記録ディスクへのアクセスを行なうドライブ装置、SDカード等のフラッシュメモリへのアクセスを行なうカードリーダ等が挙げられる。なお、記録媒体4hにはプログラム4fが格納されてもよい。
【0043】
記録媒体4hとしては、例示的に、磁気/光ディスクやフラッシュメモリ等の非一時的なコンピュータ読取可能な記録媒体が挙げられる。磁気/光ディスクとしては、例示的に、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク、HVD(Holographic Versatile Disc)等が挙げられる。フラッシュメモリとしては、例示的に、USBメモリやSDカード等の半導体メモリが挙げられる。
【0044】
上述した制御サーバ4のハードウェア構成は例示である。従って、制御サーバ4内でのハードウェアの増減(例えば任意のブロックの追加や削除)、分割、任意の組み合わせでの統合、バスの追加又は省略等は適宜行なわれてもよい。
【0045】
また、制御サーバ4が備える他の装置は、図2に示す制御サーバ4と同様のハードウェア構成を備えてもよい。
【0046】
なお、テープライブラリ2が備える図示しないコントローラは、例えば、プロセッサ、メモリ、記憶部等のハードウェア構成を備えてよく、これらの少なくとも一部が集積回路として実装されてもよい。
【0047】
〔1-3〕機能構成例
次に、一実施形態に係る制御サーバ4の機能構成例を説明する。図3は、一実施形態に係る仮想テープシステム1の機能構成例を示すブロック図である。一実施形態に係る機能に着目すると、図3に示すように、制御サーバ4は、例示的に、複数の仮想ドライブ40、IO(Input / Output)制御部41、PV管理DB(Database)42、コマンド制御部43、及び、バックアップDB44を備えてよい。
【0048】
なお、PV管理DB42及びバックアップDB44のそれぞれは、制御サーバ4のメモリ4b及び記憶部4c(図2参照)の少なくとも一方により実現されてよい。また、仮想ドライブ40、IO制御部41、及び、コマンド制御部43は、制御サーバ4のプロセッサ4aがプログラム4fをメモリ4bに展開して実行することにより実現されてよい。
【0049】
仮想ドライブ40は、ホスト装置5に対して、LV30の記憶領域を、ホスト装置5が認識可能な形式で仮想テープシステム1として提供する仮想的なドライブであり、ホスト装置5によるLV30へのアクセスに用いられる。
【0050】
IO制御部41は、ホスト装置5から受信する、LV30に対する書込指示及び読出指示等のアクセス要求に関する種々の制御を行なう。
【0051】
例えば、IO制御部41は、アクセス部411、DB制御部412、及び、配置変更部113を備えてよい。
【0052】
アクセス部411は、ホスト装置5から受領する書込指示又は読出指示に応じて、仮想ドライブ40に対するLV30のマウント及びアンマウント、LV30に対するデータの書き込み又は読み出し、並びに、LV30とPV20との間のデータ転送等を行なう。
【0053】
例えば、アクセス部411は、図4に示すように、仮想ドライブ40上のLV30を更新すると、更新後のLV30をテープライブラリ2のPV20内に書き込む。このとき、PV20(例えば「PV-B」参照)内の既存(更新前)のLV30は無効となり(例えば、網掛けの「LV-A」~「LV-D」参照)、「PV-B」内の空き記憶領域に、新たに更新後の「LV-A」~「LV-D」が追記される。
【0054】
DB制御部412は、テープライブラリ2内のPV20を管理するためのPV管理DB42に関する制御を行なう。
【0055】
PV管理DB42は、第1記憶領域の一例であり、複数のLVデータ情報42aを格納する。LVデータ情報42aは、ディスク装置3が記憶する複数のLV30のそれぞれの格納先のPV20に関する管理情報の一例であり、テープライブラリ2のPV20ごとに、当該PV20に記録されているLV30を示す情報である。例えば、LVデータ情報42aは、PV40を特定するための情報の一例である「PV名」と、PV20に格納されたLV30の「LV名」、並びに、LV30の「格納位置」及び「状態情報」とを含んでよい。
【0056】
図4の例では、LVデータ情報42aは、PV名:「PV-A」に「LV-1」~「LV-4」がこの順番に格納されていることを示している。「LV-1」~「LV-4」のそれぞれには、これらのLV30の状態情報として、これらのLV30が有効状態(valid)であることを示す情報、例えば状態フラグ「v」が対応付けられてよい。
【0057】
また、LVデータ情報42aは、PV名:「PV-B」に、更新前の「LV-A」~「LV-D」がこの順番に格納されており、これらの後ろに、更新後の「LV-A」~「LV-D」がこの順番に追記されていることを示している。更新前の「LV-A」~「LV-D」のそれぞれには、これらのLV30の状態情報として、これらのLV30が無効状態(invalid)であることを示す情報、例えば状態フラグ「i」が対応付けられてよい。
【0058】
DB制御部412は、PV20が記録するLV30が更新される際に、PV管理DB42において、更新前のLV30を無効状態として管理し、PV20の空き記憶領域に書き込まれた更新後のLV30を有効状態(v)として管理する管理部の一例である。
【0059】
例えば、アーカイブデータの格納処理等の仮想テープシステム1における運用では、PV20において、更新前のLV30等の削除対象のLV30、すなわち無効状態のLV30が徐々に増加する。無効状態のLV30が増加すると、PV20の空き記憶領域が減少するため、PV20の利用効率が低下する。
【0060】
そこで、DB制御部412は、例えば、PV配置変更処理を実行し、PV20内のLV30の配置を変更する。
【0061】
例えば、DB制御部412は、PV配置変更処理において、配置変更元のPV20内のLV30のうちの有効状態のLV30を配置変更先の他のPV20に移動し、移動元PV20を先頭の記憶領域から使用可能に設定する配置変更処理を実行する処理部の一例である。先頭の記憶領域から「使用可能に設定する」こととは、例えば、移動元PV20のLVデータ情報42aを削除することを含んでよい。
【0062】
図5の例では、DB制御部412は、矢印A1及びB1に示すように、無効状態のLV30が多く含まれるPV-Aにおける有効状態のLV-1及びLV-8を、PV配置変更処理により、PV-Bに移動させる。これにより、PV-AのLVデータ情報42aにLV30が含まれなくなり(矢印A2参照)、PV-Aを先頭位置から利用可能とすることができる(矢印B2参照)。
【0063】
なお、PV配置変更処理の移動元PV20の決定は、例えば、無効状態のLV30を多く記録する(例えばPV20内のLV30に対する無効状態のLV30の割合が閾値以上である)PV20にする等の既知の種々の手法が利用されてよい。
【0064】
コマンド制御部43は、ホスト装置5から受信するコマンド、例えばCLI(Command Line Interface)等のUI(User IF)を介した操作要求に関する種々の制御を行なう。
【0065】
一実施形態においては、コマンド制御部43は、ホスト装置5から受信するバックアップの開始指示、及び、バックアップデータからの復元指示に関する制御を行なう。以下で説明する一実施形態に係る「バックアップ」は、例えば、仮想テープシステム1等の追記型の記録媒体を用いたストレージシステムに用いて好適なバックアップである。
【0066】
コマンド制御部43は、バックアップを制御する処理機能、例えばレイヤとして、開始処理部431、及び復元処理部432を備えてよい。
【0067】
開始処理部431は、複製部の一例であり、仮想テープシステム1のデータのバックアップを作成する処理である「開始処理」を実行する。復元処理部432は、開始処理部431が作成したバックアップデータを仮想テープシステム1に復元する処理である復元処理を実行する。
【0068】
例えば、開始処理部431は、開始処理の実行指示(開始指示)の受信に応じて、PV管理DB42内のPV20ごとのLVデータ情報42aのそれぞれを、バックアップ情報44aとして複製してバックアップDB44に格納する。
【0069】
バックアップDB44は、第2記憶領域の一例であり、複数のバックアップ情報44aを格納する。複数のバックアップ情報44aのそれぞれは、複数の複製管理情報の一例であり、バックアップの開始処理の実行時点における、対応するLVデータ情報42aのバックアップデータである。
【0070】
これにより、開始処理の実行時点における仮想テープシステム1内の「PV名」と、PV20内に格納されたLV30の「格納位置」及び「状態情報」とがバックアップされる。
【0071】
なお、PV管理DB42及びバックアップDB44のそれぞれは、例えば、制御サーバ4が備えるメモリ4b及び記憶部4cの一方又は双方の記憶領域であって、互いに異なる記憶領域により実現されてよい。
【0072】
復元処理部432は、復元処理の実行指示(復元指示)の受信に応じて、PV管理DB42の複数のLVデータ情報42aを、バックアップの開始処理の実行時点の情報に戻す。例えば、復元処理部432は、バックアップDB44内の復元処理対象のバックアップ情報44aを用いて、PV管理DB42内のLVデータ情報42aを更新することにより、バックアップデータの復元を行なう。
【0073】
バックアップ情報44aによるLVデータ情報42aの更新では、例えば、PV20ごとに、少なくとも、LV名、及び、状態情報の組み合わせが、バックアップ情報44aからLVデータ情報42aに設定されればよい。
【0074】
これにより、開始処理の実行時点における各PV20のLVデータ情報42aが復元され、PV20内の旧LV30にアクセス可能となり、テープライブラリ2内の情報を復元できる。
【0075】
このように、制御サーバ4によれば、開始処理の実行時点のPV管理DB42をバックアップしておき、復元処理において、バックアップデータをPV管理DB42に復元することで、テープライブラリ2のバックアップ及び復元を実現できる。
【0076】
このようなバックアップ手法により、テープライブラリ2のPV20に対するバックアップのための読み出し及び書き込み等のアクセスの発生を抑止できる。PV20に対するアクセスは、ロボットやドライブ等による機械的な動作時間を含むため、PV20に対するアクセスを回避できることにより、開始処理及び復元処理の処理時間を大幅に短縮することができる。
【0077】
ところで、上述した手法は、テープライブラリ2におけるPV20内のLV30のデータ配置が不変であることを前提としている。しかし、仮想テープシステム1では、上述したPV配置変更処理により、PV20内のLVデータの配置は不変ではない。
【0078】
例えば、PV配置変更処理の実行前に、バックアップの開始処理が実行された場合、復元処理により復元されるPV管理DB42と実際のPV42の配置との間で不一致が生じ得る。
【0079】
一例として、開始処理部431が、図4に示す矢印A1の状態のPV管理DB42をバックアップし、その後にPV配置変更処理が実行され、PV20内のLVデータの配置が図4の矢印B2に示す状態になった場合を想定する。この場合、復元処理部432が、バックアップ情報44aに基づき、LVデータ情報42aを符号A1の状態に戻すと、以下の不整合が生じる。
【0080】
・PV-A:復元したLVデータ情報42a上では有効状態のLV-1及びLV-8が存在するが、実際のPV-AにはLV-1及びLV-8は存在しない。
【0081】
・PV-B:復元したLVデータ情報42a上ではLV30が存在しないが、実際のPV-BにはLV-1及びLV-8が存在する。
【0082】
そこで、以下では、上述した一実施形態に係る制御サーバ4により、バックアップの開始処理と復元処理との間にPV20におけるLV30の配置が変更される場合においても、テープライブラリ2のバックアップ及び復元を適切に行なうための手法を説明する。
【0083】
〔1-4〕制御サーバの説明
図6は、制御サーバ4の機能構成例を示すブロック図である。図6に示すように、コマンド制御部43の開始処理部431は、例示的に、設定部43a、配置変更制御部43b及び更新制御部43cを備えてよい。
【0084】
設定部43aは、開始指示の受信に応じて、複数のLVデータ情報42aに対して、バックアップの対象PV20に記録された有効状態及び無効状態のうちの少なくとも有効状態のLVデータのそれぞれにバックアップ対象であることを示す実施情報を設定する。実施情報としては、例えば、複数種類の実施フラグが挙げられる。
【0085】
対象PV20とは、PV管理DB42に含まれる全てのPV20であってもよいし、開始指示で指定されたPV20であってもよい。
【0086】
例えば、設定部43aは、PV管理DB42で管理されるPV20ごとに、PV20の全LV30の数と、無効状態のLV30の数とに基づき、全LV30の数に対する、無効状態のLV30の数の割合(存在割合)を算出してよい。
【0087】
そして、設定部43aは、算出した存在割合が所定の閾値未満であるPV20のLVデータ情報42aに対しては、各LV30の実施情報に、第1実施情報の一例である実施フラグ「K_x」(Keep)を対応付けてよい。一方、設定部43aは、算出した存在割合が所定の閾値以上であるPV20のLVデータ情報42aに対しては、有効状態の各LV30の実施情報に、第2実施情報の一例である実施フラグ「A_x」(Arrangement)を対応付けてよい。
【0088】
実施フラグ中の「_x」は、バックアップの世代管理番号を表し、ホスト装置5から開始指示を受領する度に変更されてよい。従って、バックアップの対象は、世代管理対象と称されてもよく、実施情報は、世代管理情報と称されてもよい。
【0089】
実施フラグ「K_x」が付加されるキープ対象のLV30は、PV配置変更処理において配置変更対象から除外されてよい。実施フラグ「K_x」が付加されるということは、当該PV20において無効状態のLV30の存在割合が比較的小さいことを意味するため、当該PV20内のLV30が他のPV20に配置変更される必要性も比較的小さい。従って、キープ対象のLV30を配置変更対象から除外したとしても、テープライブラリ2におけるPV20の利用効率は低下し難い。これにより、PV管理DB42の制御負荷を低減させることができ、制御サーバ4の処理性能の低下を抑制できる。また、PV配置変更処理の対象LV30を減少させることができるため、PV配置変更処理の処理時間を短縮させることができる。
【0090】
実施フラグ「A_x」が付加されるアレンジメント対象のLV30は、PV配置変更処理において配置変更対象となる。実施フラグ「A_x」が付加されるということは、当該PV20において無効状態のLV30の存在割合が比較的大きいことを意味するため、PV配置変更処理において、当該PV20内のLV30が他のPV20に配置変更される可能性が高い。従って、アレンジメント対象のLV30を、他のPV20に配置変更として管理することで、世代管理を可能としつつ、テープライブラリ2におけるPV20の利用効率を向上させることができる。
【0091】
このように、制御サーバ4は、PV20に格納される有効状態及び無効状態の割合に応じて、LVデータ情報42aにバックアップの実施情報としてKマーク及びAマークのいずれかを付加(設定)する。そして、制御サーバ4は、マークに応じて、後述するようにバックアップ手法を切り替えることにより、効率的なPV20の制御及び運用が可能となる。
【0092】
これにより、テープライブラリ2の高速なバックアップの作成、及び、適切なバックアップデータの復元を実現できる。従って、仮想テープシステム1において、例えば、或る時点のテープライブラリ2のバックアップを短時間で作成し、データセンタ被災時やDR(Disaster Recovery)訓練後に短時間でバックアップデータを戻すといった運用を実現できる。
【0093】
図7は、LVデータ情報42aの一例を示す図である。図7では、図5の矢印A1に示す状態における、PV-A~PV-CのそれぞれのLVデータ情報42aを示す。なお、LVデータを含まないPV-BのLVデータ情報42aは省略されてもよい。
【0094】
図7に示すように、LVデータ情報42aは、PV20ごとに、「LV名」、「v/i」、「K/A」、及び、「D」を含んでよい。
【0095】
LVデータ情報42aにおいて、LV名の設定順序は、PV20への格納順序、すなわち格納位置を示す。「v/i」は、状態情報を示し、例えば、PV20内でLV30が有効状態である場合には「v」が設定され、無効状態である場合には「i」が設定される。
【0096】
「K/A」は、実施情報を示し、例えば、設定部43aにより、「K_x」又は「A_x」の実施フラグが設定される。設定部43aにより「K_x」と判定されたLVデータ情報42aには、LVデータ情報42aのリストの先頭のLV30からリスト内で「v」が設定された最後のLV30までの範囲における、「v」及び「i」の全てのLV30に対して、「K_x」が設定される。設定部43aにより「A_x」と判定されたLVデータ情報42aには、LVデータ情報42aのリスト内で「v」が設定された全てのLV30に対して、「A_x」が設定される。
【0097】
「D」は、バックアップの開始処理の実行後に更新されるLV30に対して設定される更新情報である。更新情報は、例えば、復元処理の際に削除対象であるか否かを示すフラグであってよく、「削除フラグ」と称されてもよい。削除フラグの詳細は後述する。
【0098】
開始処理部431は、設定部43aにより「K/A」が設定されたLVデータ情報42aの複製をバックアップ情報44aとしてバックアップDB44に格納する。
【0099】
配置変更制御部43bは、DB制御部412と協働して、開始処理の実行後に実行されるPV配置変更処理を行なう。
【0100】
例えば、配置変更制御部43bは、配置変更元のPV20のLVデータ情報42aに設定された実施フラグに応じて、配置変更元のPV20に対するPV配置変更処理を制御してよい。
【0101】
〔1-4-1〕実施フラグ「K_x」の場合のバックアップ処理の説明
まず、実施フラグに「K_x」が設定されたLV30(キープ対象のLV30)に対する、バックアップの開始処理から復元処理までのバックアップ処理の動作例を説明する。
【0102】
図8は、キープ対象のLV30に対するバックアップ処理の動作例を説明するための図である。図8の矢印A~Dのそれぞれは、所定のタイミングにおけるPV管理DB42及び実際のPV20内の状態を示す。
【0103】
矢印Aは、開始処理部431により、世代管理番号:x(例えばx=1)のバックアップの開始処理が実行される例を示す。設定部43aは、バックアップの開始処理の受信に応じて、PV-A及びPV-BのそれぞれのLVデータ情報42aに実施フラグ「K_x」を設定する。
【0104】
実施フラグ「K_x」(例えばK_1)は、開始処理の実行時点のPV20内の状態を確保するために、PV20内のLV30の位置情報を固定とする実施モードを示す。
【0105】
PV20内のLV30の位置情報を保持する対象範囲は、PV20の先頭から最終の有効状態のLV30までの連続した領域となる。図8の例では、キープ対象のLV30は、PV-A及びPV-BのLVデータ情報42aにおける破線で囲ったLV30である。開始処理部431は、矢印Aに示すPV管理DB42をバックアップする。
【0106】
矢印Bは、アクセス部411により、PV-A内のLV-1がLV-1′に更新される例を示す。LV-1が更新される場合、PV20のような追記型の記録媒体において、LV-1の更新指示は、削除対象である既存のLV-1の削除指示と、書込対象である更新後のLV-1′の書込指示との組み合わせと捉えることができる。
【0107】
従って、DB制御部412は、LV-1′がPV-Aに書き込まれる際に、PV-AのLVデータ情報42aに対して、削除対象のLV-1を無効状態に設定し、書込対象のLV-1′を有効状態として追記する。
【0108】
なお、LV30の更新に係る処理は更新制御部43cにより制御される。更新制御部43cの詳細は後述する。
【0109】
矢印Cは、PV配置変更処理が実行される例を示す。配置変更制御部43bは、キープ対象のLV30を、PV配置変更処理の対象から除外する旨の指示、換言すれば、配置変更を抑制する旨の指示をDB制御部412に通知する。DB制御部412は、当該指示に基づき、キープ対象のLV30については配置変更に含めずに、PV配置変更処理を実行する。
【0110】
図8の例では、DB制御部412は、実施フラグ「K_x」が設定されていない、PV-AのLV-1′を、PV-Cに配置する。このとき、DB制御部412は、PV-AのLVデータ情報42aに対して、削除対象のPV-A内のLV-1′を無効状態に設定し、PV-CのLVデータ情報42aに対して、書込対象のLV-1′を有効状態として設定する。
【0111】
矢印Dは、復元処理部432により、復元処理が実行される例を示す。復元処理部432は、復元指示の受信に応じて、バックアップDB44にバックアップしていたバックアップ情報44aをPV管理DB42に復元する。これにより、PV管理DB42は、矢印Aに示す時点の情報に戻り、ホスト装置5は、PV20内のキープ対象のLV30にアクセス可能となる。
【0112】
なお、制御サーバ4は、世代管理番号:x(例えば2)のバックアップの開始指示を受信した場合、LVデータ情報42aに対して実施フラグK_2の設定を行ない、実施フラグK_2が設定されたLV30をキープ対象として、上述した制御を行なってよい。
【0113】
〔1-4-2〕実施フラグ「A_x」の場合のバックアップ処理の説明
次に、実施フラグに「A_x」が設定されたLV30(アレンジメント対象のLV30)に対するバックアップ処理の動作例を説明する。
【0114】
図9は、アレンジメント対象のLV30に対するバックアップ処理の動作例を説明するための図である。図9の矢印E~Hのそれぞれは、所定のタイミングにおけるPV管理DB42及び実際のPV20内の状態を示す。
【0115】
矢印Eは、開始処理部431により、世代管理番号:x(例えばx=1)のバックアップの開始処理が実行される例を示す。設定部43aは、バックアップの開始処理の受信に応じて、PV-A及びPV-BのそれぞれのLVデータ情報42aに実施フラグ「A_x」を設定する。
【0116】
実施フラグ「A_x」(例えばA_1)は、LV30の格納場所が他のPV20等に変更されても、開始処理の実行時点のLV30を保持できるようにするために、LV30の位置情報をPV管理DB42において追跡する実施モードを示す。
【0117】
LV30の位置情報を保持(追跡)する対象範囲は、PV20内の有効状態が設定されたLV30となる。図9の例では、アレンジメント対象のLV30は、PV-A及びPV-BのLVデータ情報42aにおける一点鎖線で囲ったLV30、すなわち、PV-AのLV-1~LV-4、並びに、PV-BのLV-A′~LV-D′である。開始処理部431は、矢印Eに示すPV管理DB42をバックアップする。
【0118】
矢印Fは、アクセス部411により、PV-A内のLV-1がLV-1′に更新される例を示す。DB制御部412は、LV-1′がPV-Aに書き込まれる際に、PV-AのLVデータ情報42aに対して、削除対象のLV-1を無効状態に設定し、書込対象のLV-1′を有効状態として追記する。
【0119】
矢印Gは、PV配置変更処理が実行される例を示す。配置変更制御部43bは、アレンジメント対象の全てのLV30をPV配置変更処理の対象に含める旨の指示、換言すれば、配置変更対象とする旨の指示をDB制御部412に通知する。
【0120】
図9の例では、DB制御部412は、実施フラグ「A_x」が設定されている、PV-AのLV-1~LV-4、及び、PV-BのLV-A′~LV-D′を、PV-Cに配置する。このとき、DB制御部412は、移動元であるPV-A及びPV-BのLVデータ情報42a内の配置変更対象のLV-1~LV-4及びLV-A′~LV-D′を、移動先であるPV-CのLVデータ情報42aに設定する。また、DB制御部412は、移動元であるPV-A及びPV-BのLVデータ情報42aを削除する。
【0121】
配置変更制御部43bは、DB制御部412によるLV30の移動後に、移動元及び移動先のPV20に関するLVデータ情報42aに基づき、バックアップDB44内のバックアップ情報44aを更新する。例えば、配置変更制御部43bは、移動元であるPV-A及びPV-Bのバックアップ情報44a内の配置変更対象のLV-1~LV-4及びLV-A′~LV-D′を、移動先であるPV-Cのバックアップ情報44aに設定する。また、配置変更制御部43bは、移動元であるPV-A及びPV-Bのバックアップ情報44aを削除する。
【0122】
矢印Hは、復元処理部432により、復元処理が実行される例を示す。復元処理部432は、復元指示の受信に応じて、バックアップDB44にバックアップしていたバックアップ情報44aをPV管理DB42に復元する。これにより、PV管理DB42は、矢印Eに示す時点のアレンジメント対象のLVデータを保持しつつ、矢印Gに示すPV配置変更処理の処理結果が反映された状態となり、ホスト装置5は、PV20内のキープ対象のLV30にアクセス可能となる。
【0123】
なお、制御サーバ4は、世代管理番号:x(例えば2)のバックアップの開始指示を受信した場合、LVデータ情報42aに対して実施フラグA_2の設定を行ない、実施フラグA_2が設定されたLV30をキープ対象として、上述した制御を行なってよい。
【0124】
〔1-4-3〕バックアップ処理中にLVデータ更新が行なわれる場合の説明
図8の矢印B及び図9の矢印Fにおいて、LV30の更新に係る処理は、更新制御部43cにより制御される。以下、更新制御部43cの処理を説明する。
【0125】
(開始処理の実行後にLV30の更新処理が行なわれる場合)
上述のように、アクセス部411は、開始処理の実行後に、ホスト装置5からLVデータの書き込み要求を受領すると、仮想ドライブ40にマウントしたLV30に対してLVデータの更新を行なう。
【0126】
更新制御部43cは、ディスク装置3上のLVデータが更新される場合、更新後のLVデータがPV20に格納されるまでは、更新前のLVデータをディスク装置3の待避領域31に一時的に保存する。
【0127】
待避領域31に更新前のLVデータをコピーすることで、PV管理DB42内で未だ有効状態である更新前のLV30の実体(データ)を、更新後のLVデータがPV20に書き込まれるまでの間、保存しておくことができる。
【0128】
また、更新制御部43cは、更新対象のLV30がバックアップ対象のLV30である場合、更新後のLVデータについて、LVデータ情報42aの更新情報(削除フラグ)をオンに設定する。削除フラグは、復元処理の際に、どのLV30を削除するのか(例えば無効状態に設定するのか)を判別するために使用される情報であり、復元処理の実行後に、削除フラグがオンであるLV30に対してデータ削除が行なわれる。
【0129】
換言すれば、更新制御部43cは、第1LVデータ情報42aにおいて実施情報が設定された有効状態の第1データであってディスク装置3が記憶する第1データを、第2データに更新する更新指示の受信に応じて、DB制御部412により第2LVデータ情報42aにおいて有効状態として管理される第2データに更新の発生を示す更新情報を設定する更新部の一例である。第1及び第2データは、それぞれ更新前及び更新後のLV30である。第1LVデータ情報42aは、第1管理情報の一例であり、第2LVデータ情報42aは、第2管理情報の一例である。
【0130】
DB制御部412は、バックエンドのPV20に対してLVデータの更新が行なわれ、更新後のLVデータがPV20に格納された場合、PV管理DB42において、更新前の(旧)LVデータを無効状態に設定し、更新後の(新たに書き込まれた)LVデータを有効状態に設定する。この場合、更新制御部43cは、待避領域31に一時的に保存した更新前のLVデータを削除する。
【0131】
(更新後のLVデータの復元処理での扱い)
復元処理部432は、復元処理が実行される際に、復元後のLVデータ情報42aにおいて、削除フラグがオンに設定されている更新後のLV30の状態情報を無効状態に設定するとともに、LVデータ情報42a上に存在しない当該LVデータを、ディスク装置3から削除する。
【0132】
換言すれば、復元処理部432は、復元指示の受信に応じて、バックアップDB45に格納された複数のバックアップ情報45aにより、PV管理DB42に格納された複数のLVデータ情報42aを更新し、更新情報が設定された第2データを、第2LVデータ情報42aにおいて無効状態に設定するとともに、ディスク装置3から削除する復元部の一例である。
【0133】
以上のように、制御サーバ4は、バックアップの開始指示に応じて、LVデータ情報42a内の少なくとも有効状態のLV30に対して実施フラグを付加してLVデータ情報42aを複製する。そして、制御サーバ4は、実施フラグが付加されたLV30の更新が発生すると、更新後のLV30のLVデータ情報42aにDマークを付加する。また、制御サーバ4は、復元指示に応じて、複製したバックアップ情報45aをPV管理DB42に戻し、Dマークが付加されたLV30をディスク装置3から削除してPV20上で無効状態にする。
【0134】
復元後のLVデータ情報42aでは、更新前のLVデータが有効状態であるから、復元処理部432によって、更新後のLV30を無効状態に設定しディスク装置3から削除することにより、更新されたLVデータを開始処理の実行時点の状態に戻すことができる。
【0135】
なお、復元処理の実行後に、ホスト装置5から、更新前のLVデータに対するアクセス要求を受領した場合、ディスク装置3上に当該LVデータが存在しない。このため、アクセス部411は、更新前のLVデータのLVデータ情報42aに基づき、更新前のLVデータを記録するPV20から有効状態のLVデータをディスク装置3に読み出す。これにより、ディスク装置3上のデータについても開始処理の実行時点の状態に戻すことができる。
【0136】
〔1-5〕動作例
次に、図10図12を参照して、上述の如く構成された仮想テープシステム1の動作例の説明を行なう。
【0137】
〔1-5-1〕バックアップの開始処理
図10を参照して、仮想テープシステム1におけるバックアップの開始処理の動作例を説明する。
【0138】
図10に例示するように、コマンド制御部43の開始処理部431は、ホスト装置5からバックアップの開始指示を受領する(ステップS1)。開始処理部431の設定部43aは、PV管理DB42で管理されている未抽出のPV20を1つ抽出する(ステップS2)。
【0139】
設定部43aは、抽出したPV20のLVデータ情報42aの無効LV数及び全LV数を取得し(ステップS3)、無効LV数/全LV数が閾値未満か否かを判定する(ステップS4)。
【0140】
無効LV数/全LV数が閾値未満である場合(ステップS4でYES)、設定部43aは、当該PV20のLVデータ情報42aにおける、世代管理対象の有効LV30にKマークを付加し(ステップS5)、処理がステップS7に移行する。
【0141】
無効LV数/全LV数が閾値未満ではない場合(ステップS4でNO)、設定部43aは、当該PV20のLVデータ情報42aにおける、世代管理対象の有効LV30にKマークを付加し(ステップS5)、処理がステップS7に移行する。
【0142】
ステップS7では、設定部43aは、全てのPV20を抽出したか否かを判定する。全てのPV20を抽出していない場合(ステップS7でNO)、処理がステップS2に移行する。
【0143】
全てのPV20を抽出した場合(ステップS7でYES)、開始処理部431は、PV管理DB42内のLVデータ情報42aをバックアップ情報44aとしてバックアップDB44にコピーする(ステップS8)。
【0144】
IO制御部41は、ホスト装置5からのLVデータの書き込み要求を受領すると、ディスク装置3上でLVデータを更新する。更新制御部43cは、ディスク装置3上でLVデータが更新されたか否かを判定する(ステップS9)。LVデータが更新されていない場合(ステップS9でNO)、処理が終了する。
【0145】
LVデータが更新された場合(ステップS9でYES)、更新制御部43cは、更新されたLVデータをディスク装置3の待避領域31にコピーする(ステップS10)。
【0146】
また、更新制御部43cは、実施情報が付加されたLV30が更新された場合、LVデータ情報42aの当該更新されたLV30のエントリに更新情報(削除フラグ)を付加する(ステップS11)。そして、更新制御部43cは、アクセス部411による、更新されたLV30のバックエンドのPV20への書込完了を待ち合わせる(ステップS12)。
【0147】
PV20への書き込みが完了すると、DB制御部412は、PV管理DB42内の旧データのLV30を無効状態に設定し、新データのLV30を有効状態に設定する(ステップS13)。また、更新制御部43cは、待避領域31にコピーしたLVデータを削除し(ステップS14)、処理が終了する。
【0148】
〔1-5-2〕PV配置変更処理
図11を参照して、仮想テープシステム1におけるバックアップの開始処理後のPV配置変更処理の動作例を説明する。
【0149】
図11に例示するように、DB制御部412は、PV配置変更処理の実行トリガを検知する(ステップS21)。実行トリガとしては、例えば、1つ以上のPV20において、全LV30の数に対する、無効状態のLV30の数の割合(存在割合)が閾値以上になったこと、所定の実行周期が到来したこと、等が挙げられる。
【0150】
配置変更制御部43bは、処理対象のPV20のLVデータ情報42aから、未抽出の対象LV30を1つ抽出する(ステップS22)。なお、処理対象のPV20は、例えばPV20内のLV30に対する無効状態のLV30の割合が閾値以上であるPV20であってよい。
【0151】
配置変更制御部43bは、抽出した対象LV30の実施情報がKマークであるか否かを判定する(ステップS23)。対象LV30の実施情報がKマークである場合(ステップS23でYES)、配置変更制御部43bは、処理対象のPV20内のKマークの対象範囲のLV30をPV配置変更処理対象から除外し(ステップS24)、処理がステップS28に移行する。PV配置変更処理対象から除外されたLV30は、他のPV20への移動が行なわれない。
【0152】
対象LV30の実施情報がKマークではない場合(ステップS23でNO)、配置変更制御部43bは、抽出した対象LV30の実施情報がAマークであるか否かを判定する(ステップS25)。対象LV30の実施情報がAマークである場合(ステップS25でYES)、配置変更制御部43bは、例えばメモリ4bにおいて、「Aマーク実施フラグ」をオンに設定する。そして、配置変更制御部43bは、DB制御部412により、Aマークの対象LV30のPV配置変更処理を実行し(ステップS26)、処理がステップS28に移行する。
【0153】
対象LV30の実施情報がAマークではない場合(ステップS25でNO)、配置変更制御部43bは、DB制御部412により、図5に例示する通常のPV配置変更処理を実行し(ステップS27)、処理がステップS28に移行する。
【0154】
ステップS28では、配置変更制御部43bは、全ての対象LV30を抽出したか否かを判定する。全ての対象LV30を抽出していない場合(ステップS28でNO)、処理がステップS22に移行する。
【0155】
全ての対象LV30を抽出した場合(ステップS28でYES)、配置変更制御部43bは、「Aマーク実施フラグ」がオンか否かを判定する(ステップS29)。「Aマーク実施フラグ」がオンではない場合(ステップS29でNO)、処理が終了する。
【0156】
「Aマーク実施フラグ」がオンである場合(ステップS29でYES)、配置変更制御部43bは、バックアップ情報44aにおけるPV配置変更元及びPV配置変更先の情報を、現在のPV管理DB42の情報で書き換える。例えば、配置変更制御部43bは、現在のPV管理DB42におけるLVデータ情報42aの配置になるように、PV配置変更元のPV20のバックアップ情報44a内のLV30の情報を、PV配置変更先のPV20のバックアップ情報44aに移動する。
【0157】
そして、配置変更制御部43bは、「Aマーク実施フラグ」をオフに設定し(ステップS30)、処理が終了する。
【0158】
〔1-5-3〕バックアップデータの復元処理
図12を参照して、仮想テープシステム1におけるバックアップデータの復元処理の動作例を説明する。
【0159】
図12に例示するように、コマンド制御部43の復元処理部432は、ホスト装置5からバックアップデータの復元指示を受領する(ステップS31)。復元処理部432は、バックアップ情報44aを元のPV管理DB42に復元する(ステップS32)。
【0160】
復元処理部432は、PV管理DB42内の更新情報(削除フラグ)が付加されたLV30を無効状態に設定し(ステップS33)、PV管理DB42上に存在しない当該LV30をディスク装置3からも削除する(ステップS34)。
【0161】
アクセス部411は、ホスト装置5からLVデータの書込又は読出要求を受領したか否かを判定する(ステップS35)。LVデータの書込又は読出要求を受領していない場合(ステップS35でNO)、処理が終了する。
【0162】
LVデータの書込又は読出要求を受領した場合(ステップS35でYES)、アクセス部411は、ディスク装置3上には当該データが存在しないため、PV20から有効状態のLVデータをディスク装置3上に読み出し(ステップS36)、処理が終了する。
【0163】
〔1-6〕実施例
次に、図13図17を参照して、一実施形態に係る仮想テープシステム1の実施例を説明する。なお、以下では、参照する図面中の符号順に説明する。また、以下の説明では、参照する図面中のLVデータ情報42a又はPV20において網掛けで示す領域は、世代管理対象のLV30を表し、K又はAマークが付加されている。また、LV30、LVデータ情報42a又はPV20において太字で示す部分は、世代管理対象のLV30が更新されたことを表し、Dマークが付加されている。
【0164】
〔1-6-1〕PV配置変更処理が実行されない場合のバックアップ処理
まず、図13を参照して、PV配置変更処理が実行されない場合のバックアップ処理の実施例を説明する。
【0165】
(1)コマンド制御部43は、ホスト装置5からバックアップの開始指示を受領し、開始処理を開始する。
【0166】
(2)開始処理部431は、フロントエンドのディスク装置3上でPV管理DB42をバックアップDB44にコピー(バックアップ)する。
【0167】
(3)IO制御部41は、ホスト装置5から書込要求を受領する。以下、LV-1をLV-1′に更新する例を挙げる。アクセス部411は、ディスク装置3上でLV-1をLV-1′に更新する。また、DB制御部412は、LV-1をLVデータ情報42aにおいて無効状態に設定して、アクセス部411は、LV-1′をバックエンドのPV20に書き込む。
【0168】
更新制御部43cは、LV-1をディスク装置3の待避領域31に退避する。また、DB制御部412は、新たに書き込まれたLV-1′をLVデータ情報42aにおいて有効状態に設定する。さらに、更新制御部43cは、LVデータ情報42aに対して、バックアップの実施対象であるLV-1を更新したことを示すDマーク(削除フラグ)を付加する。そして、更新制御部43cは、アクセス部411によりPV20へのLV-1′の書き込みが完了すると、待避領域31にコピーしたLVデータを削除する。
【0169】
(4)復元処理部432は、ホスト装置5からバックアップデータの復元指示を受領し、復元処理を開始する。
【0170】
(5)復元処理部432は、バックアップしていたバックアップ情報44aで元のPV管理DB42を置き換える。これにより、PV管理DB42が退避時(バックアップ時点)の状態になり、LV-1が有効状態に戻る。
【0171】
(6)復元処理部432は、PV管理DB42内のLV30のうち、Dマークが付加されているLVデータ(LV-1′)を無効状態に設定し、ディスク装置3上から削除する。
【0172】
(7)アクセス部411は、ホスト装置5からLV-1のLVデータの書込又は読出要求を受領すると、ディスク装置3上にLV-1が存在しないため、PV20から有効状態のLV-1をディスク装置3に読み出す。これにより、ディスク装置3上のデータも退避時の状態に戻すことができる。
【0173】
〔1-6-2〕PV配置変更処理が実行される場合のバックアップ処理(第1処理)
次に、図14及び図15を参照して、PV配置変更処理が実行される場合のバックアップ処理の実施例を説明する。図14及び図15では、第1処理として実施情報にKマークが付加される場合を例に挙げる。
【0174】
(1)図14に示すように、コマンド制御部43は、ホスト装置5からバックアップの開始指示を受領し、開始処理を開始する。
【0175】
(2)設定部43aは、フロントエンドのディスク装置3上で、開始指示の受領時点のPV管理DB42のLVデータ情報42aに世代管理対象であることを表すKマークを付加する。Kマークの付加は、処理対象のPV20内の全LV30の数に対する無効状態のLV30の数の存在割合が所定の閾値未満である場合に行なわれる。
【0176】
(3)開始処理部431は、フロントエンドのディスク装置3上で、開始指示の受領時点のPV管理DB42をバックアップDB44にコピー(バックアップ)する。
【0177】
(4)IO制御部41は、ホスト装置5から書込要求を受領する。アクセス部411は、ディスク装置3上でLV-1をLV-1′に更新する。また、DB制御部412は、LV-1をLVデータ情報42aにおいて無効状態に設定して、アクセス部411は、LV-1′をバックエンドのPV20に書き込む。
【0178】
更新制御部43cは、LV-1をディスク装置3の待避領域31に退避する。また、DB制御部412は、新たに書き込まれたLV-1′をLVデータ情報42aにおいて有効状態に設定する。さらに、更新制御部43cは、LVデータ情報42aに対して、バックアップの実施対象であるLV-1を更新したことを示すDマーク(削除フラグ)を付加する。そして、更新制御部43cは、アクセス部411によりPV20へのLV-1′の書き込みが完了すると、待避領域31にコピーしたLVデータを削除する。
【0179】
(5)DB制御部412によりPV配置変更処理が実行されると、配置変更制御部43bは、キープ対象のLV30をPV配置変更の対象外とし、DB制御部412により、キープ対象以外の有効状態のLV30を他のPV20に移動する。
【0180】
(6)図15に示すように、PV配置変更処理の実行後、新たなLVデータの書き込みが実行される場合、アクセス部411は、テープライブラリ2の未使用領域の先頭から使用する。図15の例では、アクセス部411は、LV-9をPV-Aに、LV-10をPV-Cにそれぞれ書き込む。
【0181】
(7)復元処理部432は、ホスト装置5からバックアップデータの復元指示を受領し、復元処理を開始する。
【0182】
(8)復元処理部432は、バックアップしていたバックアップ情報44aで元のPV管理DB42を置き換える。これにより、PV管理DB42が退避時(バックアップ時点)の状態になり、LV-1が有効状態に戻る。
【0183】
(9)復元処理部432は、PV管理DB42内のLV30のうち、Dマークが付加されているLVデータ(LV-1′)を無効状態に設定し、ディスク装置3上から削除する。
【0184】
(10)アクセス部411は、ホスト装置5からLV-1のLVデータの書込又は読出要求を受領すると、ディスク装置3上にLV-1が存在しないため、PV20から有効状態のLV-1をディスク装置3に読み出す。これにより、ディスク装置3上のデータも退避時の状態に戻すことができる。
【0185】
〔1-6-4〕PV配置変更処理が実行される場合のバックアップ処理(第2処理)
次に、図16及び図17を参照して、PV配置変更処理が実行される場合のバックアップ処理の実施例を説明する。図16及び図17では、第2処理として実施情報にAマークが付加される場合を例に挙げる。
【0186】
(1)図16に示すように、コマンド制御部43は、ホスト装置5からバックアップの開始指示を受領し、開始処理を開始する。
【0187】
(2)設定部43aは、フロントエンドのディスク装置3上で、開始指示の受領時点のPV管理DB42のLVデータ情報42aに世代管理対象であることを表すAマークを付加する。Aマークの付加は、処理対象のPV20内の全LV30の数に対する無効状態のLV30の数の存在割合が所定の閾値以上である場合に行なわれる。
【0188】
(3)開始処理部431は、フロントエンドのディスク装置3上で、開始指示の受領時点のPV管理DB42をバックアップDB44にコピー(バックアップ)する。
【0189】
(4)IO制御部41は、ホスト装置5から書込要求を受領する。アクセス部411は、ディスク装置3上でLV-1をLV-1′に更新する。また、DB制御部412は、LV-1をLVデータ情報42aにおいて無効状態に設定して、アクセス部411は、LV-1′をバックエンドのPV20に書き込む。
【0190】
更新制御部43cは、LV-1をディスク装置3の待避領域31に退避する。また、DB制御部412は、新たに書き込まれたLV-1′をLVデータ情報42aにおいて有効状態に設定する。さらに、更新制御部43cは、LVデータ情報42aに対して、バックアップの実施対象であるLV-1を更新したことを示すDマーク(削除フラグ)を付加する。そして、更新制御部43cは、アクセス部411によりPV20へのLV-1′の書き込みが完了すると、待避領域31にコピーしたLVデータを削除する。
【0191】
(5)DB制御部412によりPV配置変更処理が実行されると、配置変更制御部43bは、DB制御部412により、アレンジメント対象のLV30(無効状態のLV30を含む)と、それ以外の有効状態のLV30とを、他のPV20に移動する。
【0192】
(6)配置変更制御部43bは、アレンジメント対象のLV30が他のPV20に移動したことをバックアップ情報44aに反映させる。図16の例では、配置変更制御部43bは、PV-A及びPV-Bのバックアップ情報44aを、PV-Cのバックアップ情報44aにコピーし、PV-A及びPV-Bのバックアップ情報44aを削除することで、バックアップ情報44aを更新する。
【0193】
(7)図17に示すように、PV配置変更処理の実行後、PV配置変更処理における移動元のPV-Aに新たなLVデータの書き込みが実行可能となる。図17の例では、アクセス部411は、LV-9をPV-Aに、LV-10をPV-Cにそれぞれ書き込む。
【0194】
(8)復元処理部432は、ホスト装置5からバックアップデータの復元指示を受領し、復元処理を開始する。
【0195】
(9)復元処理部432は、バックアップしていたバックアップ情報44aで元のPV管理DB42を置き換える。これにより、PV管理DB42が退避時(バックアップ時点)の状態になり、LV-1が有効状態に戻る。
【0196】
(10)復元処理部432は、PV管理DB42内のLV30のうち、Dマークが付加されているLVデータ(LV-1′)を無効状態に設定し、ディスク装置3上から削除する。
【0197】
(11)アクセス部411は、ホスト装置5からLV-1のLVデータの書込又は読出要求を受領すると、ディスク装置3上にLV-1が存在しないため、PV20から有効状態のLV-1をディスク装置3に読み出す。これにより、ディスク装置3上のデータも退避時の状態に戻すことができる。
【0198】
〔2〕その他
上述した一実施形態に係る技術は、以下のように変形、変更して実施することができる。
【0199】
例えば、図3及び図6に示す制御サーバ4の各機能ブロックは、それぞれ任意の組み合わせで併合してもよく、分割してもよい。
【0200】
また、一実施形態に係る手法において、Kマークが付加されたLV30と、Aマークが付加されたLV30とが、1つのPV20に混在してもよい。一例として、PV配置変更処理により、Kマークが付加されたLV30が記録されたPV20に、Aマークが付加されたLV30が配置される場合がある。この場合においても、バックアップ情報44aにはKマークが付加されたLV30に続いて、Aマークが付加されたLV30の情報が配置変更制御部43bにより設定されるため、復元処理においてバックアップデータを適切に復元することができる。
【0201】
〔3〕付記
以上の実施形態に関し、更に以下の付記を開示する。
【0202】
(付記1)
記憶装置が記憶する複数のデータのそれぞれの格納先の記録媒体に関する管理情報を、複数の前記記録媒体のそれぞれについて記憶する第1記憶領域と、
前記記録媒体が記録するデータが更新される際に、前記第1記憶領域において、更新前のデータを無効状態として管理し、前記記録媒体の空き記憶領域に書き込まれた更新後のデータを有効状態として管理する管理部と、
前記複数の記録媒体のバックアップの開始指示の受信に応じて、複数の前記管理情報に対して、前記複数の記録媒体に記録された少なくとも有効状態のデータのそれぞれにバックアップの実施対象であることを示す実施情報を設定する設定部と、
前記実施情報が設定された前記複数の管理情報を第2記憶領域に複製する複製部と、
第1管理情報において実施情報が設定された有効状態の第1データであって前記記憶装置が記憶する前記第1データを、第2データに更新する更新指示の受信に応じて、前記管理部により第2管理情報において有効状態として管理される前記第2データに更新の発生を示す更新情報を設定する更新部と、
復元指示の受信に応じて、前記第2記憶領域に格納された複数の複製管理情報により、前記第1記憶領域に格納された前記複数の管理情報を更新し、前記更新情報が設定された前記第2データを、前記第2管理情報において無効状態に設定するとともに、前記記憶装置から削除する復元部と、
を備える、ストレージ制御装置。
【0203】
(付記2)
配置変更元の記録媒体に記録された有効状態のデータを、配置変更先の記録媒体に移動し、前記配置変更元の記録媒体を先頭の記憶領域から使用可能に設定する配置変更処理を実行する処理部、を備え、
前記設定部は、前記複数の記録媒体のそれぞれについて、前記記録媒体に記録された全データ数に対する無効状態のデータ数の割合に応じて、前記実施情報として第1実施情報及び第2実施情報のいずれかを設定し、
前記処理部は、前記配置変更元の記録媒体の管理情報に設定された前記実施情報に応じて、前記配置変更元の記録媒体に対する前記配置変更処理を制御する、
付記1に記載のストレージ制御装置。
【0204】
(付記3)
前記設定部は、前記複数の記録媒体のそれぞれについて、前記記録媒体における前記割合が所定の閾値未満の場合、前記記録媒体の管理情報の先頭から最終の有効状態のデータまでのデータのそれぞれに、前記第1実施情報を設定し、
前記処理部は、前記配置変更元の記録媒体の管理情報において前記第1実施情報が設定されているデータを、前記配置変更処理の対象データから除外する、
付記2に記載のストレージ制御装置。
【0205】
(付記4)
前記設定部は、前記複数の記録媒体のそれぞれについて、前記記録媒体における前記割合が所定の閾値以上の場合、前記記録媒体の管理情報の有効状態のデータのそれぞれに、前記第2実施情報を設定し、
前記処理部は、前記配置変更元の記録媒体の管理情報において前記第2実施情報が設定されているデータを、配置変更先の記録媒体に移動する、
付記2又は付記3に記載のストレージ制御装置。
【0206】
(付記5)
前記処理部は、前記第2実施情報が設定されているデータの前記配置変更元及び前記配置変更先のそれぞれの管理情報に基づいて、前記第2記憶領域に格納された前記配置変更元及び前記配置変更先のそれぞれに対応する複製管理情報を更新する、
付記4に記載のストレージ制御装置。
【0207】
(付記6)
前記復元指示の受信に応じた前記複数の管理情報の更新後に、前記第1データに対するアクセス指示の受信に応じて、前記第1管理情報に基づき、前記第1データを記録する記録媒体から前記第1データを前記記憶装置に読み出すアクセス部、を備える、
付記1~付記5のいずれか1項に記載のストレージ制御装置。
【0208】
(付記7)
前記更新部は、前記第1データが前記第2データに更新される際に、前記第1データを前記記憶装置の待避領域に格納し、前記第2管理情報において前記第2データに前記更新情報を設定し、
前記管理部は、前記記憶装置に格納された前記第2データが格納先の記録媒体に書き込まれた場合、前記第1管理情報において前記第1データを無効状態に設定するとともに、前記第2管理情報において前記第2データを有効状態に設定し、
前記更新部は、前記待避領域に格納した前記第1データを削除する、
付記1~付記6のいずれか1項に記載のストレージ制御装置。
【0209】
(付記8)
記憶装置と、
前記記憶装置が記憶する前記複数のデータのそれぞれの格納先の記録媒体を収容するストレージ装置と、
前記記憶装置及び前記ストレージ装置を制御するストレージ制御装置と、を備え、
前記ストレージ制御装置は、
前記複数の記録媒体に関する管理情報を、複数の前記記録媒体のそれぞれについて記憶する第1記憶領域と、
前記記録媒体が記録するデータが更新される際に、前記第1記憶領域において、更新前のデータを無効状態として管理し、前記記録媒体の空き記憶領域に書き込まれた更新後のデータを有効状態として管理する管理部と、
前記複数の記録媒体のバックアップの開始指示の受信に応じて、複数の前記管理情報に対して、前記複数の記録媒体に記録された少なくとも有効状態のデータのそれぞれにバックアップの実施対象であることを示す実施情報を設定する設定部と、
前記実施情報が設定された前記複数の管理情報を第2記憶領域に複製する複製部と、
第1管理情報において実施情報が設定された有効状態の第1データであって前記記憶装置が記憶する前記第1データを、第2データに更新する更新指示の受信に応じて、前記管理部により第2管理情報において有効状態として管理される前記第2データに更新の発生を示す更新情報を設定する更新部と、
復元指示の受信に応じて、前記第2記憶領域に格納された複数の複製管理情報により、前記第1記憶領域に格納された前記複数の管理情報を更新し、前記更新情報が設定された前記第2データを、前記第2管理情報において無効状態に設定するとともに、前記記憶装置から削除する復元部と、
を備える、ストレージシステム。
【0210】
(付記9)
前記ストレージ制御装置は、配置変更元の記録媒体に記録された有効状態のデータを、配置変更先の記録媒体に移動し、前記配置変更元の記録媒体を先頭の記憶領域から使用可能に設定する配置変更処理を実行する処理部、を備え、
前記設定部は、前記複数の記録媒体のそれぞれについて、前記記録媒体に記録された全データ数に対する無効状態のデータ数の割合に応じて、前記実施情報として第1実施情報及び第2実施情報のいずれかを設定し、
前記処理部は、前記配置変更元の記録媒体の管理情報に設定された前記実施情報に応じて、前記配置変更元の記録媒体に対する前記配置変更処理を制御する、
付記8に記載のストレージシステム。
【0211】
(付記10)
前記設定部は、前記複数の記録媒体のそれぞれについて、前記記録媒体における前記割合が所定の閾値未満の場合、前記記録媒体の管理情報の先頭から最終の有効状態のデータまでのデータのそれぞれに、前記第1実施情報を設定し、
前記処理部は、前記配置変更元の記録媒体の管理情報において前記第1実施情報が設定されているデータを、前記配置変更処理の対象データから除外する、
付記9に記載のストレージシステム。
【0212】
(付記11)
前記設定部は、前記複数の記録媒体のそれぞれについて、前記記録媒体における前記割合が所定の閾値以上の場合、前記記録媒体の管理情報の有効状態のデータのそれぞれに、前記第2実施情報を設定し、
前記処理部は、前記配置変更元の記録媒体の管理情報において前記第2実施情報が設定されているデータを、配置変更先の記録媒体に移動する、
付記9又は付記10に記載のストレージシステム。
【0213】
(付記12)
前記処理部は、前記第2実施情報が設定されているデータの前記配置変更元及び前記配置変更先のそれぞれの管理情報に基づいて、前記第2記憶領域に格納された前記配置変更元及び前記配置変更先のそれぞれに対応する複製管理情報を更新する、
付記11に記載のストレージシステム。
【0214】
(付記13)
前記ストレージ制御装置は、前記復元指示の受信に応じた前記複数の管理情報の更新後に、前記第1データに対するアクセス指示の受信に応じて、前記第1管理情報に基づき、前記第1データを記録する記録媒体から前記第1データを前記記憶装置に読み出すアクセス部、を備える、
付記8~付記12のいずれか1項に記載のストレージシステム。
【0215】
(付記14)
記憶装置が記憶する複数のデータのそれぞれの格納先の記録媒体に関する管理情報を、複数の前記記録媒体のそれぞれについて記憶する第1記憶領域において、前記記録媒体が記録するデータが更新される際に、更新前のデータを無効状態として管理し、前記記録媒体の空き記憶領域に書き込まれた更新後のデータを有効状態として管理し、
前記複数の記録媒体のバックアップの開始指示の受信に応じて、複数の前記管理情報に対して、前記複数の記録媒体に記録された少なくとも有効状態のデータのそれぞれにバックアップの実施対象であることを示す実施情報を設定し、
前記実施情報が設定された前記複数の管理情報を第2記憶領域に複製し、
第1管理情報において実施情報が設定された有効状態の第1データであって前記記憶装置が記憶する前記第1データを、第2データに更新する更新指示の受信に応じて、第2管理情報において有効状態として管理される前記第2データに更新の発生を示す更新情報を設定し、
復元指示の受信に応じて、前記第2記憶領域に格納された複数の複製管理情報により、前記第1記憶領域に格納された前記複数の管理情報を更新し、前記更新情報が設定された前記第2データを、前記第2管理情報において無効状態に設定するとともに、前記記憶装置から削除する、
処理をコンピュータに実行させる、ストレージ制御プログラム。
【0216】
(付記15)
配置変更元の記録媒体に記録された有効状態のデータを、配置変更先の記録媒体に移動し、前記配置変更元の記録媒体を先頭の記憶領域から使用可能に設定する配置変更処理を実行させ、
前記実施情報の設定は、前記複数の記録媒体のそれぞれについて、前記記録媒体に記録された全データ数に対する無効状態のデータ数の割合に応じて、前記実施情報として第1実施情報及び第2実施情報のいずれかを設定し、
前記配置変更処理は、前記配置変更元の記録媒体の管理情報に設定された前記実施情報に応じて、前記配置変更元の記録媒体に対する前記配置変更処理を制御する、
処理を前記コンピュータに実行させる、付記14に記載のストレージ制御プログラム。
【0217】
(付記16)
前記実施情報の設定は、前記複数の記録媒体のそれぞれについて、前記記録媒体における前記割合が所定の閾値未満の場合、前記記録媒体の管理情報の先頭から最終の有効状態のデータまでのデータのそれぞれに、前記第1実施情報を設定し、
前記配置変更処理は、前記配置変更元の記録媒体の管理情報において前記第1実施情報が設定されているデータを、前記配置変更処理の対象データから除外する、
付記15に記載のストレージ制御プログラム。
【0218】
(付記17)
前記実施情報の設定は、前記複数の記録媒体のそれぞれについて、前記記録媒体における前記割合が所定の閾値以上の場合、前記記録媒体の管理情報の有効状態のデータのそれぞれに、前記第2実施情報を設定し、
前記配置変更処理は、前記配置変更元の記録媒体の管理情報において前記第2実施情報が設定されているデータを、配置変更先の記録媒体に移動する、
付記15又は付記16に記載のストレージ制御プログラム。
【0219】
(付記18)
前記配置変更処理は、前記第2実施情報が設定されているデータの前記配置変更元及び前記配置変更先のそれぞれの管理情報に基づいて、前記第2記憶領域に格納された前記配置変更元及び前記配置変更先のそれぞれに対応する複製管理情報を更新する、
付記17に記載のストレージ制御プログラム。
【0220】
(付記19)
前記復元指示の受信に応じた前記複数の管理情報の更新後に、前記第1データに対するアクセス指示の受信に応じて、前記第1管理情報に基づき、前記第1データを記録する記録媒体から前記第1データを前記記憶装置に読み出す、
処理を前記コンピュータに実行させる、付記14~付記18のいずれか1項に記載のストレージ制御プログラム。
【0221】
(付記20)
前記第1データが前記第2データに更新される際に、前記第1データを前記記憶装置の待避領域に格納し、前記第2管理情報において前記第2データに前記更新情報を設定し、
前記記憶装置に格納された前記第2データが格納先の記録媒体に書き込まれた場合、前記第1管理情報において前記第1データを無効状態に設定するとともに、前記第2管理情報において前記第2データを有効状態に設定し、
前記待避領域に格納した前記第1データを削除する、
処理を前記コンピュータに実行させる、付記14~付記19のいずれか1項に記載のストレージ制御プログラム。
【符号の説明】
【0222】
1 仮想テープシステム
2 テープライブラリ
20 PV
3 ディスク装置
30 LV
31 待避領域
4 制御サーバ
40 仮想ドライブ
41 IO制御部
411 アクセス部
412 DB制御部
42 PV管理DB
42a LVデータ情報
43 コマンド制御部
431 開始処理部
432 復元処理部
43a 設定部
43b 配置変更制御部
43c 更新制御部
44 バックアップDB
44a バックアップ情報
5 ホスト装置
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17