(57)【特許請求の範囲】
【請求項１】
動作中のコンピュータ装置とこれに接続されて動作するメインストレージ装置との間に接続され、このメインストレージ装置の記憶内容のバックアップを取得するバックアップ取得装置であって、
前記メインストレージ装置の記憶内容を併設されたバックアップストレージ装置にコピーするバックアップ実行部と、
前記バックアップ実行部の動作中に前記コンピュータ装置からデータ書き込み命令を受信した場合に、このデータ書き込み命令の対象データおよび受信時刻に「未反映」を示す値の記録フラグを付加して予め備えられた記憶手段にジャーナルとして記憶するジャーナル取得部と、
前記ジャーナル取得部が新しいデータを記憶した場合に、前記ジャーナルに記憶されたデータの中で最も古くかつ前記記録フラグの値が「未反映」であるデータを前記記憶手段にスナップショットとして記憶するスナップショット取得部と
を有すると共に、
前記ジャーナル取得部が、前記スナップショットに記憶されたデータの前記記録フラグの値を「反映済」に更新する
ことを特徴とするバックアップ取得装置。
【請求項２】
前記バックアップ実行部の動作中に前記コンピュータ装置からデータ読み出し命令を受信した場合に、前記スナップショット取得部が、このデータ読み出し命令の読み取り対象のアドレスが前記スナップショットに記録されているデータのアドレスと一致するか否かを判断すると共に、一致すれば前記スナップショットから、一致しなければ前記メインストレージ装置から当該データを読み出して前記コンピュータ装置に返却する機能を有することを特徴とする、請求項１に記載のバックアップ取得装置。
【請求項３】
前記バックアップ実行部の動作の終了後、前記スナップショットを複製してこの複製の内容を前記メインストレージ装置に書き込む最新化実行部を有することを特徴とする、請求項２に記載のバックアップ取得装置。
【請求項４】
前記最新化実行部が、前記複製の内容の書き込みの動作の終了後、前記複製を削除し、前記複製の作成後に受け付けられた前記データ書き込み命令およびデータ読み出し命令について再び前記スナップショットを複製して書き込む処理を繰り返すことを特徴とする、請求項３に記載のバックアップ取得装置。
【請求項５】
前記最新化実行部の動作終了までの残り時間を計算すると共に、この残り時間が前記コンピュータ装置にタイムアウトを起こさせる時間以下であればこのコンピュータ装置からのコマンドの受付を一旦停止して前記動作終了を待ってから前記コンピュータ装置の接続先を前記メインストレージ装置に切り替えさせる最新化終了処理部を有することを特徴とする、請求項３に記載のバックアップ取得装置。
【請求項６】
前記コンピュータ装置の接続先の切り替えを、ｉＳＣＳＩ規格のリダイレクト命令によって行うことを特徴とする、請求項５に記載のバックアップ取得装置。
【請求項７】
動作中のコンピュータ装置とこれに接続されて動作するメインストレージ装置との間に接続され、このメインストレージ装置の記憶内容のバックアップを取得するバックアップ取得装置にあって、
前記メインストレージ装置の記憶内容をバックアップ実行部が併設されたバックアップストレージ装置にコピーし、
この記憶内容のコピーの動作中に前記コンピュータ装置からデータ書き込み命令を受信した場合に、このデータ書き込み命令の対象データおよび受信時刻に「未反映」を示す値の記録フラグを付加してジャーナル取得部が予め備えられた記憶手段にジャーナルとして記憶し、
前記ジャーナルに新しいデータが記憶された場合に、前記ジャーナルに記憶されたデータの中で最も古くかつ前記記録フラグの値が「未反映」であるデータをスナップショット取得部が前記記憶手段にスナップショットとして記憶し、
前記スナップショットに記憶されたデータの前記記録フラグの値を前記ジャーナル取得部が「反映済」に更新する
ことを特徴とするバックアップ取得方法。
【請求項８】
前記記憶内容のコピーの動作中に前記コンピュータ装置からデータ読み出し命令を受信した場合に、このデータ読み出し命令の読み取り対象のアドレスが前記スナップショットに記録されているデータのアドレスと一致するか否かを前記スナップショット取得部が判断し、
一致すれば前記スナップショットから前記スナップショット取得部が当該データを読み出し、一致しなければ前記メインストレージ装置から前記スナップショット取得部が当該データを読み出して前記コンピュータ装置に返却することを特徴とする、請求項７に記載のバックアップ取得方法。
【請求項９】
前記記憶内容のコピーの動作の終了後、最新化実行部が前記スナップショットを複製してこの複製の内容を前記メインストレージ装置に書き込むことを特徴とする、請求項８に記載のバックアップ取得方法。
【請求項１０】
動作中のコンピュータ装置とこれに接続されて動作するメインストレージ装置との間に接続され、このメインストレージ装置の記憶内容のバックアップを取得するバックアップ取得装置にあって、
前記バックアップ取得装置が備えるプロセッサに、
前記メインストレージ装置の記憶内容を併設されたバックアップストレージ装置にコピーする手順、
この記憶内容のコピーの動作中に前記コンピュータ装置からデータ書き込み命令を受信した場合に、このデータ書き込み命令の対象データおよび受信時刻に「未反映」を示す値の記録フラグを付加して予め備えられた記憶手段にジャーナルとして記憶する手順、
前記ジャーナルに新しいデータが記憶された場合に、前記ジャーナルに記憶されたデータの中で最も古くかつ前記記録フラグの値が「未反映」であるデータを前記記憶手段にスナップショットとして記憶する手順、
および前記スナップショットに記憶されたデータの前記記録フラグの値を「反映済」に更新する手順
を実行させることを特徴とするバックアップ取得プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はバックアップ取得装置、バックアップ取得方法、およびバックアップ取得プログラムに関し、特にＯＳやアプリケーションの動作を停止することなくバックアップの取得が可能であるバックアップ取得装置等に関する。
【背景技術】
【０００２】
コンピュータが社会の基盤としてすっかり浸透した現代では、データの損失はそれだけで重大な損失となる。そのため、特にウェブサーバ、ファイルサーバ、データベースなどのような、業務上重要なデータを大量に取り扱うコンピュータ装置においては、データのバックアップは極めて重要である。
【０００３】
その一方で、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）による汎用ネットワークの通信速度が向上し、また価格も低下したことから、ストレージ機器において標準とされているＳＣＳＩ（Small Computer System Interface）コマンドをＴＣＰ／ＩＰを介して伝送する、非特許文献１〜２に記載のｉＳＣＳＩ（Internet Small Computer Systems Interface、ＲＦＣ３７２０）と呼ばれる規格が出現している。
【０００４】
このｉＳＣＳＩを利用することによって、既存の汎用ネットワークを利用して大量のデータストレージを安価かつ容易に実現することが可能となる。特に、たとえば特定の企業の特定の部署などのようなローカルネットワーク上で動作している複数のコンピュータに対して、外部から一括してバックアップを取得する（いわゆるリモートバックアップの）仕組みを付加することも可能となる。
【０００５】
これに関連して、次のような技術文献がある。その中でも特許文献１には、シンクライアントで使用されるキャッシュデータを中間的に保存するキャッシュデータ格納手段で、このキャッシュデータ格納手段からの情報漏洩を防止するという技術について記載されている。特許文献２には、ユーザの使用中の状態を示すスナップショットからボリュームのレプリカを作成するというストレージ装置が記載されている。
【０００６】
特許文献３には、磁気テープライブラリを利用して、包括的にデータを管理するというバックアップストレージシステムについて記載されている。が記載されている。特許文献４には、異なる端末からの同一単位記録ユニットへの書き込みを防止するというアクセス中継装置について記載されている。特許文献５には、ディスクレスコンピュータがストレージシステムを利用している間でもウィルス検索が可能であるという計算機システムが記載されている。
【０００７】
特許文献６には、ｉＳＣＳＩのイニシエータとターゲットの間の通信を中継する中継装置を備えるストレージシステムについて記載されている。特許文献７には、イニシエータとターゲットの間のパスを多重化したストレージシステムについて記載されている。非特許文献１には、前述の通りｉＳＣＳＩの仕様が記載されている。非特許文献２には、ｉＳＣＳＩについての解説が記載されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１０−２１１６０７号公報
【特許文献２】特開２００８−０６５３９２号公報
【特許文献３】特開２００７−３１７１８６号公報
【特許文献４】特開２００７−１５６９３３号公報
【特許文献５】特許４７１８２８８号公報
【特許文献６】特開２００６−２９３５０１号公報
【特許文献７】特開２００６−２６０２３３号公報（特許４２５８４８２号公報）
【非特許文献】
【０００９】
【非特許文献１】「RFC3720:Internet Small Computer Systems Interface (iSCSI)」、平成１６年４月、Internet Engineering Task Force、［平成２４年４月１３日検索］、インターネット＜URL：http://www.ietf.org/rfc/rfc3720.txt＞
【非特許文献２】青木直孝、「特集：最新IPストレージ技術「iSCSI」」、平成１４年１０月５日、［平成２４年４月１３日検索］、アイティメディア株式会社、インターネット＜URL：http://www.atmarkit.co.jp/fnetwork/tokusyuu/16iscsi/iscsi01.html＞
【発明の概要】
【発明が解決しようとする課題】
【００１０】
コンピュータ装置におけるデータのバックアップは、現在動作中のそのコンピュータの動作を止めずにある特定の時点の動作状態を記憶して、不具合が発生してもその時点の動作状態をすぐに再現して動作を継続できるものであることが望ましい。かつ、そのコンピュータの構成を可能な限り変更せずにバックアップが可能なものであれば、さらに望ましい。
【００１１】
しかしながら、そのコンピュータのオペレーティングシステム（ＯＳ）上でバックアップ用のアプリケーションを動作させることは、そのＯＳと該ＯＳ上で動作する他のアプリケーションの動作を阻害もしくは大きく遅延させることとなる。従って、そのようなバックアップは、たとえば業務に係る負荷の少ない深夜などに、他のアプリケーションの動作を停止して行う必要がある。これでは、動作中の状態を取得することは困難である。
【００１２】
また、バックアップ専用のミニＯＳによってコンピュータを起動してバックアップの動作を行うという方法もあるが、これではアプリケーションのみならず通常のＯＳも起動できないので、動作中の状態を取得することは不可能である。
【００１３】
あるいは、バックアップ取得専用のストレージ機器を接続し、これによってバックアップの動作を行うという方式もある。この方式だと、上記のようなＯＳや他のアプリケーションの動作に対する悪影響はないが、このような装置によるバックアップに対応したストレージ機器、あるいはコンピュータは限られており、しかも高価である。さらに、このストレージ機器を接続するに際して、ＯＳやアプリケーションの動作を一度停止する必要がある。
【００１４】
即ち、ＯＳやアプリケーションの動作を停止せず、必要な時にその動作状態を取得するというバックアップは、現状では困難である。この問題点を解決しうる技術は、前述の特許文献１〜７および非特許文献１〜２には、もちろん記載されていない。
【００１５】
本発明の目的は、ＯＳやアプリケーションの動作を停止することなく、そのコンピュータの動作状態を必要な時に取得することを可能とするバックアップ取得装置、バックアップ取得方法、およびバックアップ取得プログラムを提供することにある。
【課題を解決するための手段】
【００１６】
上記目的を達成するため、本発明に係るバックアップ取得装置は、動作中のコンピュータ装置とこれに接続されて動作するメインストレージ装置との間に接続され、このメインストレージ装置の記憶内容のバックアップを取得するバックアップ取得装置であって、メインストレージ装置の記憶内容を併設されたバックアップストレージ装置にコピーするバックアップ実行部と、バックアップ実行部の動作中にコンピュータ装置からデータ書き込み命令を受信した場合に、このデータ書き込み命令の対象データおよび受信時刻に「未反映」を示す値の記録フラグを付加して予め備えられた記憶手段にジャーナルとして記憶するジャーナル取得部と、ジャーナル取得部が新しいデータを記憶した場合に、ジャーナルに記憶されたデータの中で最も古くかつ記録フラグの値が「未反映」であるデータを記憶手段にスナップショットとして記憶するスナップショット取得部とを有すると共に、ジャーナル取得部が、スナップショットに記憶されたデータの記録フラグの値を「反映済」に更新することを特徴とする。
【００１７】
上記目的を達成するため、本発明に係るバックアップ取得方法は、動作中のコンピュータ装置とこれに接続されて動作するメインストレージ装置との間に接続され、このメインストレージ装置の記憶内容のバックアップを取得するバックアップ取得装置にあって、メインストレージ装置の記憶内容をバックアップ実行部が併設されたバックアップストレージ装置にコピーし、この記憶内容のコピーの動作中にコンピュータ装置からデータ書き込み命令を受信した場合に、このデータ書き込み命令の対象データおよび受信時刻に「未反映」を示す値の記録フラグを付加してジャーナル取得部が予め備えられた記憶手段にジャーナルとして記憶し、ジャーナルに新しいデータが記憶された場合に、ジャーナルに記憶されたデータの中で最も古くかつ記録フラグの値が「未反映」であるデータをスナップショット取得部が記憶手段にスナップショットとして記憶し、スナップショットに記憶されたデータの記録フラグの値をジャーナル取得部が「反映済」に更新することを特徴とする。
【００１８】
上記目的を達成するため、本発明に係るバックアップ取得プログラムは、動作中のコンピュータ装置とこれに接続されて動作するメインストレージ装置との間に接続され、このメインストレージ装置の記憶内容のバックアップを取得するバックアップ取得装置にあって、バックアップ取得装置が備えるプロセッサに、メインストレージ装置の記憶内容を併設されたバックアップストレージ装置にコピーする手順、この記憶内容のコピーの動作中にコンピュータ装置からデータ書き込み命令を受信した場合に、このデータ書き込み命令の対象データおよび受信時刻に「未反映」を示す値の記録フラグを付加して予め備えられた記憶手段にジャーナルとして記憶する手順、ジャーナルに新しいデータが記憶された場合に、ジャーナルに記憶されたデータの中で最も古くかつ記録フラグの値が「未反映」であるデータを記憶手段にスナップショットとして記憶する手順、およびスナップショットに記憶されたデータの記録フラグの値を「反映済」に更新する手順を実行させることを特徴とする。
【発明の効果】
【００１９】
本発明は、上記したように、メインストレージ装置の記憶内容を併設されたバックアップストレージ装置にコピーしている最中に書き込み命令を受信した場合に、これをジャーナルおよびスナップショットとして記憶しておくように構成したので、コンピュータ装置の動作に影響を与えることはない。これによって、ＯＳやアプリケーションの動作を停止することなく、そのコンピュータの動作状態を必要な時に取得することが可能であるという、優れた特徴を持つバックアップ取得装置、バックアップ取得方法、およびバックアップ取得プログラムを提供することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施形態に係るバックアップシステムの構成について示す説明図である。
【図２】図１に示したバックアップシステムが使用するｉＳＣＳＩプロトコルにおけるｉＳＣＳＩ階層モデルについて示す説明図である。
【図３】図１で示したバックアップ取得装置のジャーナル取得部が記録するジャーナルの内容について示す説明図である。
【図４】図１で示したバックアップ取得装置のスナップショット取得部が記録するスナップショットの内容について示す説明図である。
【図５】図１に示したバックアップシステムで、当該システム全体のｉＳＣＳＩセッション切り替えの動作について示す説明図である。
【図６】図５に示したバックアップシステムのｉＳＣＳＩセッション切り替えの動作を表すフローチャートである。
【図７】図１に示したバックアップシステムで、当該システムのバックアップの取得の動作について示す説明図である。
【図８】図７に示したバックアップシステムのバックアップの取得の動作を表すフローチャートである。
【図９】図１に示したバックアップシステムで、図７〜８に示したバックアップ取得の動作を行っている間にｉＳＣＳＩイニシエータからライト命令が発せられた場合の動作について示す説明図である。
【図１０】図９に示したバックアップシステムでバックアップ取得中にライト命令が発せられた場合の動作を表すフローチャートである。
【図１１】図１に示したバックアップシステムで、図７〜８に示したバックアップ取得の動作を行っている間にｉＳＣＳＩイニシエータからリード命令が発せられた場合の動作について示す説明図である。
【図１２】図１１に示したバックアップシステムでバックアップ取得中にリード命令が発せられた場合の動作を表すフローチャートである。
【図１３】図１に示したバックアップシステムで、ジャーナルおよびスナップショットに記録されているデータをメインストレージ装置に反映させる最新化の動作について示す説明図である。
【図１４】図１３に示したバックアップシステムのデータの最新化の動作を表すフローチャートである。
【図１５】図１に示したバックアップシステムで、バックアップを終了してバックアップ取得装置をｉＳＣＳＩイニシエータ装置から切り離す動作について示す説明図である。
【図１６】図１５に示したバックアップシステムのバックアップ終了の動作を表すフローチャートである。
【図１７】図１５〜１６のステップＳ６０１として示した、更新内容のメインストレージ装置への反映完了までの処理量が少なくなったか否かの判定の動作を表すフローチャートである。
【発明を実施するための形態】
【００２１】
（実施形態）
以下、本発明の実施形態の構成について添付図１に基づいて説明する。
最初に、本実施形態の基本的な内容について説明し、その後でより具体的な内容について説明する。
本実施形態に係るバックアップ取得装置２０は、動作中のコンピュータ装置（ｉＳＣＳＩイニシエータ装置１０）とこれに接続されて動作するメインストレージ装置３０との間に接続され、このメインストレージ装置の記憶内容のバックアップを取得するバックアップ取得装置である。このバックアップ取得装置は、メインストレージ装置の記憶内容を併設されたバックアップストレージ装置４０にコピーするバックアップ実行部１０２と、バックアップ実行部の動作中にコンピュータ装置からデータ書き込み命令を受信した場合に、このデータ書き込み命令の対象データおよび受信時刻に「未反映」を示す値の記録フラグを付加して予め備えられた記憶手段にジャーナル１１１として記憶するジャーナル取得部１０３と、ジャーナル取得部が新しいデータを記憶した場合に、ジャーナルに記憶されたデータの中で最も古くかつ記録フラグの値が「未反映」であるデータを記憶手段にスナップショットとして記憶するスナップショット取得部１０４とを有すると共に、ジャーナル取得部１０３が、スナップショットに記憶されたデータの記録フラグの値を「反映済」に更新する。
【００２２】
また、バックアップ実行部１０２の動作中にコンピュータ装置からデータ読み出し命令を受信した場合に、スナップショット取得部１０４が、このデータ読み出し命令の読み取り対象のアドレスがスナップショットに記録されているデータのアドレスと一致するか否かを判断すると共に、一致すればスナップショットから、一致しなければメインストレージ装置から当該データを読み出してコンピュータ装置に返却するという機能を有する。
【００２３】
そして、バックアップ実行部の動作の終了後、スナップショット１１２を複製してこの複製の内容をメインストレージ装置に書き込む最新化実行部１０５を有する。この最新化実行部１０５は、複製の内容の書き込みの動作の終了後、複製を削除し、複製の作成後に受け付けられたデータ書き込み命令およびデータ読み出し命令について再びスナップショットを複製して書き込む処理を繰り返す。
【００２４】
さらに、最新化実行部１０５の動作終了までの残り時間を計算すると共に、この残り時間がコンピュータ装置にタイムアウトを起こさせる時間以下であればこのコンピュータ装置からのコマンドの受付を一旦停止して動作終了を待ってからコンピュータ装置の接続先をメインストレージ装置３０に切り替えさせる最新化終了処理部１０６も有する。そして、このコンピュータ装置の接続先の切り替えを、ｉＳＣＳＩ規格のリダイレクト命令によって行う。
【００２５】
以上の構成を備えることにより、バックアップ取得装置２０は、ＯＳやアプリケーションの動作を停止することなく、ｉＳＣＳＩイニシエータ装置１０の動作状態を必要な時に取得することが可能となる。
以下、これをより詳細に説明する。
【００２６】
図１は、本発明の実施形態に係るバックアップシステム１の構成について示す説明図である。バックアップシステム１は、サーバコンピュータであるｉＳＣＳＩイニシエータ装置１０と、それとは別のコンピュータ装置であるバックアップ取得装置２０と、ｉＳＣＳＩイニシエータ装置１０が通常動作時に読み書きするデータを記憶するメインストレージ装置３０と、メインストレージ装置３０のバックアップデータを記憶するバックアップストレージ装置４０とが、イーサネット（登録商標）などのような公知の接続規格を介して相互に接続されて構成されている。
【００２７】
ｉＳＣＳＩイニシエータ装置１０の備えている演算手段（プロセッサ１１）では、基本ソフトウェアであるオペレーティングシステム１１ａと、そのオペレーティングシステムの制御下でｉＳＣＳＩプロトコルによる装置内部および他装置との間でのデータ交換を制御するｉＳＣＳＩイニシエータ１１ｂとが動作する。これら以外の要素については、本実施形態を説明する上では特に必要ではないので、図１では記載を省略する。
【００２８】
即ち、ｉＳＣＳＩイニシエータ装置１０には、ハードウェア的にもソフトウェア的にも、新しい要素を追加する必要は特にない。ｉＳＣＳＩイニシエータ１１ｂは、Ｉ／Ｏタイムアウトを発生させずに接続先のｉＳＣＳＩターゲットを切り替えることができるが、これもｉＳＣＳＩによる通常の動作の範囲内である。
【００２９】
バックアップ取得装置２０は、コンピュータ装置としての基本的な構成を備える。即ち、コンピュータプログラムを実行する主体であるプロセッサ２１と、データを記憶する記憶手段２２と、ｉＳＣＳＩイニシエータ装置１０との間でのデータ通信を介在する上位側インタフェース２３（ＮＩＣ：Network Interface Card）と、メインストレージ装置３０およびバックアップストレージ装置４０との間でのデータ通信を介在する下位側インタフェース２４（ＨＢＡ：Host Bus Adopter）とを備える。
【００３０】
プロセッサ２１は、バックアップ取得プログラムが動作することにより、後述するｉＳＣＳＩ制御部１０１、バックアップ実行部１０２、ジャーナル取得部１０３、スナップショット取得部１０４、最新化実行部１０５、および最新化終了処理部１０６の各々として動作する。
【００３１】
また、記憶手段２２には、後述するジャーナル１１１、およびスナップショット１１２が記憶されるための領域が予め確保されている。動作状態によっては、スナップショットの複製１１３と、更新時刻情報１１４も記憶される。これらについても後述する。
【００３２】
ｉＳＣＳＩイニシエータ装置１０の通常動作時には、メインストレージ装置３０がｉＳＣＳＩターゲットとなり、ｉＳＣＳＩイニシエータ装置１０とメインストレージ装置３０との間はイーサネットなどを介して直接的に接続されてｉＳＣＳＩセッションが構築され、ｉＳＣＳＩイニシエータ装置１０による動作中のデータがメインストレージ装置３０に記憶される。ここでいう「直接的」な接続とは、バックアップ取得装置２０を介さずにｉＳＣＳＩセッションが構築されるという意味であり、たとえばルータやハブなどのようなネットワーク機器を全く経由しないという意味ではない。
【００３３】
バックアップ取得が必要な時には、ｉＳＣＳＩイニシエータ装置１０とメインストレージ装置３０との間のｉＳＣＳＩセッションは一旦切断され、バックアップ取得装置２０がｉＳＣＳＩターゲットとなってｉＳＣＳＩイニシエータ装置１０との間でｉＳＣＳＩセッションを構築する。バックアップ取得装置２０はメインストレージ装置３０とも接続されているので、ｉＳＣＳＩイニシエータ装置１０はｉＳＣＳＩによってメインストレージ装置３０に動作中のデータを記憶することが可能である。バックアップ取得が終了したら、ｉＳＣＳＩイニシエータ装置１０とバックアップ取得装置２０との間のｉＳＣＳＩセッションは切断され、ｉＳＣＳＩイニシエータ装置１０とメインストレージ装置３０との間のｉＳＣＳＩセッションが再び構築され、通常動作状態に戻る。
【００３４】
バックアップ取得装置２０とバックアップストレージ装置４０との間の接続は、ｉＳＣＳＩ規格に準拠したものである必要は無い。たとえばｉＳＣＳＩであればイーサネット、ＦＣならばファイバチャネルなど、バックアップストレージ装置４０がサポートするＩ／Ｏプロトコルに適合した接続でありさえすればよい。
【００３５】
図２は、図１に示したバックアップシステム１が使用するｉＳＣＳＩプロトコルにおけるｉＳＣＳＩ階層モデルについて示す説明図である。ｉＳＣＳＩでは、処理要求元であるイニシエータ５０（本実施形態ではｉＳＣＳＩイニシエータ装置１０）が発した要求に従って、ターゲット６０（本実施形態ではバックアップ取得装置２０およびメインストレージ装置３０）がデータ保存などの処理を行ってレスポンスを要求元に返す。
【００３６】
その際、イニシエータ５０で動作するＳＣＳＩアプリケーション５１からの送受信対象データを含んだＳＣＳＩ層５２からのＳＣＳＩコマンドであるＳＣＳＩ  ＣＤＢ（Command Descriptor Blick）は、ｉＳＣＳＩ層５３でｉＳＣＳＩ  ＰＤＵ（Protocol Data Unit）としてカプセル化処理され、ＴＣＰ／ＩＰ層５４およびデータリンク層・物理層５５を介して、通常のＴＣＰ／ＩＰプロトコルにてＩＰネットワーク７０を通じてターゲット６０に送信される。
【００３７】
ターゲット６０では、データリンク層・物理層６５およびＴＣＰ／ＩＰ層６４を介してイニシエータ５０から受信したｉＳＣＳＩ  ＰＤＵから、ｉＳＣＳＩ層６３でＳＣＳＩ  ＣＤＢと対象データとが抽出され、ＳＣＳＩ層６２およびデバイスサーバ６１に渡される。ターゲット６０側からイニシエータ５０に返されるレスポンスについては、これと逆方向の処理が行われる。
【００３８】
図１で示したｉＳＣＳＩイニシエータ装置１０のｉＳＣＳＩイニシエータ１１ｂは、図２でいえばイニシエータ５０のｉＳＣＳＩ層５３としての処理を実行する。また、バックアップ取得装置２０のｉＳＣＳＩ制御部１０１は、図２でいえばターゲット６０のｉＳＣＳＩ層６３としての処理を実行する。
【００３９】
図３は、図１で示したバックアップ取得装置２０のジャーナル取得部１０３が記録するジャーナル１１１の内容について示す説明図である。また図４は、図１で示したバックアップ取得装置２０のスナップショット取得部１０４が記録するスナップショット１１２の内容について示す説明図である。
【００４０】
ｉＳＣＳＩ制御部１０１は、ｉＳＣＳＩイニシエータ１１ｂから発せられたｉＳＣＳＩ  ＰＤＵをターゲット６０として受信し、そこからＳＣＳＩ  ＣＤＢを抽出する。ジャーナル取得部１０３は、そのＳＣＳＩ  ＣＤＢ内容を解析し、内容がライト（write）命令であれば、そのライト命令の受信時刻１１１ａ、対象データ１１１ｂ、および記録フラグ１１１ｃをジャーナル１１１に記録する。ここで記録フラグ１１１ｃとは、対象データ１１１ｂをスナップショット１１２に反映したか否かを示す２値データである。「０」は未反映、「１」は反映済をそれぞれ表す。
【００４１】
また、ｉＳＣＳＩ制御部１０１がターゲット６０として受信したｉＳＣＳＩ  ＰＤＵの内容がリード（read）命令であれば、このリード命令はジャーナル１１１には記録しないが、リード命令の対象であるアドレスのデータをジャーナル１１１で確認する。そのアドレスのデータがジャーナル１１１にあり、かつその中に記録フラグ１１１ｃ＝「０（未反映）」であるものが１つでも含まれている場合には、データの整合性を保つため、記録フラグ１１１ｃ＝「１（反映済）」となるまでリード処理を行わない。
【００４２】
スナップショット取得部１０４は、ライト命令を受信した場合、そのライト命令で更新されるデータを、更新対象となる論理アドレス（ＬＢＡ: Logical Block Addressing）に対応するマップとしてスナップショット１１２に記録する。また、ｉＳＣＳＩ制御部１０１がリード命令を受信した場合、そのリード命令で読み出す対象となるデータがスナップショット１１２に含まれている場合、そこに保持されているデータをｉＳＣＳＩイニシエータ装置１０（イニシエータ５０）に返却する。対象データがスナップショット１１２に含まれていない場合には、そのデータをメインストレージ装置３０から読み出して、同様にｉＳＣＳＩイニシエータ装置１０（イニシエータ５０）に返却する。
【００４３】
図４では、スナップショット１１２を複数のセルに区分されたマップとして表している。各々のセルが、ＬＢＡのアドレスに対応しているものであり、その対応するアドレス範囲を示すセルに、ライト命令で書き込むべきデータを記録している。図４では、そのデータを「Ａ」「Ｂ」「Ｃ」…の記号で表している。空欄のセルは、そのアドレス範囲に書き込むべきデータが記録されていないことを意味する。図４はあくまで、スナップショット１１２のそのアドレスのデータの有無を示しているに過ぎないものであり、実際のメインストレージ装置３０上のそのアドレスのデータの有無とは直接関係ない。
【００４４】
また、バックアップ実行部１０２、最新化実行部１０５、および最新化終了処理部１０６の各々の機能および動作については後述する。
【００４５】
（ｉＳＣＳＩセッションの切り替え）
図５は、図１に示したバックアップシステム１で、当該システム全体のｉＳＣＳＩセッション切り替えの動作について示す説明図である。図６は、図５に示したバックアップシステム１のｉＳＣＳＩセッション切り替えの動作を表すフローチャートである。ジャーナル１１１およびスナップショット１１２に記憶されているデータは、図５以降でも、図３〜４と同様の形で示されている。
【００４６】
この動作の前提として、ｉＳＣＳＩイニシエータ装置１０のオペレーティングシステム１１ａが通常動作時に使用するメインストレージ装置３０を、下位側インタフェース２４にも接続して、バックアップ取得装置２０からもアクセス可能に設定する。このようにしておけば、ｉＳＣＳＩイニシエータ装置１０がバックアップ取得装置２０をターゲットとしてｉＳＣＳＩセッションを構築しても、ｉＳＣＳＩセッション切り替え前と同じメインストレージ装置３０を利用することが可能となる。
【００４７】
まず、メインストレージ装置３０はｉＳＣＳＩイニシエータ装置１０に対してリダイレクト（redirect）命令、即ちｉＳＣＳＩセッションのターゲットをメインストレージ装置３０からバックアップ取得装置２０に切り替える命令を発行する（ステップＳ１０１）。このリダイレクト命令を発行させる動作は、たとえば、メインストレージ装置３０の側にリダイレクト命令を発行するＡＰＩ（Application Program Interface）を設け、このＡＰＩをｉＳＣＳＩイニシエータ装置１０もしくはバックアップ取得装置２０から実行させることを契機とすることができる。
【００４８】
この命令を受けたｉＳＣＳＩイニシエータ装置１０のｉＳＣＳＩイニシエータ１１ｂは、メインストレージ装置３０との間のｉＳＣＳＩセッションを一旦閉じて、新たにバックアップ取得装置２０をターゲットとするｉＳＣＳＩセッションを構築するよう、バックアップ取得装置２０に対してセッション構築要求を発する（ステップＳ１０２）。
【００４９】
このセッション構築要求を受けたバックアップ取得装置２０では、ジャーナル取得部１０３がジャーナル１１１を、またスナップショット取得部１０４がスナップショット１１２を各々初期化する（ステップＳ１０３）。そして、これらの初期化が完了したら、ｉＳＣＳＩ制御部１０１がセッション構築のレスポンスをｉＳＣＳＩイニシエータ１１ｂに返す（ステップＳ１０４）。
【００５０】
これで、ｉＳＣＳＩセッションの切り替えが完了し、バックアップ取得の準備が整ったこととなる。前述のように、このｉＳＣＳＩイニシエータ１１ｂは、オペレーティングシステム１１ａに対してＩ／Ｏエラーを報告することなく、このステップＳ１０１〜１０４の処理が可能である。
【００５１】
ただし、この動作で利用するｉＳＣＳＩリダイレクト命令は、ｉＳＣＳＩの仕様に含まれてはいるが、実際の実装は各ベンダに依存している状況である。そのため、メインストレージ装置３０に予めこのｉＳＣＳＩリダイレクト命令が設定されていて、かつ任意のタイミングでメインストレージ装置３０上のｉＳＣＳＩターゲットから実行できるような実装が必要である。
【００５２】
また、ｉＳＣＳＩイニシエータ１１ｂの側にも、このｉＳＣＳＩリダイレクト命令に応じてｉＳＣＳＩターゲットを変更できる実装が必要である。より具体的には、ｉＳＣＳＩターゲットに対するログイン情報をｉＳＣＳＩイニシエータ１１ｂ上で管理し、バックアップを取得したい場合には操作者の任意のタイミングで切り替えを行うことのできる機能である。
【００５３】
この時、ｉＳＣＳＩイニシエータ１１ｂはメインストレージ装置３０に対するｉＳＣＳＩセッションを一度クローズするが、オペレーティングシステム１１ａに対してＩ／Ｏが途絶したことを通知しないようにする。またオペレーティングシステム１１ａがＩ／Ｏエラーを検出するタイムアウト時間内に、切り替え先として登録されているバックアップ取得装置２０をターゲットとするｉＳＣＳＩセッションを構築する。
【００５４】
（バックアップの取得）
図７は、図１に示したバックアップシステム１で、当該システムのバックアップの取得の動作について示す説明図である。図８は、図７に示したバックアップシステム１のバックアップの取得の動作を表すフローチャートである。
【００５５】
まず、バックアップ取得装置２０のバックアップ実行部１０２がメインストレージ装置３０のバックアップ対象となる論理ディスク情報を読み取り（ステップＳ２０１）、このデータをバックアップストレージ装置４０に書き込む（ステップＳ２０２）。
【００５６】
この読み取り（リード）と書き込み（ライト）の動作は、ｉＳＣＳＩイニシエータ１１ｂがバックアップ取得装置２０をターゲットとするｉＳＣＳＩセッションの構築を完了した時に開始される。また、このリードとライトを行っている間、バックアップ取得装置２０はメインストレージ装置３０へのデータの更新を停止する。
【００５７】
従って、メインストレージ装置３０のデータは、バックアップ取得装置２０へｉＳＣＳＩアクセスパスが変更されてバックアップの取得が開始された時点のものに固定され、その時点のデータがバックアップとしてバックアップストレージ装置４０にコピーされる。
【００５８】
（バックアップ取得中のライト命令）
図９は、図１に示したバックアップシステム１で、図７〜８に示したバックアップ取得の動作を行っている間にｉＳＣＳＩイニシエータ１１ｂからライト命令が発せられた場合の動作について示す説明図である。図１０は、図９に示したバックアップシステム１でバックアップ取得中にライト命令が発せられた場合の動作を表すフローチャートである。
【００５９】
バックアップ実行部１０２がバックアップを実行している間に、バックアップ取得装置２０がｉＳＣＳＩイニシエータ装置１０からｉＳＣＳＩ  ＰＤＵを受けると、ｉＳＣＳＩ制御部１０１がこのｉＳＣＳＩ  ＰＤＵをＳＣＳＩ  ＣＤＢに変換して（ステップＳ３０１）その内容がライト命令であるか否かを判断する（ステップＳ３０２）。ライト命令でない場合の動作は後述する。
【００６０】
ステップＳ３０２でライト命令であると判断された場合、ジャーナル取得部１０３はこのＳＣＳＩ  ＣＤＢの受信時刻１１１ａ、対象データ１１１ｂ、および記録フラグ１１１ｃ＝「０」をジャーナル１１１に記録する（ステップＳ３０３）。そして、ジャーナル１１１に記録されているデータの中で、記録フラグ１１１ｃ＝「０」でかつ受信時刻１１１ａが最も古いものをスナップショット取得部１０４に渡す。スナップショット取得部１０４はこれをスナップショット１１２に記録する（ステップＳ３０４）。
【００６１】
そして、ジャーナル取得部１０３は、スナップショット取得部１０４に渡してスナップショット１１２に記録させたデータの記録フラグ１１１ｃ＝「１」として、ライト作業完了のレスポンスをｉＳＣＳＩイニシエータ１１ｂに返す（ステップＳ３０５）。
【００６２】
これによって、バックアップ取得装置２０からメインストレージ装置３０に対して発生するライト処理を省略して処理のオーバーヘッドを削減しつつ、メインストレージ装置３０の情報の状態をｉＳＣＳＩセッションのパスをバックアップ取得装置２０へ変更したときの状態に保つことを可能にしている。
【００６３】
（バックアップ取得中のリード命令）
図１１は、図１に示したバックアップシステム１で、図７〜８に示したバックアップ取得の動作を行っている間にｉＳＣＳＩイニシエータ１１ｂからリード命令が発せられた場合の動作について示す説明図である。図１２は、図１１に示したバックアップシステム１でバックアップ取得中にリード命令が発せられた場合の動作を表すフローチャートである。
【００６４】
バックアップ実行部１０２がバックアップを実行している間に、バックアップ取得装置２０がｉＳＣＳＩイニシエータ装置１０からｉＳＣＳＩ  ＰＤＵを受けると、ｉＳＣＳＩ制御部１０１がこのｉＳＣＳＩ  ＰＤＵをＳＣＳＩ  ＣＤＢに変換して（ステップＳ４０１）その内容がリード命令であるか否かを判断する（ステップＳ４０２）。このステップＳ４０１〜４０２の動作は、図９〜１０のステップＳ３０１〜３０２に示したライト命令の場合の動作と共通でよい。
【００６５】
ステップＳ４０２でリード命令であると判断された場合、スナップショット取得部１０４はその読み取り対象となるデータのアドレス（ＬＢＡ）がスナップショット１１２に記録されているアドレスに一致するか否かを判断する（ステップＳ４０３）。ステップＳ４０３で一致すると判断された場合、スナップショット取得部１０４はそのデータをスナップショット１１２から読み取ってｉＳＣＳＩイニシエータ１１ｂに返して（ステップＳ４０４）処理を終了する。
【００６６】
ステップＳ４０３で一致しないと判断された場合、スナップショット取得部１０４はジャーナル１１１に対象となるそのアドレスのデータで記録フラグ１１１ｃ＝「０」であるものが含まれているか否かを判断し（ステップＳ４０５）、含まれていなければメインストレージ装置３０からそのアドレスのデータを読み出してｉＳＣＳＩイニシエータ１１ｂに返して（ステップＳ４０６）処理を終了する。ステップＳ４０５で、記録フラグ１１１ｃ＝「０」であるものが含まれていると判断された場合、これが記録フラグ１１１ｃ＝「１」となるまで待つ。
【００６７】
この処理によって、バックアップ取得装置２０とメインストレージ装置３０との間でデータの整合性を保ちつつ、バックアップ取得開始以後に更新されたデータを読み取ることも可能となる。
【００６８】
以上ここまでで、バックアップ実行部１０２が図７〜８に示したバックアップ取得の動作を行っている間にｉＳＣＳＩイニシエータ１１ｂからライト命令が発せられた場合の動作（図９〜１０）、およびリード命令が発せられた場合の動作（図１１〜１２）について説明した。
【００６９】
これらの動作は、メインストレージ装置３０の更新を停止して、その時点で固定されたデータをバックアップ実行部１０２がバックアップストレージ装置４０にコピーしている動作を停止せずに行われる。従って、このバックアップを行っている間も、オペレーティングシステム１１ａの（即ちｉＳＣＳＩイニシエータ装置１０の）動作を停止する必要は無い。また、バックアップ実行部１０２の動作に対する妨害も最小限に抑えられる。
【００７０】
しかしながら、この状態で動作を続けると、メインストレージ装置３０のデータは更新されず、ただジャーナル１１１およびスナップショット１１２に記録されるバックアップ開始時点からの差分データが増加していくだけである。このままｉＳＣＳＩイニシエータ装置１０とバックアップ取得装置２０との間のｉＳＣＳＩセッションを閉じても、オペレーティングシステム１１ａの期待する情報と実際のメインストレージ装置３０の内容との間で整合性が取れていないこととなる。これでは、ｉＳＣＳＩイニシエータ装置１０は正常に動作できない。
【００７１】
従って、図７〜８に示したバックアップ取得が終了した直後に、ジャーナル１１１およびスナップショット１１２に記録されている差分データをメインストレージ装置３０に反映させる動作が必要となる。以後、この動作をデータの「最新化」という。最新化実行部１０５は、この最新化の動作を実行する。以下これについて説明する。
【００７２】
（データの最新化）
図１３は、図１に示したバックアップシステム１で、ジャーナル１１１およびスナップショット１１２に記録されているデータをメインストレージ装置３０に反映させる最新化の動作について示す説明図である。図１４は、図１３に示したバックアップシステム１のデータの最新化の動作を表すフローチャートである。
【００７３】
図７〜８に示したバックアップ取得の動作が終了すると、最新化実行部１０５は、スナップショット１１２に記録されたデータを複製して、これをスナップショットの複製１１３として記憶手段２２に記憶させ、スナップショットの複製１１３を作成した時刻を更新時刻情報１１４としてこれも記憶手段２２に記憶させる（ステップＳ５０１）。この作成時刻をＴとする。そして最新化実行部１０５は、スナップショットの複製１１３の内容をメインストレージ装置３０に書き込んで反映させる（ステップＳ５０２）。これを書き込み完了まで継続する（ステップＳ５０３）。
【００７４】
以上のステップＳ５０１〜５０３の処理が実行されている間、ｉＳＣＳＩ制御部１０１はオペレーティングシステム１１ａからのｉＳＣＳＩ  ＰＤＵを待ち受ける。そのｉＳＣＳＩ  ＰＤＵを受信した場合、ｉＳＣＳＩ制御部１０１がこのｉＳＣＳＩ  ＰＤＵをＳＣＳＩ  ＣＤＢに変換して（ステップＳ５１１）、その内容がリード命令であるかライト命令であるかを判断する（ステップＳ５１２）。このステップＳ５１１〜５１２の動作は、図９〜１０のステップＳ３０１〜３０２に示したライト命令の場合、あるいは図１１〜１２のステップＳ４０１〜４０２に示したリード命令の場合の動作と共通でよい。
【００７５】
ライト命令である場合、ジャーナル取得部１０３（ジャーナル１１１）およびスナップショット取得部１０４（スナップショット１１２）は、図９〜１０のステップＳ３０３〜３０５と同一の動作を行う（ステップＳ５１３）。リード命令である場合、ジャーナル取得部１０３（ジャーナル１１１）およびスナップショット取得部１０４（スナップショット１１２）は、ステップＳ４０６でデータを読み出す対象がメインストレージ装置３０からバックアップストレージ装置４０に変更されるだけで、あとは図１１〜１２のステップＳ４０３〜４０６と同一の動作を行う（ステップＳ５１４）。
【００７６】
前述の通り、最新化実行部１０５がメインストレージ装置３０に書き込んでいるのはスナップショットの複製１１３の内容であるので、ステップＳ５１１〜５１４でジャーナル１１１およびスナップショット１１２に対してなされた変更の影響は受けず、またその書き込みの動作が妨害されることもない。
【００７７】
そして最新化実行部１０５は、スナップショットの複製１１３の内容のメインストレージ装置３０への書き込みが完了したか否かを判断し（ステップＳ５０３）、完了していなければ書き込み処理を継続する。完了したら、スナップショットの複製１１３を記憶手段２２から削除し（ステップＳ５０４）、ステップＳ５０１で更新時刻情報１１４として記憶された作成時刻Ｔよりも後にジャーナル１１１およびスナップショット１１２に記録された内容があるか否かを判断する（ステップＳ５０５）。
【００７８】
作成時刻Ｔ以降の内容がなければそのまま処理を終了し、作成時刻Ｔ以降の内容があればそれらについて、ステップＳ５０１〜５０２に戻って処理を繰り返す。
【００７９】
以上の処理によって、ジャーナル１１１およびスナップショット１１２に記録された内容を順次メインストレージ装置３０に書き込んで反映させ、メインストレージ装置３０の内容とオペレーティングシステム１１ａの期待する情報との間の差分を順次少なくしていく。
【００８０】
（バックアップ終了の動作）
最新化実行部１０５による処理が進んで、ジャーナル１１１およびスナップショット１１２に記録された内容でメインストレージ装置３０に反映されていない分の内容が少なくなったら、最新化終了処理部１０６がそのことを検出して、バックアップ取得装置２０をｉＳＣＳＩイニシエータ装置１０から切り離す処理を行う。以下、これについて説明する。
【００８１】
図１５は、図１に示したバックアップシステム１で、バックアップを終了してバックアップ取得装置２０をｉＳＣＳＩイニシエータ装置１０から切り離す動作について示す説明図である。図１６は、図１５に示したバックアップシステム１のバックアップ終了の動作を表すフローチャートである。
【００８２】
まず、最新化終了処理部１０６は、ジャーナル１１１およびスナップショット１１２の内容のメインストレージ装置３０への反映完了までの処理量が少なくなったか否かについて判断し（ステップＳ６０１、その検出方法および判断基準については後述）、少なくなったと判断したら、オペレーティングシステム１１ａがＩ／Ｏタイムアウトと判断しない時間範囲内で、次のステップＳ６０２〜６０４の処理を行う。
【００８３】
即ち、最新化終了処理部１０６はまず、ｉＳＣＳＩ制御部１０１にオペレーティングシステム１１ａからのｉＳＣＳＩ  ＰＤＵの受付を停止させ（ステップＳ６０２）、その停止している間に、最新化実行部１０５がジャーナル１１１およびスナップショット１１２の内容のメインストレージ装置３０への反映を全て完了したか否かを判定する（ステップＳ６０３）。反映が完了してなければ、完了するまで待つ。
【００８４】
そして反映が完了したら、図５〜６の処理とは逆に、ｉＳＣＳＩ制御部１０１からｉＳＣＳＩイニシエータ装置１０に対してリダイレクト命令を発行して、ｉＳＣＳＩセッションのターゲットをバックアップ取得装置２０からメインストレージ装置３０に切り替えさせて（ステップＳ６０４）処理を終了する。これで、図５〜６のｉＳＣＳＩセッション切り替えを行う前、即ちバックアップ取得の準備が整う前の状態に戻る。
【００８５】
図１７は、図１５〜１６のステップＳ６０１として示した、更新内容のメインストレージ装置３０への反映完了までの処理量が少なくなったか否かの判定の動作を表すフローチャートである。最新化終了処理部１０６は、下位側インタフェース２４でバックアップ取得装置２０からメインストレージ装置３０へのデータの平均書き込み速度（バイト／秒）を取得する（ステップＳ７０１）。
【００８６】
続いて、最新化終了処理部１０６は、ジャーナル１１１に残っているメインストレージ装置３０への反映が完了していない未反映データの総量（バイト）を取得し（ステップＳ７０２）、ここで取得した未反映データの総量を、ステップＳ７０１で取得した平均書き込み速度で除算して、データ反映予想残り時間を算出する（ステップＳ７０３）。
【００８７】
そして、最新化終了処理部１０６は、このデータ反映予想残り時間が、オペレーティングシステム１１ａがＩ／Ｏタイムアウトと判断する時間（ｉＳＣＳＩデータレスポンスタイムアウト、またはＴＣＰセッションタイムアウト）より短いか否かを判定する（ステップＳ７０４）。短いと判断されなければ、最新化実行部１０５による処理を継続させる。短いと判断されたら、図１５〜１６のステップＳ６０２以降に進む。
【００８８】
（第１の実施形態の全体的な動作）
次に、上記の実施形態の全体的な動作について説明する。
本実施形態に係るバックアップ取得方法は、動作中のコンピュータ装置とこれに接続されて動作するメインストレージ装置との間に接続され、このメインストレージ装置の記憶内容のバックアップを取得するバックアップ取得装置にあって、メインストレージ装置の記憶内容をバックアップ実行部が併設されたバックアップストレージ装置にコピーし（図８・ステップＳ２０１〜２０２）、この記憶内容のコピーの動作中にコンピュータ装置からデータ書き込み命令を受信した場合に（図１０・ステップＳ３０１〜３０２）、このデータ書き込み命令の対象データおよび受信時刻に「未反映」を示す値の記録フラグを付加してジャーナル取得部が予め備えられた記憶手段にジャーナルとして記憶し（図１０・ステップＳ３０３）、ジャーナルに新しいデータが記憶された場合に、ジャーナルに記憶されたデータの中で最も古くかつ記録フラグの値が「未反映」であるデータをスナップショット取得部が記憶手段にスナップショットとして記憶し（図１０・ステップＳ３０４）、スナップショットに記憶されたデータの記録フラグの値をジャーナル取得部が「反映済」に更新する（図１０・ステップＳ３０５）。
【００８９】
また、記憶内容のコピーの動作中にコンピュータ装置からデータ読み出し命令を受信した場合に（図１２・ステップＳ４０１〜４０２）、このデータ読み出し命令の読み取り対象のアドレスがスナップショットに記録されているデータのアドレスと一致するか否かをスナップショット取得部が判断し（図１２・ステップＳ４０３）、一致すればスナップショット取得部がスナップショットから当該データを読み出し（図１２・ステップＳ４０４）、一致しなければスナップショット取得部がメインストレージ装置から当該データを読み出してコンピュータ装置に返却する（図１２・ステップＳ４０５）。
【００９０】
そして、記憶内容のコピーの動作の終了後、最新化実行部がスナップショットを複製して（図１４・ステップＳ５０１）この複製の内容をバックアップストレージ装置に書き込む（図１４・ステップＳ５０２）。
【００９１】
ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行するバックアップ取得装置２０のプロセッサ２１に実行させるようにしてもよい。本プログラムは、非一時的な記録媒体、例えば、ＤＶＤ、ＣＤ、フラッシュメモリ等に記録されてもよい。その場合、本プログラムは、記録媒体からコンピュータによって読み出され、実行される。
この動作により、本実施形態は以下のような効果を奏する。
【００９２】
（本実施形態によって得られる効果）
本実施形態は、ｉＳＣＳＩの仕様にあるリダイレクト機能、あるいはｉＳＣＳＩイニシエータによるパスの切り替え（ターゲットの変更）を利用することによって、コンピュータ装置（ｉＳＣＳＩイニシエータ装置１０）とメインストレージ装置３０との間にバックアップ取得装置２０を接続している。また、バックアップの取得中にコンピュータ装置から発せられたリードおよびライト命令をジャーナルおよびスナップショットに記憶し、バックアップ取得の完了後にジャーナルおよびスナップショットの内容をメインストレージ装置に反映させている。
【００９３】
従って、本実施形態によれば、動作中の既存のｉＳＣＳＩイニシエータ装置１０およびメインストレージ装置３０との間で構築された環境をほとんど変更せず、またｉＳＣＳＩイニシエータ装置１０およびメインストレージ装置３０との間のＩ／Ｏを止めることなく、即ちｉＳＣＳＩイニシエータ装置１０（オペレーティングシステム１１ａ）の動作に影響を与えることなく、バックアップの取得が可能となる。
【００９４】
その際、ｉＳＣＳＩイニシエータ装置１０およびメインストレージ装置３０との間で発生するＩ／Ｏにも、メインストレージ装置３０に対して直接Ｉ／Ｏを行うことはないので、オーバーヘッドによる性能の劣化はほとんど発生しない。
【００９５】
また、ジャーナルおよびスナップショットの内容の反映の終了を適切なタイミングで判定して、再びリダイレクト命令を発することにより、ｉＳＣＳＩイニシエータ装置１０およびメインストレージ装置３０との間の接続をバックアップ取得前の状態に戻すことも可能である。
【００９６】
本実施形態によれば、イーサネットを利用したｉＳＣＳＩのセッション構築の特性を利用して、バックアップ専用の装置を常時接続しておく必要はなく、必要な場合にだけバックアッププログラムを動作させて、特定のコンピュータ装置をバックアップ取得装置として機能させることもできる。従って、コンピュータのリソースを節約することが可能であるという効果もある。
【００９７】
これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。
【００９８】
上述した実施形態について、その新規な技術内容の要点をまとめると、以下のようになる。なお、上記実施形態の一部または全部は、新規な技術として以下のようにまとめられるが、本発明は必ずしもこれに限定されるものではない。
【００９９】
（付記１）  動作中のコンピュータ装置とこれに接続されて動作するメインストレージ装置との間に接続され、このメインストレージ装置の記憶内容のバックアップを取得するバックアップ取得装置であって、
前記メインストレージ装置の記憶内容を併設されたバックアップストレージ装置にコピーするバックアップ実行部と、
前記バックアップ実行部の動作中に前記コンピュータ装置からデータ書き込み命令を受信した場合に、このデータ書き込み命令の対象データおよび受信時刻に「未反映」を示す値の記録フラグを付加して予め備えられた記憶手段にジャーナルとして記憶するジャーナル取得部と、
前記ジャーナル取得部が新しいデータを記憶した場合に、前記ジャーナルに記憶されたデータの中で最も古くかつ前記記録フラグの値が「未反映」であるデータを前記記憶手段にスナップショットとして記憶するスナップショット取得部と
を有すると共に、
前記ジャーナル取得部が、前記スナップショットに記憶されたデータの前記記録フラグの値を「反映済」に更新する
ことを特徴とするバックアップ取得装置。
【０１００】
（付記２）  前記バックアップ実行部の動作中に前記コンピュータ装置からデータ読み出し命令を受信した場合に、前記スナップショット取得部が、このデータ読み出し命令の読み取り対象のアドレスが前記スナップショットに記録されているデータのアドレスと一致するか否かを判断すると共に、一致すれば前記スナップショットから、一致しなければ前記メインストレージ装置から当該データを読み出して前記コンピュータ装置に返却する機能を有することを特徴とする、付記１に記載のバックアップ取得装置。
【０１０１】
（付記３）  前記バックアップ実行部の動作の終了後、前記スナップショットを複製してこの複製の内容を前記メインストレージ装置に書き込む最新化実行部を有することを特徴とする、付記２に記載のバックアップ取得装置。
【０１０２】
（付記４）  前記最新化実行部が、前記複製の内容の書き込みの動作の終了後、前記複製を削除し、前記複製の作成後に受け付けられた前記データ書き込み命令およびデータ読み出し命令について再び前記スナップショットを複製して書き込む処理を繰り返すことを特徴とする、付記３に記載のバックアップ取得装置。
【０１０３】
（付記５）  前記最新化実行部の動作終了までの残り時間を計算すると共に、この残り時間が前記コンピュータ装置にタイムアウトを起こさせる時間以下であればこのコンピュータ装置からのコマンドの受付を一旦停止して前記動作終了を待ってから前記コンピュータ装置の接続先を前記メインストレージ装置に切り替えさせる最新化終了処理部を有することを特徴とする、付記３に記載のバックアップ取得装置。
【０１０４】
（付記６）  前記コンピュータ装置の接続先の切り替えを、ｉＳＣＳＩ規格のリダイレクト命令によって行うことを特徴とする、付記５に記載のバックアップ取得装置。
【０１０５】
（付記７）  動作中のコンピュータ装置とこれに接続されて動作するメインストレージ装置との間に接続され、このメインストレージ装置の記憶内容のバックアップを取得するバックアップ取得装置にあって、
前記メインストレージ装置の記憶内容をバックアップ実行部が併設されたバックアップストレージ装置にコピーし、
この記憶内容のコピーの動作中に前記コンピュータ装置からデータ書き込み命令を受信した場合に、このデータ書き込み命令の対象データおよび受信時刻に「未反映」を示す値の記録フラグを付加してジャーナル取得部が予め備えられた記憶手段にジャーナルとして記憶し、
前記ジャーナルに新しいデータが記憶された場合に、前記ジャーナルに記憶されたデータの中で最も古くかつ前記記録フラグの値が「未反映」であるデータをスナップショット取得部が前記記憶手段にスナップショットとして記憶し、
前記スナップショットに記憶されたデータの前記記録フラグの値を前記ジャーナル取得部が「反映済」に更新する
ことを特徴とするバックアップ取得方法。
【０１０６】
（付記８）  前記記憶内容のコピーの動作中に前記コンピュータ装置からデータ読み出し命令を受信した場合に、このデータ読み出し命令の読み取り対象のアドレスが前記スナップショットに記録されているデータのアドレスと一致するか否かを前記スナップショット取得部が判断し、
一致すれば前記スナップショットから前記スナップショット取得部が当該データを読み出し、一致しなければ前記メインストレージ装置から前記スナップショット取得部が当該データを読み出して前記コンピュータ装置に返却することを特徴とする、付記７に記載のバックアップ取得方法。
【０１０７】
（付記９）  前記記憶内容のコピーの動作の終了後、最新化実行部が前記スナップショットを複製してこの複製の内容を前記メインストレージ装置に書き込むことを特徴とする、付記８に記載のバックアップ取得方法。
【０１０８】
（付記１０）  動作中のコンピュータ装置とこれに接続されて動作するメインストレージ装置との間に接続され、このメインストレージ装置の記憶内容のバックアップを取得するバックアップ取得装置にあって、
前記バックアップ取得装置が備えるプロセッサに、
前記メインストレージ装置の記憶内容を併設されたバックアップストレージ装置にコピーする手順、
この記憶内容のコピーの動作中に前記コンピュータ装置からデータ書き込み命令を受信した場合に、このデータ書き込み命令の対象データおよび受信時刻に「未反映」を示す値の記録フラグを付加して予め備えられた記憶手段にジャーナルとして記憶する手順、
前記ジャーナルに新しいデータが記憶された場合に、前記ジャーナルに記憶されたデータの中で最も古くかつ前記記録フラグの値が「未反映」であるデータを前記記憶手段にスナップショットとして記憶する手順、
および前記スナップショットに記憶されたデータの前記記録フラグの値を「反映済」に更新する手順
を実行させることを特徴とするバックアップ取得プログラム。
【産業上の利用可能性】
【０１０９】
コンピュータ装置のデータのバックアップ用に幅広く利用することが可能である。特に、常時稼働が要求される業務システム、データベース、ウェブなどの用途のサーバコンピュータ、あるいは複数台のコンピュータに対するリモートバックアップなどに適する。
【符号の説明】
【０１１０】
１  バックアップシステム
１０  ｉＳＣＳＩイニシエータ装置
１１、２１  プロセッサ
１１ａ  オペレーティングシステム
１１ｂ  ｉＳＣＳＩイニシエータ
２０  バックアップ取得装置
２１  プロセッサ
２２  記憶手段
２３  上位側インタフェース
２４  下位側インタフェース
３０  メインストレージ装置
４０  バックアップストレージ装置
１０１  ｉＳＣＳＩ制御部
１０２  バックアップ実行部
１０３  ジャーナル取得部
１０４  スナップショット取得部
１０５  最新化実行部
１０６  最新化終了処理部
１１１  ジャーナル
１１２  スナップショット
１１３  スナップショットの複製
１１４  更新時刻情報
【図１】
0005874526.tif 000002
【図２】
0005874526.tif 000003
【図３】
0005874526.tif 000004
【図４】
0005874526.tif 000005
【図５】
0005874526.tif 000006
【図６】
0005874526.tif 000007
【図７】
0005874526.tif 000008
【図８】
0005874526.tif 000009
【図９】
0005874526.tif 000010
【図１０】
0005874526.tif 000011
【図１１】
0005874526.tif 000012
【図１２】
0005874526.tif 000013
【図１３】
0005874526.tif 000014
【図１４】
0005874526.tif 000015
【図１５】
0005874526.tif 000016
【図１６】
0005874526.tif 000017
【図１７】
0005874526.tif 000018