(57)【特許請求の範囲】
【請求項１】
複数の記憶装置と、磁気テープに対してアクセス可能な磁気テープドライブとを備え、複数の記憶装置の少なくとも一部の記憶領域が割り当てられた複数の論理ボリュームを管理し、前記論理ボリュームには、ホスト装置に利用されるオリジナルデータを記憶するための第１の論理ボリュームと、前記第１の論理ボリュームのオリジナルデータの複製のデータを記憶するための第２の論理ボリュームとが含まれ、前記第２の論理ボリュームの前記データを前記磁気テープに退避させ、当該退避させたデータを前記論理ボリュームに回復させるストレージ装置であって、
前記第１の論理ボリュームを示す第１識別情報と、前記第２の論理ボリュームを示す第２識別情報とを対応付けて記憶する論理ボリューム管理テーブルと、
回復対象のデータを特定するためのデータ特定情報を受け付けるデータ特定情報受付部と、
前記データ特定情報により特定されるデータの退避元である前記第２の論理ボリュームの前記第２識別情報を特定する特定部と、
特定した前記第２識別情報に対応付けられた前記第１識別情報を前記論理ボリューム管理テーブルから取得する第１識別情報取得部と、
前記磁気テープドライブにより、前記回復対象のデータを格納した前記磁気テープから、前記退避されたデータを読み出させる読出制御部と、
前記取得した第１識別情報が示す前記第１の論理ボリュームに、前記磁気テープから読み出した前記データを格納させる第１回復制御部と
を備えるストレージ装置。
【請求項２】
前記磁気テープから読み出したデータを、前記第２識別情報の前記第２の論理ボリュームにも格納させる第２回復制御部を更に備える
請求項１に記載のストレージ装置。
【請求項３】
前記磁気テープから読み出したデータを一時的に記憶するキャッシュメモリを更に備え、
前記第１回復制御部及び前記第２回復制御部は、前記キャッシュメモリからデータを読み出して、前記第１の論理ボリューム及び前記第２の論理ボリュームに格納させる
請求項２に記載のストレージ装置。
【請求項４】
前記データの回復対象とする論理ボリュームの種類の指定を受け付ける種類指定受付部を更に備え、
前記第１回復制御部は、前記種類指定受付部が、回復対象を前記第１の論理ボリュームのみとする指定、又は、前記第１の論理ボリューム及び前記第２の論理ボリュームとする指定を受け付けた場合に、前記第１の論理ボリュームへ前記データを格納させる
請求項１乃至請求項３のいずれか一項に記載のストレージ装置。
【請求項５】
前記データ特定情報受付部は、前記データ特定情報として、前記データを格納する少なくとも１以上の前記磁気テープから成る格納単位を示す格納単位識別情報を受け付け、
複数の磁気テープを識別可能に格納する磁気テープライブラリ部と、
前記格納単位識別情報に対応する磁気テープを前記磁気テープライブラリ部から取り出して前記磁気テープドライブに搬送する搬送機構部とを更に備え、
前記読出制御部は、前記磁気テープドライブに搬送された前記磁気テープからデータを読み出す
請求項１乃至請求項４のいずれか一項に記載のストレージ装置。
【請求項６】
１以上の磁気テープから成るデータの格納単位を示す格納単位識別情報と、前記格納単位の前記磁気テープに格納されているデータの退避元の第２の論理ボリュームの第２識別情報とを対応付けて格納する格納単位管理テーブルを更に備え、
前記特定部は、前記格納単位管理テーブルから前記格納単位識別情報に対応する前記第２識別情報を取得することにより第２識別情報を特定する
請求項５に記載のストレージ装置。
【請求項７】
１以上の磁気テープから成るデータの格納単位を示す格納単位識別情報と、前記格納単位の磁気テープに格納されているデータの退避元の第２の論理ボリュームの第２識別情報とを対応付けて格納する格納単位管理テーブルを更に備え、
格納単位識別情報を検索する条件として、データの退避元の第２の論理ボリュームの第２識別情報の指定を受け付ける検索条件受付部と、
前記格納単位管理テーブルから前記検索条件受付部により受け付けられた前記第２識別情報に対応付けられている前記格納単位識別情報を検索する検索部と、
検索された前記格納単位識別情報の検索結果を送信する検索結果送信部と
を有する請求項１乃至請求項６のいずれか一項に記載のストレージ装置。
【請求項８】
前記格納単位に対応付けられたキーワードと、前記格納単位の磁気テープに格納されているデータの退避元の第２の論理ボリュームの第２識別情報とを対応付けて格納する格納単位管理テーブルを更に備え、
前記データ特定情報受付部は、前記データ特定情報として、前記格納単位に対応付けられたキーワードを受け付け、
前記特定部は、前記格納単位管理テーブルから前記キーワードに対応する前記第２識別情報を取得することにより第２識別情報を特定する
請求項１乃至請求項７のいずれか一項に記載のストレージ装置。
【請求項９】
複数の記憶装置の少なくとも一部の記憶領域が割り当てられた複数の論理ボリュームを管理し、前記論理ボリュームには、前記ホスト装置に利用されるオリジナルデータを記憶するための第１の論理ボリュームと、前記第１の論理ボリュームのオリジナルデータの複製のデータを記憶するための第２の論理ボリュームとが含まれ、前記第２の論理ボリュームの前記データを前記磁気テープに退避させ、当該退避させたデータを前記論理ボリュームに回復させるストレージ装置によるデータ回復方法であって、
回復対象のデータを特定するためのデータ特定情報を受け付ける受付ステップと、
前記データ特定情報により特定されるデータの退避元である前記第２の論理ボリュームの前記第２識別情報を特定する特定ステップと、
前記第１の論理ボリュームを示す第１識別情報と、前記第２の論理ボリュームを示す第２識別情報とを対応付けて記憶する論理ボリューム管理テーブルから、特定した前記第２識別情報に対応付けられた前記第１識別情報を取得する第１識別情報取得ステップと、
前記磁気テープドライブにより、前記回復対象のデータを格納した前記磁気テープから、前記退避されたデータを読み出させる読出制御ステップと、
前記取得した第１識別情報が示す前記第１の論理ボリュームに、前記磁気テープから読み出した前記データを格納させる第１回復制御ステップと
を備えるデータ回復方法。
【請求項１０】
ホスト装置と、複数の記憶装置の少なくとも一部の記憶領域が割り当てられた複数の論理ボリュームを管理し、前記論理ボリュームには、前記ホスト装置に利用されるオリジナルデータを記憶するための第１の論理ボリュームと、前記第１の論理ボリュームのオリジナルデータの複製のデータを記憶するための第２の論理ボリュームとが含まれ、前記第２の論理ボリュームの前記データを前記磁気テープに退避させ、当該退避させたデータを前記論理ボリュームに回復させるストレージ装置とを備える計算機システムであって、
前記ホスト装置は、
前記ストレージ装置に接続される第１インタフェースと、前記第１インタフェースに接続される第１プロセッサとを備え、
前記第１プロセッサは、前記ストレージ装置に回復対象のデータを含む磁気テープを含む格納単位を特定する格納単位識別情報を送信し、
前記ストレージ装置は、
前記ホスト装置に接続される第２インタフェースと、前記第２インタフェースに接続される第２プロセッサと、複数の記憶装置と、メモリと、複数の磁気テープを格納する磁気テープライブラリ部と、前記磁気テープに対するデータの入出力を行う磁気テープドライブと、前記磁気テープライブラリ部から前記磁気テープドライブに前記磁気テープを搬送する搬送機構部とを備え、
前記メモリは、前記第１の論理ボリュームを示す第１識別情報と、前記第２の論理ボリュームを示す第２識別情報とを対応付けて記憶する論理ボリューム管理テーブルと、１以上の前記磁気テープから成るデータの格納単位を示す格納単位識別情報と、前記格納単位の磁気テープに格納されているデータの退避元の第２の論理ボリュームの第２識別情報とを対応付けて格納する格納単位管理テーブルとを記憶し、
前記第２プロセッサは、前記第２インタフェースを介して、前記ホスト装置から前記格納単位識別情報を受け付け、前記格納単位識別情報により特定される格納単位のデータの退避元である前記第２の論理ボリュームの前記第２識別情報を前記格納単位管理テーブルにより特定し、特定した前記第２識別情報に対応付けられた前記第１識別情報を前記論理ボリューム管理テーブルから取得し、前記搬送機構部により前記磁気テープライブラリ部から前記格納単位の磁気テープを前記磁気テープドライブに搬送させ、前記磁気テープドライブにより、前記磁気テープから前記回復対象のデータを読み出させ、前記取得した第１識別情報が示す前記第１の論理ボリュームに、前記磁気テープから読み出した前記データを格納させる
計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の記憶装置と、磁気テープへのアクセスが可能な磁気テープドライブとを備えるストレージ装置等に関し、特に、磁気テープに退避されたデータによりデータ回復（リストア）を行う技術に関する。
【背景技術】
【０００２】
ストレージシステムにおいては、データの記憶の信頼性を向上させるために、データを複数の論理ボリュームに多重化(例えば、二重化)させて記憶しておき、いずれかの論理ボリュームに障害等が発生した場合には、他の論理ボリュームのデータを利用してデータ回復が行われている。
【０００３】
データの二重化を利用した技術としては、二重化した一方の系に障害が発生した場合に、更新データの履歴に基づいて高速に回復させる技術が開示されている（例えば、特許文献１参照）。また、データの二重化を行う際に、上位装置における処理負荷を軽減する技術も知られている（例えば、特許文献２参照）。また、データの二重化を行う際にターゲットとなっていたストレージから、ソースとなっていたストレージに対して高速にリストアする技術も知られている（例えば、特許文献３）。
【０００４】
さらに、二重化させたデータを磁気テープに退避させることにより、より確実且つ低コストでデータの記憶の信頼性を向上させるバックアップサーバシステムが知られている。
【０００５】
図１は、従来例に係るバックアップサーバシステムを説明する図である。
【０００６】
バックアップサーバシステム１００では、業務サーバ１０１が業務で使用するデータをディスクアレイ装置１０２のＰ−Ｖｏｌ（Primary Volume）１０５に格納し、ディスクアレイ装置１０２では、Ｐ−Ｖｏｌ１０５に書き込まれたデータが、所定のタイミングでＳ−Ｖｏｌ（Secondary Volume）１０６に二重化される。その後、バックアップサーバ１０３がＳ−Ｖｏｌ１０６のデータをテープライブラリ装置１０４のテープ１０７にバックアップさせる。そして、データ回復を行う際には、バックアップサーバ１０３がテープライブラリ装置１０４によりテープ１０７からデータを読み出させ、当該データをＳ−Ｖｏｌ１０６に格納させる。これにより、Ｓ−Ｖｏｌ１０６のデータを回復させることができる。この後、Ｓ−Ｖｏｌ１０６からＰ−Ｖｏｌ１０５へのリバースコピーを開始することにより、低負荷業務であれば、業務サーバ１０１が、Ｐ−Ｖｏｌ１０５を利用した業務を再開できる。一方、高負荷業務の場合には、Ｓ−Ｖｏｌ１０６からＰ−Ｖｏｌ１０５へのリバースコピーにより、ホストアクセス性能が低下する為、リバースコピーが完了するまで、業務は再開できない。
【０００７】
【特許文献１】特開２００７−８６９７２号公報
【特許文献２】特開２００５−１９６４９０号公報
【特許文献３】特開２００５−３３９５５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上記したバックアップサーバシステムの技術によると、バックアップを取ったＳ−Ｖｏｌ１０６を回復させ、その後、Ｐ−Ｖｏｌ１０５へのリバースコピーを開始することにより、業務再開を行うことができる。
【０００９】
しかしながら、上記したＳ−Ｖｏｌ１０６を回復させた直後の業務再開では、Ｐ−Ｖｏｌ１０５に完全にデータが回復されていないので、Ｐ−Ｖｏｌ１０５の未コピー領域へのリードアクセスがあった場合には、Ｓ−Ｖｏｌ１０６からのコピー後にしかホスト装置に応答することができない。また、Ｐ−Ｖｏｌ１０５へのライトアクセスでも、ＲＡＩＤ構成のパリティ生成するために必要なデータをＳ−Ｖｏｌ１０６からコピーする必要がある。このため、ホストアクセスの性能が更に低くなってしまう。
【００１０】
このようなホストアクセスの性能低下を防止するために、テープから直接Ｐ−Ｖｏｌ１０５へリストアすることが考えられる。
【００１１】
この場合には、ユーザが業務サーバ１０１からＰ−Ｖｏｌ１０５をアンマウントし、バックアップサーバ１０３にＰ−Ｖｏｌ１０５をマウントし、ユーザがバックアップサーバ１０３によりマウントしたＰ−Ｖｏｌ１０５に対応するＳ−Ｖｏｌ１０６のバックアップデータを格納したテープ１０７を指定するとともに、リストア先とするＰ−Ｖｏｌを指示して、Ｐ−Ｖｏｌ１０５へのリストアを実行させる。その後、ユーザがバックアップサーバ１０３からＰ−Ｖｏｌ１０５をアンマウントし、業務サーバ１０１にＰ−Ｖｏｌ１０５をマウントする。これにより、低負荷業務であれば、業務を再開することができる。なお、この場合にあっては、業務サーバ１０１からのリード及びライトアクセスにおいて、Ｓ−Ｖｏｌ１０６へのリードアクセスを行う必要がないので、Ｓ−Ｖｏｌ１０６へのアクセスによるホストアクセスの性能低下がおこらない。
【００１２】
この後、Ｐ−Ｖｏｌ１０５からＳ−Ｖｏｌ１０６へのコピーを行うことにより、コピー完了後には、高負荷業務であっても支障なく業務を行うことができるようになる。また、Ｐ−Ｖｏｌ１０５へのリストア完了後、高負荷業務を直ちに再開し、その後、夜間又は休日等の低負荷時間帯にＰ−Ｖｏｌ１０５からＳ−Ｖｏｌ１０６へのコピーを行う運用も可能である。
【００１３】
しかしながら、Ｐ−Ｖｏｌ１０５へのリストアを行う場合には、上述のようにユーザが操作を行わなければならず、手間がかかるという問題がある。また、テープからのデータのリストア先として、データの退避元のＳ−Ｖｏｌ１０６ではなく、Ｐ−Ｖｏｌ１０５を指定する必要があり、指定に間違いが発生するおそれがある。しかも、ユーザが通常意識しているのは、ＯＳのファイルシステムによる論理的なボリューム名称であるのに対し、本操作では、ディスクアレイ装置のＬＵを意識しなければならない。また、ディスクアレイ装置１０２等についての詳しい知識を持っていないユーザであれば、Ｓ−Ｖｏｌに対応するＰ−Ｖｏｌ１０５を把握することが困難であるという問題もある。
【００１４】
そこで、本発明は、上記課題に鑑みなされたものであり、その目的は、容易且つ確実にオリジナルデータを管理する論理ボリューム（Ｐ−Ｖｏｌ）のデータを回復することのできる技術を提供することにある。
【課題を解決するための手段】
【００１５】
上記課題を解決するために、本発明の第１の観点に従うストレージ装置は、複数の記憶装置と、磁気テープに対してアクセス可能な磁気テープドライブとを備え、複数の記憶装置の少なくとも一部の記憶領域が割り当てられた複数の論理ボリュームを管理し、前記論理ボリュームには、ホスト装置に利用されるオリジナルデータを記憶するための第１の論理ボリュームと、前記第１の論理ボリュームのオリジナルデータの複製のデータを記憶するための第２の論理ボリュームとが含まれ、前記第２の論理ボリュームの前記データを前記磁気テープに退避させ、当該退避させたデータを前記論理ボリュームに回復させるストレージ装置であって、前記第１の論理ボリュームを示す第１識別情報と、前記第２の論理ボリュームを示す第２識別情報とを対応付けて記憶する論理ボリューム管理テーブルと、回復対象のデータを特定するためのデータ特定情報を受け付けるデータ特定情報受付部と、前記データ特定情報により特定されるデータの退避元である前記第２の論理ボリュームの前記第２識別情報を特定する特定部と、特定した前記第２識別情報に対応付けられた前記第１識別情報を前記論理ボリューム管理テーブルから取得する第１識別情報取得部と、前記磁気テープドライブにより、前記回復対象のデータを格納した前記磁気テープから、前記退避されたデータを読み出させる読出制御部と、前記取得した第１識別情報が示す前記第１の論理ボリュームに、前記磁気テープから読み出した前記データを格納させる第１回復制御部とを備える。
【発明を実施するための最良の形態】
【００１６】
本発明の実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１７】
図２は、本発明の第１実施形態に係る計算機システムの概略構成を示す図である。
【００１８】
計算機システム１は、ホスト装置の一例としての業務サーバ２と、ストレージ装置の一例としてのＴＭＳ（Tape attached Modular Storage）装置４とを有している。業務サーバ２とＴＭＳ装置４とは、データネットワーク３、例えば、ＳＡＮ（Storage Area Network）を介して接続されている。ＳＡＮでは、例えば、ファイバチャネル、ｉＳＣＳＩといった通信プロトコルが用いられる。なお、業務サーバ２は、複数台あってもよい。
【００１９】
業務サーバ２は、ＣＰＵ（Central Processing Unit）２１（第１プロセッサ）と、メモリ２２と、ＨＤＤ（Hard Disk Drive）２４と、ＦＣ  ＨＢＡ（Fibre Channel Host Bus Adapter）２５（第１インタフェース）とを有している。メモリ２２には、ＴＭＳ装置４のディスクドライブ８に対するデータの書込み要求、及び読出し要求を伴う業務プログラム２３ａと、ＴＭＳ装置４による二重化処理、バックアップ処理、リストア処理等を管理するためのＴＭＳ管理プログラム２３ｂが格納されている。
【００２０】
ＴＭＳ管理プログラム２３ｂは、ＣＰＵ２１に実行されることにより、業務サーバ２の入力装置(図示せず)を使って利用者から入力されたコマンドや、予め設定されている規則に従って決定されるコマンドをＴＭＳ装置４にＦＣ  ＨＢＡ２５を介して送信し、当該コマンドによる結果をＦＣ  ＨＢＡ２５を介して受信し、表示装置（図示せず）に表示させる。
【００２１】
二重化処理に関するコマンドとしては、業務サーバ２がオリジナルデータの格納に利用するためのＴＭＳ装置４の論理ボリューム１０と、他の論理ボリューム１０とをデータが同期しているペア状態（ＰＡＩＲ状態）にさせるためのpaircreateコマンド、ペア状態にある論理ボリュームを一時的にペア状態から分離したサスペンド状態（ＰＳＵＳ状態）にさせるためのpairsplitコマンド、サスペンド状態にある２つの論理ボリューム１０を再びペア状態にさせるためのpairresyncコマンド等がある。ここで、業務サーバ２がオリジナルデータの格納に利用するための論理ボリューム１０ｐをＰ−Ｖｏｌ（正ボリューム：第１の論理ボリューム）といい、Ｐ−Ｖｏｌとデータを同期させるための論理ボリューム１０ｓをＳ−Ｖｏｌ（副ボリューム：第２の論理ボリューム）という。
【００２２】
また、バックアップ処理及びリストア処理に関するコマンドとしては、論理ボリューム１０のデータを所定の磁気テープ７４に退避格納(バックアップ)させるためのVDLbackupコマンド、バックアップやリストアを中断するためのVDLcopycancelコマンド、エラーとなった状態を解除するためのVDLnormalizeコマンド、バックアップした磁気テープ７４のグループ（テープグループ（ＴＧ）：格納単位）を破棄するためのVDLdiscardコマンド、リストアを実施するためのVDLrestoreコマンド、ＴＧの各種状態を検索して表示出力するためのVDLdisplayコマンド、キーワードからＴＧを検索するためのVDLsearchコマンド等がある。例えば、VDLdisplayコマンドにおいては、利用者が退避元の論理ボリューム１０のＬＵ＃（第２識別情報）を指定すると、ＴＭＳ装置４で当該論理ボリュームを退避させたＴＧ＃等が検索されて返信され、その結果が図示しない表示装置に表示出力されることとなる。
【００２３】
図３は、本発明の一実施形態に係るリストアコマンドを説明する図である。
【００２４】
図３Ａは、リストアコマンドのスクリプトの構成を示し、図３Ｂ〜図３Ｄは、リストアコマンドのスクリプトの例を示す。
【００２５】
リストアコマンドであるVDLrestoreコマンドのスクリプト２６は、VDLrestoreコマンドであることを示すコマンド部２６ａと、コマンドのオプションを指定するオプション部２６ｂと、リストア元ＴＧ指定部２６ｃと、リストアセット指定部２６ｄとを有する。なお、オプション部２６ｂと、リストアセット指定部２６ｄとは、省略することができる。
【００２６】
オプション部２６ｂにおいては、Ｐ−Ｖｏｌを対象としてリストアするか、Ｐ−Ｖｏｌ及びＳ−Ｖｏｌを同時に対象としてリストアするかを指定する。本実施形態では、リストア対象をＰ−Ｖｏｌにする場合には、”-p”を記述し、リストア対象をＰ−Ｖｏｌ及びＳ−Ｖｏｌにする場合には、”-ps”を記述する。なお、オプション部２６ｂを省略すると、リストアの対象はＳ−Ｖｏｌとなる。
【００２７】
リストア元ＴＧ指定部２６ｃには、リストアを行うために用いるＴＧを特定する情報（データ特定情報の一例）、例えば、磁気テープ７４に対応づけられているキーワード、磁気テープ７４の属するＴＧ＃（テープグループ番号:格納単位識別情報）等を指定する。例えば、キーワードを記述する場合には、”-k<XXXXX >”（”XXXXX”は、キーワードを示す）として記述する。また、ＴＧ＃を記述する場合には、”-tg<XXX>”(”XXX”は、ＴＧ＃を示す)として記述する。
【００２８】
リストアセット指定部２６ｄには、リストア対象のＴＧ内のＬＵ＃（論理ユニットナンバー:第２識別情報）を指定し、また、リストア先を変更する場合には、当該リストア先のＬＵ＃を指定する。リストア対象のＬＵ＃を指定する場合には、”-luA<XXX・・・>”（”XXX”は、ＬＵ＃）と記述する。ＬＵ＃は、複数指定することができる。また、リストア先のＬＩ＃を指定する場合には、”-luB<XXX・・・>”（”XXX”は、ＬＵ＃）と記述する。ＬＵ＃は、複数指定することができる。なお、リストアセット指定部２６ｄを省略する場合には、ＴＧ内の全てのＬＵのデータをリストアすることを意味している。
【００２９】
図３Ｂに示すスクリプトは、ＴＧ＃が”０”のテープグループに格納されている全てのデータを、Ｐ−Ｖｏｌ及びＳ−Ｖｏｌにリストアすることを意味している。
【００３０】
また、図３Ｃに示すスクリプトは、ＴＧ＃が”０”のＬＵ＃が”２”のデータを、Ｐ−Ｖｏｌ及びＳ−Ｖｏｌにリストアすることを意味している。
【００３１】
また、図３Ｄに示すスクリプトは、キーワードが”DB1_20070720”のテープグループの全てのデータを、Ｐ−Ｖｏｌにリストアすることを意味している。
【００３２】
本実施形態では、ＴＭＳ管理プログラム２３ｂは、指定されたコマンドスクリプトをコマンド制御テーブル２７のレコード形式に変換し、ＴＭＳ装置４に送信する。
【００３３】
図４は、本発明の一実施形態に係るコマンド制御テーブルの構成を示す図である。
【００３４】
リストアコマンド（VDLrestoreコマンド）時のコマンド制御テーブル２７は、コマンドコードフィールド２７ａと、リストア元ＴＧ＃２７ｂと、リストアオプションフィールド２７ｃと、リストア対象ＬＵ数フィールド２７ｄと、リストア元ＴＧ内ＬＵ＃フィールド２７ｅと、リストア先ＬＵ＃フィールド２７ｆとを含むレコードを格納する。
【００３５】
コマンドコードフィールド２７ａには、コマンド（本例では、リストアコマンド）が格納される。リストア元ＴＧ＃２７ｂには、リストアに使用するＴＧ＃（データ特定情報の一例）が格納される。コマンドスクリプトにＴＧ＃が直接指定されていれば、指定されているＴＧ＃が格納され、キーワード（データ特定情報の一例）が設定されている場合には、当該キーワードに対応するＴＧ＃が検索されて格納される。リストアオプションフィールド２７ｃには、コマンドスクリプトのオプション部２６ｂの指定が格納される。すなわち、リストア先をＰ−Ｖｏｌにするか、Ｐ−Ｖｏｌ及びＳ−Ｖｏｌにするかの指定が格納される。リストア対象ＬＵ数フィールド２７ｄには、リストアの対象とするＬＵの数が格納される。本実施形態では、リストア対象ＬＵ数フィールド２７ｄには、コマンドスクリプトのリストアセット指定部２６ｄに指定されたＬＵの数が格納される。なお、ＴＧの全てのＬＵをリストアする場合、すなわち、コマンドスクリプトのリストアセット指定部２６ｄが省略されている場合には、フィールド２７ｄ、２７ｅ、２７ｆには、何も設定されない。リストア元ＴＧ内ＬＵ＃フィールド２７ｅには、リストア対象のＬＵ＃が格納される。リストア先ＬＵ＃フィールド２６ｆには、リストア先のＬＵ＃が格納される。リストア元ＴＧ内ＬＵ＃フィールド２７ｅ及びリストア先ＬＵ＃フィールド２６ｆは、リストア対象ＬＵ数分設定される。なお、リストア先のＬＵ＃が指定されていない場合には、リストア先ＬＵ＃フィールド２６ｆには何も設定されない。
【００３６】
図２の説明に戻り、ＴＭＳ装置４は、複数のディスクドライブ８（記憶装置の一例）と、コントローラ部５と、テープライブラリ装置７と、コントローラ部５とテープライブラリ装置７とを通信可能に接続するＦＣ（Fibre Channel）スイッチ６とを有する。
【００３７】
テープライブラリ装置７は、複数のテープドライブ７１と、搬送機構部７２と、テープライブラリ部７３とを有する。
【００３８】
テープライブラリ部７３は、複数の磁気テープ７４を内部に収容可能となっている。テープドライブ７１は、磁気テープ７４に対するデータ読出し及びデータ書込みが実行できるようになっている。本実施形態では、テープドライブ７１は、ＳＣＳＩコマンドによって制御可能となっている。搬送機構部７２は、テープライブラリ部７３から磁気テープ７４を取り出して、テープドライブ７１に搬送する。本実施形態では、搬送機構部７２は、ＳＣＳＩコマンドによって制御可能となっている。
【００３９】
ＴＭＳ装置４においては、複数のディスクドライブ８によりＲＡＩＤ（Redundant
Arrays of Inexpensive Disks）構成を組むことができるようになっている。本実施形態では、複数のディスクドライブ８によって、１又は複数の記憶領域、すなわち論理ボリューム(論理ユニット：ＬＵ)１０を提供し、或いは、１つのディスクドライブ８によって、１又は複数の論理ボリューム１０を提供することができる。なお、各論理ボリューム１０は、設定に応じてＰ−Ｖｏｌ１０ｐとすることも、Ｓ−Ｖｏｌ１０ｓとすることもできる。
【００４０】
コントローラ部５は、複数のディスクドライブ８及びテープライブラリ装置７を制御する制御モジュールであり、複数のホストＩ／Ｆ（第２インタフェース）５１、複数のライブラリＩ／Ｆ５２、ＣＰＵ（第２プロセッサ）５３、データ転送コントローラ５４、キャッシュメモリ５５、メモリ５６、及び複数のディスクＩ／Ｆ５９を備えている。
【００４１】
ホストＩ／Ｆ５１は、コントローラ部５と業務サーバ２との間のデータのやりとりを仲介する。ライブラリＩ／Ｆ５２は、コントローラ部５とテープライブラリ装置７との間のデータのやりとりを仲介する。ＣＰＵ５３は、メモリ５６に格納されたプログラム等に従って処理を実行する。具体的な処理については、プログラムの説明において後述する。データ転送コントローラ５４は、業務サーバ２、ディスクドライブ８、テープライブラリ装置７、キャッシュメモリ５５、及びＣＰＵ５３の間のデータの転送を制御する。キャッシュメモリ５５は、業務サーバ２と、ディスクドライブ８との間でやりとりするデータや、テープライブラリ装置７とディスクドライブ８との間でやりとりするデータ等を一時的に記憶する。ディスクＩ／Ｆ５９は、コントローラ部５とディスクドライブ８との間のデータのやりとりを仲介する。
【００４２】
メモリ５６には、制御プログラム５７と、各種テーブル５８とが格納される。
【００４３】
図５は、本発明の一実施形態に係るメモリ内のプログラム及びテーブル構成の一例を示す図である。
【００４４】
制御プログラム５７は、コマンド処理プログラム５７ａと、データ転送処理プログラム５７ｂと、キャッシュ制御プログラム５７ｃと、ディスク制御プログラム５７ｄと、ライブラリ制御プログラム５７ｅと、テープドライブ制御プログラム５７ｆとを有する。
【００４５】
コマンド処理プログラム５７ａは、業務サーバ２から受け取ったコマンドを解釈して、対応する処理の制御をＣＰＵ５３に実行させるためのプログラムである。
【００４６】
データ転送処理プログラム５７ｂは、データの転送の制御をＣＰＵ５３に実行させるためのプログラムである。本実施形態では、データ転送処理プログラム５７ｂを実行するＣＰＵ５３は、状況に応じて、キャッシュ制御プログラム５７ｃ、ディスク制御プログラム５７ｄ、ライブラリ制御プログラム５７ｅ、又はテープドライブ制御プログラム５７ｆを呼び出して実行する。
【００４７】
キャッシュ制御プログラム５７ｃは、読出し、書込み対象のデータをキャッシュメモリ５５に一時的にキャッシュさせ、当該データを読出し、書込みに利用させる制御をＣＰＵ５３に実行させるためのプログラムである。
【００４８】
ディスク制御プログラム５７ｄは、ディスクドライブ８へのデータの書込み及びディスクドライブ８からのデータの読出しの制御をＣＰＵ５３に実行させるためのプログラムである。
【００４９】
ライブラリ制御プログラム５７ｅは、搬送機構部７２を制御して、テープライブラリ部７３内の磁気テープ７４をテープドライブ７１に搬送し、また、テープドライブ７１から磁気テープ７４を取り出してテープライブラリ部７３内に格納する制御をＣＰＵ５３に実行させるためのプログラムである。
【００５０】
テープドライブ制御プログラム５７ｆは、テープドライブ７１を制御して、磁気テープ７４へのデータの書き込み、及び磁気テープ７４からのデータの読み込みの制御をＣＰＵ５３に実行させるためのプログラムである。
【００５１】
ここで、データ特定情報受付部、特定部、第１識別情報取得部、読出制御部、第１回復制御部、第２回復制御部、種類指定受付部、検索条件受付部、検索部、及び検索結果送信部は、ＣＰＵ５３により制御プログラム５７が実行されることにより構成される。
【００５２】
図６は、本発明の一実施形態に係る二重化処理のコマンドに応じた状態遷移を示す図である。
【００５３】
ＴＭＳ装置４において、複数の論理ボリューム１０がＳＰＭＬ（Simplex:単一）状態８０である場合において、これら論理ボリューム１０の一つの論理ボリュームをＰ−Ｖｏｌ（第１の論理ボリューム）とし、別の１つの論理ボリュームをＳ−Ｖｏｌ(第２の論理ボリューム)とする指定を含むpaircreateコマンドが業務サーバ２から送信されると、制御プログラム５７を実行するＣＰＵ５３が、paircreateコマンドで指定されたＰ−Ｖｏｌ１０ｐからＳ−Ｖｏｌ１０ｓに対して、初期コピーの実行を開始する。これにより、これら論理ボリュームはＣＯＰＹ（ＰＤ）状態８１となる。初期コピーが完了した場合には、指定された２つの論理ボリューム１０ｐ、１０ｓがＰＡＩＲ状態８２となる。業務を行う前において、業務サーバ２からpairsplitコマンドが送信される。制御プログラム５７を実行するＣＰＵ５３は、pairsplitコマンドを受信すると、Ｐ−Ｖｏｌ１０ｐと、Ｓ−Ｖｏｌ１０ｓとを分割する。これにより、Ｐ−Ｖｏｌ１０ｐとＳ−Ｖｏｌ１０ｓとがＰＳＵＳ状態８３となる。この状態８３において、業務サーバ２が通常業務を行うこととなる。これにより、通常業務のアクセス性能を高くすることができる。この状態８３においては、業務サーバ２によってＰ−Ｖｏｌ１０ｐに対して更新が発生した場合には、ＣＰＵ５３は、Ｐ−Ｖｏｌ１０ｐを更新するとともに、Ｐ−Ｖｏｌ１０ｐの更新箇所を示す情報を管理する。
【００５４】
２つの論理ボリューム１０ｐ、１０ｓがＰＳＵＳ状態８３である場合において、磁気テープ７４に対してバックアップを開始する際には、業務サーバ２からpairresyncコマンドが送信され、制御プログラム５７を実行するＣＰＵ５３は、ＰＳＵＳ状態８３時におけるＰ−Ｖｏｌへの更新をＳ−Ｖｏｌ１０ｓに反映させる処理を開始する。これによって、Ｐ−Ｖｏｌ１０ｐ及びＳ−Ｖｏｌ１０ｓは、ＣＯＰＹ（ＲＳ）状態８４となる。そして、Ｐ−Ｖｏｌ１０ｐへの更新がＳ−Ｖｏｌ１０ｓへ完全に反映されると、Ｐ−Ｖｏｌ１０ｐ及びＳ−Ｖｏｌ１０ｓは、ＰＡＩＲ状態８２となる。
【００５５】
次いで、業務サーバ２からpairsplitコマンドが送信される。制御プログラム５７を実行するＣＰＵ５３は、pairsplitコマンドを受信すると、Ｐ−Ｖｏｌ１０ｐと、Ｓ−Ｖｏｌ１０ｓとを分割する。これにより、Ｐ−Ｖｏｌ１０ｐとＳ−Ｖｏｌ１０ｓとがＰＳＵＳ状態８３となる。このＰＳＵＳ状態８３において、Ｓ−Ｖｏｌ１０ｓから磁気テープ７４へのバックアップが行われることとなる。Ｓ−Ｖｏｌ１０ｓから磁気テープ７４へのバックアップについては、後述する。
【００５６】
図７は、本発明の一実施形態に係るバックアップ及びリストア処理のコマンドに応じた状態遷移を示す図である。
【００５７】
利用者による図示しない管理端末によって、１以上の磁気テープ７４からなるグループ(ＴＧ：格納単位)の設定が行われると、当該ＴＧは、ＮＯＲＭＡＬ状態９０となる。
【００５８】
この状態において、業務サーバ２によりVDLbackupコマンドが送信されると、制御プログラム５７を実行するＣＰＵ５３が、VDLbackupコマンドに指定されたＴＧの状態をＣＯＰＹ＿ＷＡＩＴ状態９１とし、準備が整った後に、VDLbackupコマンドにおいて退避元として指定された論理ボリューム１０のデータを、退避先と指定されたＴＧの磁気テープ７４にバックアップを開始する。本実施形態においては、ＰＳＵＳ状態８３のＳ−Ｖｏｌ１０ｓが退避元の論理ボリュームとして指定されることとなる。これによって、退避先のＴＧは、ＣＯＰＹ状態９２となる。
【００５９】
制御プログラム５７を実行するＣＰＵ５３により、退避元として指定された論理ボリューム１０のデータを、退避先と指定されたＴＧの磁気テープ７４に完全にバックアップできた場合には、ＴＧの状態がＣＯＰＹ＿ＥＮＤ状態９３となる。なお、ＣＯＰＹ状態９２において、バックアップに失敗した場合、或いは、業務サーバ２からVDLcopycancelコマンドを受信した場合には、ＣＰＵ５３は、ＴＧの状態をＣＯＰＹ＿ＦＡＩＬ状態９４とし、その後、業務サーバ２からVDLnormalize又はVDLdiscardコマンドを受信した場合には、ＴＧの状態をＮＯＲＭＡＬ状態９０とする。
【００６０】
ＴＧの状態がＣＯＰＹ＿ＥＮＤ状態の場合において、業務サーバ２からVDLrestoreコマンドを受信した場合には、ＣＰＵ５３は、ＴＧの状態をＲＣＰＹ＿ＷＡＩＴ状態とし、その後、VDLrestoreコマンドの指定に従って、ＴＧの磁気テープ７４から指定された論理ボリューム１０へのデータのリストアを開始し、ＴＧの状態をＲＣＰＹ状態９６とする。
【００６１】
制御プログラム５７を実行するＣＰＵ５３により、論理ボリューム１０へのデータのリストアが成功した場合には、ＴＧの状態をＣＯＰＹ＿ＥＮＤ状態９３とする。なお、ＲＣＰＹ状態９６において、リストアに失敗した場合、或いは、業務サーバ２からVDLcopycancelコマンドを受信した場合には、ＣＰＵ５３は、ＴＧの状態をＲＣＰＹ＿ＦＡＩＬ状態９７とする。その後、業務サーバ２からVDLnormalizeコマンドを受信した場合には、ＴＧの状態をＣＯＰＹ＿ＥＮＤ状態９３とする一方、業務サーバ２からVDLdiscardコマンドを受信した場合には、ＴＧは、ＮＯＲＭＡＬ状態９０とされる。なお、業務サーバ２からVDLdisplayコマンドを受信した場合には、ＣＰＵ５３は、当該コマンドにおいて指定されたＬＵ＃のデータが退避された全てのＴＧのＴＧ＃をＴＧ管理テーブル６３（図５、図１０参照）から検索し、検索した結果を業務サーバ２へ送信する。
【００６２】
図５の説明に戻り、各種テーブル５８には、論理ボリューム管理テーブルの一例としてのＬＵ管理テーブル６１、テープ管理テーブル６２、格納単位管理テーブルの一例としてのＴＧ管理テーブル６３、コマンド制御テーブル２７、及びデータ転送制御テーブル６５がある。
【００６３】
図８は、本発明の一実施形態に係るＬＵ管理テーブルの一例を示す図である。
【００６４】
ＬＵ管理テーブル６１は、ＬＵ番号フィールド６１ａと、ＬＵ閉塞状態フィールド６１ｂと、二重化状態フィールド６１ｃと、Ｐ／Ｓ状態フィールド６１ｄと、対応ＬＵ＃（番号）フィールド６１ｅとを有するレコードを格納する。
【００６５】
ＬＵ番号フィールド６１ａには、論理ボリューム１０を一意に表すＬＵ番号（ＬＵ＃）が格納される。ＬＵ閉塞状態フィールド６１ｂには、対応する論理ボリューム１０が閉塞しているか、正常か、又は未定義かを示す情報が格納される。二重化状態フィールド６１ｃには、二重化の状態を示す情報が格納される。本実施形態では、二重化の状態としては、未定義、ペア（ＰＡＩＲ）、コピー中(Ｐ→Ｓ)、サスペンド（ＰＳＵＳ）等がある。Ｐ／Ｓ状態フィールド６１ｄには、当該レコードに対応する論理ボリューム１０が他の論理ボリューム１０とペアが組まれている場合に、当該レコードに対応する論理ボリューム１０がＰ−Ｖｏｌであるのか、Ｓ−Ｖｏｌであるのかを示す情報が格納される。対応する論理ボリューム１０がＰ−Ｖｏｌである場合には、”Ｐ”が格納され、Ｓ−Ｖｏｌである場合には、”Ｓ”が格納される。
【００６６】
対応ＬＵ＃フィールド６１ｅには、対応する、すなわちペアが組まれている他方の論理ボリューム１０のＬＵ＃が格納される。すなわち、当該レコードの論理ボリューム１０がＰ−Ｖｏｌである場合には、Ｓ−ＶｏｌのＬＵ＃（第２識別情報）が格納され、当該レコードの論理ボリューム１０がＳ−Ｖｏｌである場合には、Ｐ−ＶｏｌのＬＵ＃（第１識別情報）が格納される。
【００６７】
例えば、２番目のレコードによると、ＬＵ＃が”１”であり、正常であり、ペア状態となっており、Ｐ−Ｖｏｌであり、ＬＵ＃が”２”の論理ボリューム１０とペアが組まれていることがわかる。
【００６８】
図９は、本発明の一実施形態に係るテープ管理テーブルの一例を示す図である。
【００６９】
テープ管理テーブル６２は、テープ番号フィールド６２ａと、テープ閉塞状態フィールド６２ｂと、ライブラリ番号フィールド６２ｃと、スロット位置フィールド６２ｄと、バーコードフィールド６２ｅとを有するレコードを格納する。
【００７０】
テープ番号フィールド６２ａには、磁気テープ７４をＴＭＳ装置２内で一意に表すテープ番号（テープ＃）が格納される。テープ閉塞状態フィールド６２ｂには、対応する磁気テープ７４が閉塞しているか、正常か、又は未定義かを示す情報が格納される。ライブラリ番号フィールド６２ｃには、対応する磁気テープ７４が格納されているテープライブラリ部７３におけるライブラリの番号が格納される。スロット位置フィールド６２ｄには、テープライブラリ部７３のライブラリにおけるスロットの位置を示す番号が格納される。バーコードフィールド６２ｅには、対応する磁気テープ７４のバーコードの情報を格納する。本実施形態では、磁気テープ７４のバーコードには、磁気テープ７４を固有に識別可能な情報が含まれている。
【００７１】
例えば、１番目のレコードによると、テープ番号が”０”であり、正常であり、ライブラリ番号が”０”のスロット位置が”０”に磁気テープ７４が格納されており、バーコードには、”００００００Ｌ３”の情報が含まれていることがわかる。
【００７２】
図１０は、本発明の一実施形態に係るテープグループ管理テーブルの一例を示す図である。
【００７３】
テープグループ管理テーブル６３は、ＴＧ（テープグループ）番号フィールド６３ａと、ＴＧ閉塞状態フィールド６３ｂと、ＴＧコピー状態フィールド６３ｃと、ミラー状態フィールド６３ｄと、使用テープ番号(正)フィールド６３ｅと、使用テープ番号(副)フィールド６３ｆと、格納ＬＵリストフィールド６３ｇと、書き込み日時フィールド６３ｈと、キーワードフィールド６３ｉとを有するレコードを格納する。
【００７４】
ＴＧ番号フィールド６３ａには、データを格納する格納単位となる少なくとも１以上の磁気テープを含むテープグループを一意に表すＴＧ番号（ＴＧ＃：格納単位識別情報）が格納される。ＴＧ閉塞状態フィールド６３ｂには、対応するＴＧが閉塞しているか、正常か、又は未定義かを示す情報が格納される。ＴＧコピー状態フィールド６３ｃには、ＴＧのコピーに関する状態の情報が格納される。コピーに関する状態情報としては、図７に示す状態、すなわち、ＮＯＲＭＡＬ状態９０、ＣＯＰＹ＿ＷＡＩＴ状態９１、ＣＯＰＹ状態９２、ＣＯＰＹ＿ＥＮＤ状態９３、ＣＯＰＹ＿ＦＡＩＬ状態９４、ＲＣＰＹ＿ＷＡＩＴ状態９５、ＲＣＰＹ状態９６、ＲＣＰＹ＿ＦＡＩＬ状態９７等がある。ミラー状態フィールド６３ｄには、対応するＴＧがミラー状態、すなわち、データを二重化して記憶しているか否かを示す情報が格納される。使用テープ番号(正)フィールド６３ｅには、ＴＧに属する磁気テープ７４のテープ番号が格納される。なお、対応するＴＧがミラー状態である場合には、正側の磁気テープ７４のテープ番号が格納される。使用テープ番号(副)フィールド６３ｆには、ＴＧがミラー状態である場合に、副側の磁気テープ７４のテープ番号が格納される。格納ＬＵリストフィールド６３ｇには、対応するＴＧにバックアップされている論理ボリューム１０のＬＵ＃のリストが格納される。書き込み日時フィールド６３ｈには、ＴＧにデータを書き込んだ日時が格納される。キーワードフィールド６３ｉには、対応するＴＧに対応付けておくキーワードが格納される。キーワードは、利用者が任意に設定することができ、例えば、データベースの種類及び書込み日とを組み合わせたものであってもよい。また、キーワードは、ＴＧ毎に異ならせるようにしてもよく、また、同一の業務に利用するＴＧで共通としてもよい。
【００７５】
例えば、１番目のレコードによると、ＴＧ番号が”０”であり、ＴＧは、正常であり、コピー状態は、”ＣＯＰＹ＿ＥＮＤ”状態であり、ミラー状態が”ＯＮ”であり、正側の使用テープ番号が”０，１”であり、副側の使用テープ番号が”２，３”であり、格納されているデータのＬＵ＃が”２，４”であり、書き込み日時が”2007/07/20  01:23:45”であり、キーワードが”DB1_20070720”であることがわかる。
【００７６】
図１１は、本発明の一実施形態に係るデータ転送制御テーブルの一例を示す図である。
【００７７】
データ転送制御テーブル６５は、データ転送方向フィールド６５ａと、ＴＧ＃フィールド６５ｂと、正ライブラリ＃フィールド６５ｃと、正テープドライブ＃フィールド６５ｄと、正テープ＃フィールド６５ｅと、副ライブラリ＃フィールド６５ｆと、副テープドライブ＃フィールド６５ｇと、副テープ＃フィールド６５ｈと、転送ＬＵリストフィールド６５ｉと、転送中ＬＵカウンタフィールド６５ｊと、正転送先ＬＵリストフィールド６５ｋと、副転送先ＬＵリストフィールド６５ｌとを有するレコードを格納する。
【００７８】
データ転送方向フィールド６５ａには、データを転送する方向を示す情報が格納される。例えば、ディスクドライブ８から磁気テープ７４に転送する場合には、”Ｄ２Ｔ”が格納され、磁気テープ７４からディスクドライブ８に転送する場合には、”Ｔ２Ｄ”が格納される。ＴＧ＃フィールド６５ｂには、データ転送元又はデータ転送先とＴＧ番号が格納される。正ライブラリ＃フィールド６５ｃには、データ転送元となる磁気テープ７４が格納されているライブラリの番号又はデータ転送先の正側となる磁気テープ７４が格納されているライブラリの番号が格納される。正テープドライブ＃フィールド６５ｄには、データ転送元となる磁気テープ７４が格納されているテープドライブの番号又はデータ転送先の正側となる磁気テープ７４が格納されているテープドライブの番号が格納される。正テープ＃フィールド６５ｅには、データ転送元の磁気テープ７４のテープ番号又はデータ転送先の正側となる磁気テープ７４のテープ番号が格納される。
【００７９】
副ライブラリ＃フィールド６５ｆには、データ転送先の副側となる磁気テープ７４が格納されているライブラリの番号が格納される。副テープドライブ＃フィールド６５ｇには、データ転送先となる副側の磁気テープ７４が格納されているテープドライブの番号が格納される。副テープ＃フィールド６５ｈには、データ転送先となる副側の磁気テープ７４のテープ番号が格納される。フィールド６５ｆ、６５ｇ、６５ｈは、磁気テープ７４へのミラーバックアップの際に利用される。
【００８０】
転送ＬＵリストフィールド６５ｉには、ＴＧ内の転送元となるＬＵ＃のリストが格納される。転送中ＬＵカウンタフィールド６５ｊには、転送中のＬＵを示すカウンタが格納される。正転送先ＬＵリストフィールド６５ｋには、実際に書込みを行う論理ボリューム１０のＬＵ＃のリストが格納される。副転送先ＬＵリストフィールド６５ｌには、同時に書込みを行う諭路ボリューム１０のＬＵ＃のリストが格納される。
【００８１】
次に、本発明の一実施形態に係る計算機システム１による処理動作を説明する。
【００８２】
図１２は、本発明の一実施形態に係るＴＭＳ装置４によるコマンド処理のフローチャートである。コマンド処理は、ＣＰＵ５３がコマンド処理プログラム５７ａを実行することにより実現される。なお、本処理が実行される前には、ＴＭＳ装置４において、Ｓ−Ｖｏｌ１０ｓから利用者の設定に従った特定のＴＧの磁気テープ７４へデータが退避格納されている。また、業務サーバ２において、当該ＴＧの磁気テープ７４のデータを用いてデータの回復(リストア)を行うためのリストアコマンドが利用者により指定され、業務サーバ２から当該リストアコマンドに対応するコマンド制御テーブル２７のレコードが送信され、当該レコードがＴＭＳ装置４のメモリ５６のコマンド制御テーブル２７に格納されているものとする。
【００８３】
ＣＰＵ５３は、メモリ５６のコマンド制御テーブル２７のリストア元ＴＧ＃フィールド２６ｂのＴＧ＃を、データ転送制御テーブル６５の新たなレコードのＴＧ＃フィールド６５ｂに設定する(ステップＳ１)。この際、ＣＰＵ５３は、データ転送方向フィールド６５ａには、磁気テープ７４からディスクドライブ８へのデータ転送を示す”Ｔ２Ｄ”を格納する。次いで、ＣＰＵ５３は、コマンド制御テーブル２７のリストア対象ＬＵ数フィールド２７ｄに数が設定されているか否かによって、ＴＧ内の全ＬＵのデータをリストアする指示か否かを判定し(ステップＳ２)、数が設定されていない場合には、全ＬＵのデータをリストアする指示であることを意味しているので(ステップＳ２：Ｙｅｓ)、ＴＧ管理テーブル６３の当該ＴＧ＃に対応するレコードの格納ＬＵリストフィールド６３ｇのＬＵリストを、データ転送テーブル６５の転送ＬＵリストフィールド６５ｉに設定する(ステップＳ３)。これにより、ＴＧに格納されている全てのＬＵのリストが設定される。
【００８４】
一方、コマンド制御テーブル２７のリストア対象ＬＵ数フィールド２７ｄに数が設定されている場合には、ＴＧ内の所定のＬＵのデータをリストアする指示であることを意味しているので(ステップＳ２：Ｎｏ)、コマンド制御テーブル２７のリストア元ＴＧ内ＬＵ＃フィールド２７ｅからＬＵ＃を取得し、当該ＬＵ＃をデータ転送制御テーブル６５の転送ＬＵリスト６５ｉに設定する(ステップＳ４)。この際、リストア対象ＬＵ数フィールド２７ｄに２以上の数が設定されている場合には、当該数分のリストア元ＴＧ内ＬＵ＃フィールド２７ｅにＬＵ＃が設定されているので、これらＬＵ＃を繋げたリストとしてデータ転送制御テーブル６５の転送ＬＵリスト６５ｉに設定する。
【００８５】
ステップＳ３又はステップＳ４の後に、ＣＰＵ５３は、コマンド制御テーブル２７のリストアオプション２６ｃにＰ−Ｖｏｌ及びＳ−Ｖｏｌの同時リストアの指示が含まれているか否かを判定し(ステップＳ５)、Ｐ−Ｖｏｌ及びＳ−Ｖｏｌの同時リストアの指示が含まれている場合(ステップＳ５：Ｙｅｓ)には、データ転送制御テーブル６５の転送ＬＵリストフィールド６５ｉに格納されたＬＵリストのそれぞれのＬＵ＃を、ＬＵ管理テーブル６１の対応ＬＵ＃フィールド６１ｅを参照して、対応するＰ−ＶｏｌのＬＵ＃に変換し、当該Ｐ−ＶｏｌのＬＵ＃のリストをデータ転送制御テーブル６５の正転送先ＬＵリストフィールド６５ｋに設定する（ステップＳ６）。これによって、利用者がＴＧにバックアップしたＬＵ（すなわち、Ｓ−Ｖｏｌ）に対応するＰ−ＶｏｌのＬＵ＃を直接指定しなくとも適切に転送先としてＰ−Ｖｏｌを設定することができる。ステップＳ６の後に、ＣＰＵ５３は、データ転送制御テーブル６５の転送ＬＵリストフィールド６５ｉに格納されたＬＵリストを、データ転送制御テーブル６５の副転送先ＬＵリストフィールド６５ｌに設定する（ステップＳ７）。
【００８６】
一方、コマンド制御テーブル２７のリストアオプション２６ｃにＰ−Ｖｏｌ及びＳ−Ｖｏｌの同時リストアの指示が含まれていないと判定した場合(ステップＳ５：Ｎｏ)には、ＣＰＵ５３は、コマンド制御テーブル２７のリストアオプション２６ｃにＰ−Ｖｏｌのリストアの指示が含まれているか否かを判定する（ステップＳ８）。
【００８７】
この結果、Ｐ−Ｖｏｌのリストアの指示が含まれている場合(ステップＳ８：Ｙｅｓ)には、ＣＰＵ５３がデータ転送制御テーブル６５の転送ＬＵリストフィールド６５ｉに格納されたＬＵリストのそれぞれのＬＵ＃を、ＬＵ管理テーブル６１の対応ＬＵ＃フィールド６１ｅを参照して、対応するＰ−ＶｏｌのＬＵ＃に変換し、当該Ｐ−ＶｏｌのＬＵ＃のリストをデータ転送制御テーブル６５の正転送先ＬＵリストフィールド６５ｋに設定する（ステップＳ９）。これによって、利用者がＴＧにバックアップしたＬＵ（すなわち、Ｓ−Ｖｏｌ）に対応するＰ−ＶｏｌのＬＵ＃を直接指定しなくとも適切に転送先としてＰ−Ｖｏｌを設定することができる。
【００８８】
一方、コマンド制御テーブル２７のリストアオプション２６ｃにＰ−Ｖｏｌのリストアの指示が含まれていないと判定した場合(ステップＳ８：Ｎｏ)には、ＣＰＵ５３は、リストア先を変更する指示が含まれているか否か、すなわち、コマンド制御テーブル２７のリストア先ＬＵ＃フィールド２７ｆにＬＵ＃が設定されているか否かを判定する（ステップＳ１０）。
【００８９】
この結果、リストア先を変更する指示が含まれている場合（ステップＳ１０：Ｙｅｓ）には、ＣＰＵ５３は、コマンド制御テーブル２７のリストア先ＬＵ＃フィールド２７ｆからＬＵ＃を取得し、当該ＬＵ＃をデータ転送制御テーブル６５の正転送先ＬＵリスト６５ｋに設定する(ステップＳ１１)。この際、リストア対象ＬＵ数フィールド２７ｄに２以上の数が設定されている場合には、当該数分のリストア先ＬＵ＃フィールド２７ｆにＬＵ＃が設定されているので、これらＬＵ＃を繋げたリストをデータ転送制御テーブル６５の正転送先ＬＵリスト６５ｋに設定する。
【００９０】
一方、リストア先を変更する指示が含まれていない場合（ステップＳ１０：Ｎｏ）には、ＣＰＵ５３は、データ転送制御テーブル６５の転送ＬＵリストフィールド６５ｉに格納されたＬＵリストを、データ転送制御テーブル６５の正転送先ＬＵリストフィールド６５ｋに設定する（ステップＳ１２）。
【００９１】
ステップＳ７、Ｓ９、Ｓ１１、Ｓ１２の終了後に、ＣＰＵ５３は、データ転送処理（ステップＳ１３）を実行する。
【００９２】
図１３は、本発明の一実施形態に係るデータ転送処理のフローチャートである。
【００９３】
データ転送処理（ステップＳ１３）は、ＣＰＵ５３がデータ転送処理プログラム５７ｂ、キャッシュ制御プログラム５７ｃ、ディスク制御プログラム５７ｄ、ライブラリ制御プログラム５７ｅ、及びテープドライブ制御プログラム５７ｆを実行することによって実現される。
【００９４】
まず、ＣＰＵ５３が、データ転送制御テーブル６５のＴＧ＃フィールド６５ｂに格納されているＴＧ＃に対応する磁気テープ番号をＴＧ管理テーブル６３により特定し、当該磁気テープ番号に対応する磁気テープ７４を搬送機後部７２によりテープライブラリ部７３からテープドライブ７１に搬送する（ステップＳ２１）。
【００９５】
次いで、ＣＰＵ５３は、テープドライブ７１により磁気テープ７４からリストア対象のＬＵのデータを１ブロック分リードし、キャッシュメモリ５５に格納させ（ステップＳ２２）、キャッシュメモリ５５に格納させた１ブロック分のデータを、データ転送制御テーブル６５の正転送先ＬＵリストフィールド６５ｋのＬＵ＃に対応するＬＵにライトする（ステップＳ２３）。
【００９６】
次いで、ＣＰＵ５３は、データ転送制御テーブル６５の副転送先ＬＵリストフィールド６５ｌにＬＵ＃が設定されているか否かを判定し（ステップＳ２４）、設定されている場合（ステップＳ２４：Ｙｅｓ）には、設定されているＬＵ＃に対応するＬＵに、キャッシュメモリ５５に格納させた１ブロック分のデータをライトする（ステップＳ２５）。したがって、副転送先ＬＵリストフィールド６５１に設定されているＬＵに対しても同一のデータを迅速にライトすることができる。これによって、Ｐ−Ｖｏｌ及びＳ−Ｖｏｌの両方にデータをライトすることができる。一方、データ転送制御テーブル６５の副転送先ＬＵリストフィールド６５ｌにＬＵ＃が設定されていない場合（ステップＳ２４：Ｎｏ）には、次のステップにすすむ。
【００９７】
次いで、ＣＰＵ５３は、リストア対象の当該ＬＵのコピーが完了したか否かを判定し（ステップＳ２６）、コピーが完了した場合には、データ転送制御テーブル６５の転送中ＬＵカウンタフィールド６５ｊの設定を次に転送すべきＬＵ＃に更新する。なお、全て終了している場合（ステップＳ２６：Ｙｅｓ）には、終了したことを示す情報に更新する（ステップＳ２７）。一方、当該ＬＵのコピーが完了していない場合（ステップＳ２６：Ｎｏ）には、次のステップにすすむ。
【００９８】
次いで、ＣＰＵ５３は、磁気テープ７４の終端となったか否かを判定し（ステップＳ２８）、磁気テープ７４の終端になっている場合（ステップＳ２８：Ｙｅｓ）には、磁気テープ７４を同一ＴＧの次の順番の磁気テープ７４に交換させる（ステップＳ２９）一方、終端でない場合（ステップＳ２８：Ｎｏ）には、次のステップにすすむ。
【００９９】
次いで、ＣＰＵ５３は、リストア対象の全てのＬＵのコピーが完了したか否かを判定し（ステップＳ２９）、完了していない場合（ステップＳ２９：Ｎｏ）には、ステップＳ２２からの処理を引き続き行う一方、全てのＬＵのコピーが完了した場合（ステップＳ２９：Ｙｅｓ）には、処理を終了する。
【０１００】
上記した実施形態によると、Ｐ−Ｖｏｌへのリストア、Ｐ−Ｖｏｌ及びＳ−Ｖｏｌの同時リストアをリストアコマンドにおいて指定するだけで、利用者がＰ−ＶｏｌのＬＵ＃を直接指定等することなく、容易且つ適切にＰ−Ｖｏｌへのデータのリストアを行うことができる。
【０１０１】
このため、利用者によるＰ−ＶｏｌのＬＵ＃の誤指定による悪影響を適切に防止することができる。また、利用者がＰ−ＶｏｌとＳ−Ｖｏｌとの対応関係について把握していない場合や、把握できない場合であっても支障なくＰ−Ｖｏｌへのリストアを行うことができる。更に、バックアップ取得時に指定したキーワードを利用することで、バックアップデータを記録してあるＴＧ＃を直接指定等することなく、容易且つ適切にバックアップデータの指定を行うことができる。
【０１０２】
また、上記実施形態では、磁気テープ７４から読出したデータをキャッシュメモリ５５に格納しておき、Ｐ−Ｖｏｌ及びＳ−Ｖｏｌへリストアするようにしているので、迅速にＰ−Ｖｏｌ及びＳ−Ｖｏｌのリストアを行うことができる。このため、例えば、Ｐ−Ｖｏｌ又はＳ−Ｖｏｌの一方の論理ボリューム１０にリストアした後に、リストアをした当該論理ボリューム１０のデータを用いて他方の論理ボリューム１０にコピーする場合に比して、二重化が完了するまでの時間を、例えば、３／４の時間に短縮することができる。
【０１０３】
以上、本発明を実施形態に基づいて説明したが、本発明は上述した実施の形態に限られず、他の様々な態様に適用可能である。
【０１０４】
例えば、上記実施形態では、コマンドにＰ−Ｖｏｌを含む論理ボリュームへのリストアを行う指定を行った場合に、Ｐ−Ｖｏｌへのリストアを行うようにしていたが、例えば、コマンドにおいて指定を行わない場合に、Ｐ−Ｖｏｌへのリストアを行うようにしてもよい。
【０１０５】
また、上記実施形態では、格納単位として、１以上の磁気テープとしていたが、本発明はこれに限られず、例えば、格納単位を１つの磁気テープとしてもよく、この場合には、格納単位識別情報として、磁気テープ識別情報（磁気テープ番号）を用いるようにしてもよい。
【０１０６】
なお、上記実施形態では、データ特定情報の一例として、ＴＧ＃又はキーワードを例に示していたが、本発明はこれに限られず、例えば、ＬＵ＃に基づいてリストア対象のデータの格納先の磁気テープが特定できる場合には、当該ＬＵ＃をデータ特定情報としてもよく、また、ＬＵ＃に対応するデータを格納するＴＧが複数存在する場合であっても、その中のいずれかの特定のＴＧ、（例えば、最新のデータを格納したＴＧ）を復元対象とするように設定しておくようにして、ＬＵ＃をデータ特定情報として用いるようにしてもよい。また、上記実施形態では、コマンド入力によりリストアを実施する例を示したが、ＧＵＩを用いたアプリケーションプログラムで、リストア対象テープの指定をしてもよい。その場合に、Ｓ−Ｖｏｌリストア、Ｐ−Ｖｏｌリストア、及びＰ−Ｖｏｌ及びＳ−Ｖｏｌの同時リストアの指定を、ラジオボタンやドロップダウンリストや起動ボタン等により選択させるとよい。
【図面の簡単な説明】
【０１０７】
【図１】従来例に係るバックアップサーバシステムを説明する図である。
【図２】本発明の一実施形態に係る計算機システムの概略構成を示す図である。
【図３】本発明の一実施形態に係るリストアコマンドのスクリプトを説明する図である。
【図４】本発明の一実施形態に係るコマンド制御テーブルの一例を示す図である。
【図５】本発明の一実施形態に係るメモリ内のプログラム及びテーブル構成の一例を示す図である。
【図６】本発明の一実施形態に係るＴＧコピー状態の遷移を説明する図である。
【図７】本発明の一実施形態に係る二重化状態の遷移を説明する図である。
【図８】本発明の一実施形態に係るＬＵ管理テーブルの一例を示す図である。
【図９】本発明の一実施形態に係るテープ管理テーブルの一例を示す図である。
【図１０】本発明の一実施形態に係るテープグループ管理テーブルの一例を示す図である。
【図１１】本発明の一実施形態に係るデータ転送制御テーブルの一例を示す図である。
【図１２】本発明の一実施形態に係るコマンド処理のフローチャートである。
【図１３】本発明の一実施形態に係るデータ転送処理のフローチャートである。
【符号の説明】
【０１０８】
１  計算機システム、２  業務サーバ、３  データネットワーク、４  ＴＭＳ装置、５  コントローラ部、６  ＦＣスイッチ、７  テープライブラリ装置、８  ディスクドライブ、１０  論理ボリューム、１０ｐ  Ｐ−Ｖｏｌ、１０ｓ  Ｓ−Ｖｏｌ、２１  ＣＰＵ、２２  メモリ、２４  ＨＤＤ、２５  ＦＣ  ＨＢＡ、５１  ホストＩ／Ｆ、５２  ライブラリＩ／Ｆ、５３  ＣＰＵ、５４  データ転送コントローラ、５５  キャッシュメモリ、５６  メモリ、５９  ディスクＩ／Ｆ、７１  テープドライブ、７２  搬送機構部、７３  テープライブラリ部、７４  磁気テープ。
【図１】
0004898609.tif 000002
【図２】
0004898609.tif 000003
【図３】
0004898609.tif 000004
【図４】
0004898609.tif 000005
【図５】
0004898609.tif 000006
【図６】
0004898609.tif 000007
【図７】
0004898609.tif 000008
【図８】
0004898609.tif 000009
【図９】
0004898609.tif 000010
【図１０】
0004898609.tif 000011
【図１１】
0004898609.tif 000012
【図１２】
0004898609.tif 000013
【図１３】
0004898609.tif 000014