(57)【特許請求の範囲】
【請求項１】
データのコピー制御を行う制御装置であって、
バックアップを作成する指示を取得した時にコピー元の記録装置とコピー先の記録装置とが関連づけられた後にデータの更新要求を取得した場合に、前記コピー元の記録装置が記録するデータから当該更新要求による更新対象となるデータであって更新前のデータを抽出する更新データ抽出手段と、
前記コピー元の記録装置と論理的に等しい記録容量を備え、かつ物理的に前記コピー元の記録装置よりも少ない記録容量を備えており、前記コピー元の記録装置と対応づけられた前記コピー先の記録装置の空き領域の先頭アドレスから順番に前記更新データ抽出手段により抽出された更新前のデータを格納し、当該コピー先の記録装置が記録するデータの論理的なアドレスと物理的なアドレスとを対応付けた論理物理対応情報を作成するコピー実行手段と、
前記更新データ抽出手段により前記更新前のデータが抽出された後に、前記コピー元の記録装置に対して前記更新要求に基づく更新処理を実行する更新実行手段と
を備えたことを特徴とする制御装置。
【請求項２】
前記コピー先の記録装置からデータを読み出す読み出し要求を取得した場合に、読み出し対象となるデータが前記コピー先の記録装置に存在するか否かを前記論理物理対応情報に基づいて判定する読み出し判定手段と、
前記読み出し判定手段によって、読み出し対象となるデータが前記コピー先の記録装置に存在しないと判定された場合に、前記コピー元の記録装置から読み出し対象となるデータを検索し、出力する読み出しデータ検索手段とを更に備えたことを特徴とする請求項１に記載の制御装置。
【請求項３】
前記コピー先の記録装置におけるデータの更新要求を取得した場合に、当該更新要求による更新対象となるデータであって更新前のデータが当該コピー先の記録装置に存在するか否かを前記論理物理対応情報に基づいて判定する更新判定手段と、
前記更新判定手段によって、前記更新前のデータが前記コピー先の記録装置に存在しないと判定された場合に、当該更新前のデータを記録した記録装置から当該更新前のデータをコピー先の記録装置に記録し、コピー先の記録装置が記録した当該更新前のデータを更新する更新処理手段とを更に備えたことを特徴とする請求項１または２に記載の制御装置。
【請求項４】
データのコピー制御を行うコピー制御方法であって、
バックアップを作成する指示を取得した時にコピー元の記録装置とコピー先の記録装置とが関連づけられた後にデータの更新要求を取得した場合に、前記コピー元の記録装置が記録するデータから当該更新要求による更新対象となるデータであって更新前のデータを抽出する更新データ抽出工程と、
前記コピー元の記録装置と論理的に等しい記録容量を備え、かつ物理的に前記コピー元の記録装置よりも少ない記録容量を備えており、前記コピー元の記録装置と対応づけられた前記コピー先の記録装置の空き領域の先頭アドレスから順番に前記更新データ抽出工程により抽出された更新前のデータを格納し、当該コピー先の記録装置が記録するデータの論理的なアドレスと物理的なアドレスとを対応付けた論理物理対応情報を作成するコピー実行工程と、
前記更新データ抽出工程により前記更新前のデータが抽出された後に、前記コピー元の記録装置に対して更新処理を実行する更新実行工程と
を含んだことを特徴とするコピー制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、データのバックアップを行う制御装置およびコピー制御方法に関し、特に、アドバンスト・コピー機能をサポートすると共に、コピー先の記憶装置にかかるコストを削減可能な制御装置およびコピー制御方法に関するものである。
【背景技術】
【０００２】
従来、データを管理する管理装置等は、データの記録・再生にかかる信頼性を向上させるために、複数のハードディスク（以下、ＨＤＤと表記する）を接続してディスクアレイシステムを構成し、データを管理している。また、管理装置は、ＨＤＤに記録されたデータを保護するために、ＨＤＤに記録されたデータを他の記憶装置（例えば、テープや他のＨＤＤなど）に記憶させて、データのバックアップを行っている。
【０００３】
しかし、近年、バックアップ対象となるデータの量が大幅に増加しているため、データのバックアップに要する時間が大幅に増加してしまい、管理装置はバックアップ以外の業務処理を効率よく実行することができないという問題があった。そこで、この問題を解消すべく、特許文献１では、アドバンスト・コピー機能、すなわち、ＯＰＣ（One Point Copy）を利用して、データのバックアップを行っている。
【０００４】
図１４は、従来のアドバンスト・コピー機能を説明するための説明図である。図１４に示すように、従来のアドバンスト・コピーは、コピー元となるデータの容量と同容量のデータの記憶容量を有するコピー先のＨＤＤを準備し、コピー元のデータを全て、コピー先のＨＤＤに転送し、コピー先のＨＤＤに記録されたデータを利用してバックアップを行う。
【０００５】
このように、管理装置は、アドバンスト・コピー機能を用いて、コピー元のデータをコピー先のＨＤＤに一旦転送することで、コピー元のＨＤＤとコピー先のＨＤＤとを論理的に切り離すことができるので、バックアップと平行して業務処理を実行することができ、バックアップに要する時間の問題を解消していた。
【０００６】
【特許文献１】特開２００１−１６６９７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述したアドバンスト・コピー機能をサポートするためには、コピー元のデータの容量と同容量の記憶容量を有するコピー先の記憶装置（ＨＤＤ）を予め備えておく必要があったため、アドバンスト・コピー機能を利用する場合には多大なコストがかかるという問題があった。
【０００８】
また、近年では、膨大な数のＨＤＤにより構成されるディスクアレイシステムによってデータの管理が行われているため、複数のＨＤＤに対してアドバンスト・コピー機能をサポートすべく、コピー先となる記憶装置が複数必要となり、この問題は更に深刻なものとなっている。
【０００９】
すなわち、アドバンスト・コピー機能をサポートすると共に、コピー先の記憶装置にかかるコストを削減することが極めて重要な課題となっている。
【００１０】
この発明は、上述した従来技術による問題点を解消するためになされたものであり、アドバンスト・コピー機能をサポートすると共に、コピー先の記憶装置にかかるコストを削減することができる制御装置およびコピー制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するため、本発明は、データのコピー制御を行う制御装置であって、データの更新要求を取得した場合に、コピー元の記録装置が記録するデータの中で更新対象となるデータを抽出する更新データ抽出手段と、前記コピー元の記録装置と論理的に等しい記録容量を備え、物理的に前記コピー元の記録装置よりも少ない記録容量を備えるコピー先の記録装置の空き領域を検索し、検索した空き領域の先頭アドレスから前記データを順にコピーするコピー実行手段と、を備えたことを特徴とする。
【００１２】
また、本発明は、上記発明において、前記コピー実行手段は、前記コピー先の記録装置が記録するデータの論理的なアドレスと物理的なアドレスと対応付けた論理物理対応情報を作成することを特徴とする。
【００１３】
また、本発明は、上記発明において、前記コピー先の記録装置からデータを読み出す読み出し要求を取得した場合に、読み出し対象となるデータが前記コピー先の記録装置に存在するか否かを前記論理物理対応情報に基づいて判定する読み出し判定手段と、前記読み出し判定手段によって、読み出し対象となるデータが前記コピー先の記録装置に存在しないと判定された場合に、前記コピー元の記録装置から読み出し対象となるデータを検索し、出力する読み出しデータ検索手段とを更に備えたことを特徴とする。
【００１４】
また、本発明は、上記発明において、前記コピー先の記録装置におけるデータの更新要求を取得した場合に、更新対象となるデータが当該コピー先の記録装置に存在するか否かを前記論理物理対応情報に基づいて判定する更新判定手段と、前記更新判定手段によって、更新対象となるデータが前記コピー先の記録装置に存在しないと判定された場合に、更新対象となるデータを記録した記録装置から更新対象となるデータをコピー先の記録装置に記録し、コピー先の記録装置が記録した更新対象となるデータを更新する更新処理手段とを更に備えたことを特徴とする。
【００１５】
また、本発明は、データのコピー制御を行うコピー制御方法であって、データの更新要求を取得した場合に、コピー元の記録装置が記録するデータの中で更新対象となるデータを抽出する更新データ抽出工程と、前記コピー元の記録装置と論理的に等しい記録容量を備え、物理的に前記コピー元の記録装置よりも少ない記録容量を備えるコピー先の記録装置の空き領域を検索し、検索した空き領域の先頭アドレスから前記データを順にコピーするコピー実行工程と、を含んだことを特徴とする。
【発明の効果】
【００１６】
本発明によれば、制御装置は、データの更新要求を取得した場合に、コピー元の記録装置が記録するデータの中で更新対象となるデータを抽出し、抽出したデータを物理的にコピー元の記録装置の記録容量より少ないコピー先の記録装置にコピーするので、コピー元のディスクに記録されたデータと同容量のコピー先ディスクを用いる必要性がなくなり、コピー先のディスクのデータ記録容量を節約することで、コストを削減することができる。
【００１７】
また、本発明によれば、制御装置は、コピー先の記録装置が記録するデータの論理的なアドレスと物理的なアドレスと対応付けた論理物理対応情報を作成するので、コピー先の記録装置に記録されたデータを適切に管理することができる。
【００１８】
また、本発明によれば、制御装置は、コピー先の記録装置からデータを読み出す読み出し要求を取得した場合に、読み出し対象となるデータが前記コピー先の記録装置に存在するか否かを論理物理対応情報に基づいて判定し、読み出し対象となるデータがコピー先の記録装置に存在しない場合に、コピー元の記録装置から読み出し対象となるデータを検索し、出力するので、コピー先のデータを節約した場合にでも、読み出し要求に効率よく応じることができる。
【００１９】
また、本発明によれば、制御装置は、コピー先の記録装置におけるデータの更新要求を取得した場合に、更新対象となるデータが当該コピー先の記録装置に存在するか否かを論理物理対応情報に基づいて判定し、更新対象となるデータがコピー先の記録装置に存在しないと判定した場合に、更新対象となるデータを記録した記録装置から更新対象となるデータをコピー先の記録装置に記録し、コピー先の記録装置が記録した更新対象となるデータを更新するので、コピー先のデータ容量を小さくしても、適切に更新対象となるデータを更新することができる。
【００２０】
本発明によれば、コピー制御方法は、データの更新要求を取得した場合に、コピー元の記録装置が記録するデータの中で更新対象となるデータを抽出し、抽出したデータを物理的にコピー元の記録装置の記録容量より少ないコピー先の記録装置にコピーするので、コピー元のディスクに記録されたデータと同容量のコピー先ディスクを用いる必要性がなくなり、コピー先のディスクのデータ記録容量を節約することで、コストを削減することができる。
【発明を実施するための最良の形態】
【００２１】
以下に添付図面を参照して、この発明に係る制御装置等の好適な実施の形態を詳細に説明する。
【実施例】
【００２２】
まず、本発明にかかる制御装置の特徴について説明する。図１は、本発明にかかる制御装置の特徴を説明するための説明図である。同図に示すように、本発明にかかる制御装置は、コピー元のディスクに記録されたデータを全てコピー先のディスクにコピーするのではなく、コピー元のディスクに記録されたデータのうち、更新が行われる領域のデータのみを、コピー先のディスクにコピーし、コピー先のディスクからテープなどの外部記録装置にデータを記録（バックアップ）することで、アドバンスト・コピー機能（ＯＰＣ＜One Point Copy＞）をサポートする。
【００２３】
一般的に、バックアップ対象となるデータの全領域に対してデータ更新が行われることは少なく、一部だけ更新されることが多い。そのため、コピー元のデータを全てコピー先のディスクにコピーすることは、物理容量的な無駄が大きい。そこで、本実施例では、更新対象となるデータのみを、コピー元のディスクからコピー先のディスクにコピーするので、上記したような物理容量的な無駄を省くことができ、アドバンスト・コピー機能におけるコストを大幅に削減することができる。
【００２４】
つぎに、本実施例にかかるディスクアレイ装置の構成について説明する。本実施例では、上記した制御装置の一例として、ディスクアレイ装置を例にあげて説明する。図２は、本実施例にかかるディスクアレイ装置の構成を示す機能ブロック図である。同図に示すように、このディスクアレイ装置５０は、ＣＡ６０〜６３、ディスク７０〜７３、ＣＭ１００，２００を有する。なお、ディスクアレイ装置５０は、ホストコンピュータ１０に接続されている。ホストコンピュータ５０は、データを書き込む書き込み要求またはデータを読み出す読み出し要求などをディスクアレイ装置５０に行う装置である。
【００２５】
ＣＡ（Channel Adaptor）６０〜６３は、所定のプロトコルを利用してホストコンピュータ１０とデータ通信を行う装置である。ＣＡ６０，６１は、ホストコンピュータ１０およびＣＭ１００に接続され、ＣＡ６２，６３は、ホストコンピュータ１０およびＣＭ２００に接続されている。
【００２６】
ＣＭ（Centralized Module）１００，２００は、ディスク７０〜７３に対するデータの書込み処理、読込み処理、ディスク間でのコピー処理などの各処理を制御・管理する装置である。ディスク７０〜７３は、データを記録する記録装置である。ＣＭ１００およびＣＭ２００の構成は同様であるので、ここではＣＭ１００を例にあげてＣＭの説明を行うこととする。なお、ＣＭ１００およびＣＭ１００はバスなどによって相互に接続されおり、ＣＭ１００およびＣＭ２００は、ディスク７０〜７３に対するアクセスが可能となる。
【００２７】
ＣＭ１００は、制御部１１０、記憶部１２０、ＦＣ１３０，１４０を有する。制御部１１０は、ディスク７０〜７３に対するデータの読み出し処理、データの書き込み処理およびアドバンスト・コピー機能をサポートするためのコピー処理を実行する処理部である。
【００２８】
ここで、制御部１１０が行うアドバンスト・コピー機能をサポートするためのコピー処理について説明する。図３は、Session設定後のコピー処理を説明するための説明図である。コピーはSession（セッション）という単位で管理されており、このSessionは、図２に示したホストコンピュータ１０からの専用コマンドにて設定される。
【００２９】
Sessionの設定にて、コピー元のディスクとコピー先のディスクとが関連付けられ、コピー先に対してバックアップが行われる。ただし、従来のＯＰＣ（全面バックアップ方式）と異なり、Session設定後に全面バックアップは行われず、読み出し要求または書き込み要求の対象となったデータ領域のみをバックアップすることとなる。なお、コピー先のディスクに記録されたデータは、図示しないテープなどの外部記憶装置にバックアップされる。
【００３０】
図３の上から１段目に示すように、制御部１１０は、コピー元のディスクＡに対する書込み要求（write i/o）を受付けた場合に、書き込み対象となるデータを抽出し、抽出したデータをコピー先のディスクＢの空き領域に記録する。そして、制御部１１０は、バックアップ後に、コピー元のディスクＡに対する書き込み処理を実行する。
【００３１】
また、図３の上から２段目に示すように、制御部１１０は、コピー先のディスクＢに対する書き込み要求を取得した場合に、書き込み対象（データの更新対象）となるデータがコピー先のディスクＢに存在するか否かを判定する。そして、書込み対象となるデータがコピー先のディスクＢに存在する場合には、コピー先のディスクＢにデータを書き込む。
【００３２】
一方、書き込み対象となるデータがコピー先のディスクＢに存在しない場合には、制御部１１０は、書き込み対象となるデータをコピー元のディスクＡからコピー先のディスクＢにコピーした後、ディスクＢにデータの書き込み（データの更新）を行う。
【００３３】
また、図３の上から３段目に示すように、制御部１１０は、コピー先のディスクＢに対する読み出し要求を取得した場合に、読み出し対象となるデータがコピー先のディスクＢに存在するか否かを判定する。そして、読み出し対象となるデータがコピー先のディスクＢに存在する場合には、コピー先のディスクＢからデータを読み出し、ホストコンピュータ１０に出力する。
【００３４】
一方、図３の上から４段目に示すように、読み出し対象となるデータがコピー先のディスクＢに存在しない場合（未コピーの場合）には、読み出し対象となるデータをコピー元のディスクＡから読み出し、ホストコンピュータ１０に出力する。このとき、コピー先のディスクＢに対するコピーは行われない。
【００３５】
なお、制御部１１０は、Session削除後に、コピー元からコピー先のディスクにコピーしたデータを削除する。なぜなら、コピー先とコピー元との関連付けを削除することによって、バックアップデータは意味をなさなくなるからである。また、再度Sessionを設定したときのために、物理領域を初期化しておくことが望ましいからである。
【００３６】
続いて、Session設定前のコピー先のディスクＢにかかる振る舞いについて説明する。図４は、Session設定前のコピー先のディスクにかかる振る舞いを説明するための説明図である。これは、Session設定前に、制御部１１０は、コピー先のディスクＢをホストコンピュータ１０が認識できるように、ディスク固有の識別情報をディスクＢに書き込む必要があるからである。
【００３７】
図４の上から１段目に示すように、制御部１１０は、Session設定前にコピー先となるディスクＢにデータ（ディスクＢの識別情報など）を書き込む場合に、ディスクＢの空き領域にデータを記録する。
【００３８】
また、図４の上から２段目に示すように、制御部１１０は、Session設定前にコピー先となるディスクＢに対する読み出し要求（例えば、識別情報の読み出し要求）を取得した場合に、読み出し対象となるデータをディスクＢから読み出し、ホストコンピュータ１０に出力する。
【００３９】
一方、図４の上から３段目に示すように、制御部１１０は、読み出し対象となるデータが存在しない場合には、読み出し対象となるデータが存在しない旨を示す「０データ」をホストコンピュータ１０に出力する。
【００４０】
制御部１１０は、Sessionの設定前にディスクＢに書き込まれたデータを、その後のSession設定・解除で削除しない。これは、Session設定前にディスクに書き込まれた識別情報などが削除されることを防止するためである。
【００４１】
続いて、図３、４に示した処理を実現する制御部１１０の構成について説明する。図２に示すように、この制御部１１０は、セッション管理部１１０ａおよびリードライト実行部１１０ｂを有する。
【００４２】
セッション管理部１１０ａは、ホストコンピュータ１０からSessionの設定要求を取得した場合に、Sessionの設定対象となるコピー元のディスクと、コピー先のディスクとの間でSessionを設定する処理部である。ホストコンピュータ１０から取得するSessionの設定要求には、コピー元となるディスクの識別情報と、コピー先となるディスクの識別情報とが含まれている。例えば、コピー元となるディスクの識別情報が「ディスク７０」、コピー先となるディスクの識別情報が「ディスク７２」である場合に、セッション管理部１１０ａは、ディスク７０とディスク７２とでSessionを設定する。
【００４３】
また、セッション管理部１１０ａは、Sessionを設定する場合に、Copy Session管理データ１２０ａを作成し、記憶部１２０に記録する。ここで、Copy Session管理データ１２０ａは、コピー先およびコピー元のディスク間で設定されたSessionを管理するための情報である。
【００４４】
図５は、Copy Session管理データの一例を示す図である。同図に示すように、このCopy Session管理１２０ａは、コピー元LUN（Logical Unit Number）、コピー先LUN、コピー元コピー対象Start LBA（Logical Block Address）、コピー先コピー対象Start LBA、コピー対象LBA数、コピー状態管理Bit Mapを有する。
【００４５】
コピー元LUNは、コピー元のディスクにおける論理ユニット番号であり、コピー先LUNは、コピー先のディスクにおける論理ユニット番号である。例えば、コピー元LUNにディスク７０の論理ユニット番号（識別情報）を登録し、コピー先LUNにディスク７２の論理ユニット番号を登録することによって、ディスク７０およびディスク７１は互いに関連付けられる（Sessionが設定される）。
【００４６】
コピー元コピー対象Start LBAは、コピー元のディスクにおけるコピー対象のデータの開始アドレスを特定するための情報である。セッション管理部１１０ａは、ホストコンピュータ１０から書き込み要求を取得した場合に、コピー元のディスクにおける書き込み開始アドレスを特定し、特定したアドレスをこのコピー元コピー対象Start LBAに登録する。
【００４７】
コピー先コピー対象Start LBAは、コピー先のディスクにおけるコピーの開始アドレスを特定するための情報である。セッション管理部１１０ａは、コピー先のディスクにおける空き領域を検出し、検出した空き領域の先頭アドレスをこのコピー先コピー対象Start LBAに登録する。
【００４８】
コピー対象LBAは、コピー対象となるデータのLBA数を示す情報である。セッション管理部１１０ａは、ホストコンピュータ１０から書き込み要求を取得した場合などに、コピー対象となるデータのLBA数をカウントし、カウントしたLBA数をコピー対象LBAに登録する。コピー状態管理Bit Mapは、データのコピー状況を管理するための情報が記録される。
【００４９】
図２の説明にもどると、リードライト実行部１１０ｂは、ホストコンピュータ１０からの読み出し要求、書き込み要求に応じて、ディスクに対するデータの読み出しまたは書き込みを実行する処理部である。また、リードライト実行部１１０は、ホストコンピュータ１０から取得した書き込み対象となるデータや、ディスク７０〜７３から読み出したデータをユーザデータ１２０ｃとして、一旦記憶部１２０に記録する。
【００５０】
なお、リードライト実行部１１０ｂは、コピー先またはコピー元のディスクに対するデータの読み出しおよび書き込みを実行する場合には、記憶部１２０が記録する論理物理変換テーブル１２０ｂを利用してデータのバックアップを行う。この論理物理変換テーブル１２０ｂは、コピー先のディスクにおける論理LBAと物理LBAとの対応関係およびSessionの設定前・後の情報を有するテーブルである。
【００５１】
図６は、論理物理変換テーブル１２０ｂの一例を示す図である。同図に示すように、この論理物理変換テーブル１２０ｂは、論理LBA、物理LBA、Write識別子を有する。一例として、上から２行目を参照すると、論理LBA「１」は、物理LBA「１」に対応し、コピー元とコピー先でSessionが設定（すなわち設定後）されている。
【００５２】
また、図６の上から１行目を参照すると、論理LBA「０」に対する物理LBAが「―」となっている。これは、論理LBA「０」にかかるデータが、コピー元からコピー先のディスクにコピーされていない旨を示している。
【００５３】
ここで、リードライト実行部１１０ｂの処理について詳しく説明する。リードライト実行部１１０ｂは、コピー元のディスクに対する書き込み処理、コピー先のディスクに対する書き込み処理、コピー元のディスクに対する読み出し処理、コピー先のディスクに対する読み出し処理をそれぞれ実行する。
【００５４】
まず、リードライト実行部１１０ｂが行うコピー元のディスクに対する書き込み処理について説明する。リードライト実行部１１０ｂは、ホストコンピュータ１０からコピー元に対する書き込み要求を取得した場合に、Copy Session管理データ１２０ａを基にして、Sessionが設定されているか否かを判定する。
【００５５】
そして、Sessionが設定されていない場合には、リードライト実行部１１０ｂは、ホストコンピュータから取得したデータをコピー元のディスクに書き込む。一方、Sessionが設定されている場合には、リードライト実行部１１０ｂは、書き込み対象となっているデータ領域が、未コピーのデータ領域か否かを判定し、未コピーのデータ領域でない場合には、コピー元のディスクにデータを書き込む。
【００５６】
一方、書き込み対象となっているデータ領域が、未コピーのデータ領域である場合には、このデータ領域に記録されたデータをコピー先のディスクにコピーした後、コピー元のディスクにデータを書き込む。
【００５７】
続いて、リードライト実行部１１０ｂが行うコピー先のディスクに対する書き込み処理について説明する。リードライト実行部１１０ｂは、ホストコンピュータ１０からコピー先に対する書き込み要求を取得した場合に、Copy Session管理データ１２０ａを基にして、Sessionが設定されているか否かを判定する。
【００５８】
そして、Sessionが設定されていない場合には、リードライト実行部１１０ｂは、コピー先のディスクにおけるデータの空き領域を検出し、検出した空き領域の先頭アドレスから順にデータを書き込む（すなわち、前詰めでデータをディスクに記録する）。
【００５９】
一方、Sessionが設定されている場合には、リードライト実行部１１０ｂは、書き込み対象となっているデータが、コピー先のディスクに存在するか否かを判定し、コピー先のディスクにデータが存在する場合には、コピー先のディスクにデータを書き込む。
【００６０】
なお、コピー先のディスクにデータが存在しない場合には、リードライト実行部１１０ｂは、書き込み対象となるデータをコピー元のディスクから抽出し、コピー先のディスクにコピーした後に、データをコピー先のディスクに書き込む。
【００６１】
続いて、リードライト実行部１１０ｂが行うコピー元のディスクに対する読み出し処理について説明する。この場合、リードライト実行部１１０ｂはSessionの設定前・後に限らず、読み出し対象となるデータをコピー元のディスクから検索し、検索したデータをホストコンピュータ１０に出力する。
【００６２】
続いて、リードライト実行部１１０ｂが行うコピー先のディスクに対する読み出し処理について説明する。リードライト実行部１１０ｂは、ホストコンピュータ１０からコピー先に対する読み出し要求を取得した場合に、Copy Session管理データ１２０ａを基にしてSession設定されているか否かを判定する。
【００６３】
そして、Sessionが設定されていない場合には、リードライト実行部１１０ｂは、読み出し対象となるデータをコピー先のディスクから検索し、検索したデータをホストコンピュータ１０に出力する。なお、読み出し対象となるデータがコピー先のディスクに存在しない場合には、該当データが存在しない旨の情報「０データ」をホストコンピュータ１０に出力する。
【００６４】
一方、Sessionが設定されている場合には、リードライト実行部１１０ｂは、読み出し対象となるデータをコピー先のディスクから検索し、検索したデータをホストコンピュータ１０に出力する。なお、読み出し対象となるデータがコピー先のディスクに存在しない場合には、読み出し対象となるデータをコピー元のディスクから検索し、検索したデータをホストコンピュータ１０に出力する。
【００６５】
ところで、上述した制御部１１０は、図２に示すＦＣ１３０〜１３３をかいして、コピー先のディスクあるいはコピー元のディスクとなるディスク７０〜７３にアクセスすることとなる。ＦＣ１３０〜１３３は、所定のプロトコルを利用して、ディスク７０〜７３とそれぞれデータ通信を行う装置である。
【００６６】
つぎに、本実施例にかかる制御部１１０が行う処理をフローチャートにて説明する。図７は、制御部１１０がSession設定前にコピー先のディスクに対する書き込み要求を取得した場合の処理を示すフローチャートである。
【００６７】
図７に示すように、制御部１１０は、ホストコンピュータ１０から、コピー先のディスクに対する書き込み要求（write i/o）を取得し（ステップＳ１０１）、コピー先のディスクにかかる物理LBAの空きを検索する（ステップＳ１０２）。
【００６８】
そして、制御部１１０は、コピー先の物理ディスク上にデータを書き込み（ステップＳ１０３）、論理物理変換テーブル１２０ｃを更新する（ステップＳ１０４）。なお、制御部１１０が、コピー先のディスクにデータを書き込む場合には、データ空き領域のアドレスの小さい順に、データを書き込む。また、ステップＳ１０４における論理物理変換テーブル１２０ｂの更新では、書き込んだデータに対する論理LBAと物理LBAとの対応関係を論理物理変換テーブル１２０ｂに登録すると共に、Write識別子をSession設定前として登録する。
【００６９】
このように、制御部１１０は、Session設定前に、コピー先となるディスク装置に、データ（ディスクの識別情報など）を書き込むので、ホストコンピュータ１０はコピー先のディスク装置を適切に識別することができる。
【００７０】
続いて、制御部１１０が、Session設定前にコピー先のディスクに対する読み出し要求を取得した場合の処理について説明する。図８は、制御部１１０が、Session設定前にコピー先のディスクに対する読み出し要求を取得した場合の処理を示すフローチャートである。
【００７１】
図８に示すように、制御部１１０は、ホストコンピュータ１０から、コピー先のディスクに対する読み出し要求（read i/o）を取得し（ステップＳ２０１）、論理物理変換テーブル１２０ｂに基づいて読み出し対象となるデータがコピー先のディスクに存在するか否かを判定する（ステップＳ２０２）。
【００７２】
そして、読み出し対象となるデータがコピー先のディスクに存在する場合には（ステップＳ２０３，Ｙｅｓ）、論理物理変換を行い、該当データをホストコンピュータ１０に転送する（ステップＳ２０４）。一方、読み出し対象となるデータが存在しない場合には（ステップＳ２０３，Ｎｏ）、「０データ」をホストコンピュータ１０に転送する（ステップＳ２０４）。
【００７３】
このように、制御部１１０は、Session設定前であっても、論理物理変換テーブル１２０ｂに基づいて、コピー先となるディスクからデータを取得し、ホストコンピュータ１０に転送することができる。
【００７４】
続いて、制御部１１０が、Session設定後にコピー元のディスクに対する書き込み要求を取得した場合の処理について説明する。図９は、制御部１１０がSession設定後にコピー元のディスクに対する書き込み要求を取得した場合の処理を示すフローチャートである。
【００７５】
図９に示すように、制御部１１０は、ホストコンピュータ１０から、コピー元のディスクに対する書き込み要求（write i/o）を取得し（ステップＳ３０１）、データの書き込み先が未コピー領域か否かを判定する（ステップＳ３０２）。
【００７６】
そして、未コピー領域と判定した場合には（ステップＳ３０３，Ｙｅｓ）、制御部１１０は、コピー先物理LBAの空きを検索し（ステップＳ３０４）、コピー先の物理ディスク上に、コピー処理を実行する（ステップＳ３０５）。このステップＳ３０５において、制御部１１０は、未コピー領域のデータをコピー元のディスクから抽出し、抽出したデータをコピー先のディスクの空き領域にアドレスの小さい順番で書き込む。
【００７７】
続いて、制御部１１０は、論理物理変換テーブル１２０ｂの更新を行う（ステップＳ３０６）。ステップＳ３０６における更新において、制御部１１０は、書き込んだデータに対する論理LBAと物理LBAとの対応関係を論理物理変換テーブル１２０ｂに登録すると共に、Write識別子をSession設定後として登録する。
【００７８】
そして、制御部１１０は、コピー元のディスクに対するデータの書き込みを行う（ステップＳ３０７）。一方、制御部１１０が、未コピー領域ではないと判定した場合には（ステップＳ３０３，Ｎｏ）、そのままステップＳ３０７に移行する。
【００７９】
このように、制御部１１０は、Session設定後にコピー元に対する書き込み要求を取得し、書き込み対象となったデータが未コピーの場合に、未コピー領域のデータをコピー先のディスクにコピーするので、コピー先のディスク容量がコピー元のディスク容量よりも小さい場合であっても、アドバンスト・コピー機能をサポートすることができる。
【００８０】
続いて、制御部１１０がSession設定後にコピー先のディスクに対する書き込み要求を取得した場合の処理について説明する。図１０は、制御部１１０がSession設定後にコピー先のディスクに対する書き込み要求を取得した場合の処理を示すフローチャートである。
【００８１】
図１０に示すように、制御部１１０は、ホストコンピュータ１０から、コピー先のディスクに対する書き込み要求（write i/o）を取得し（ステップＳ４０１）、書き込み対象となるデータがコピー先に存在するか否かを論理物理変換テーブル１２０ｂに基づいて判定する（ステップＳ４０２）。
【００８２】
そして、データが存在しない場合には（ステップＳ４０３，Ｎｏ）、制御部１１０は、コピー先物理LBAの空きを検索し（ステップＳ４０４）、コピー先物理ディスク上にコピー処理を実行する（ステップＳ４０５）。制御部１１０は、ステップＳ４０５のコピー処理を実行する場合に、書き込み対象となるデータをコピー元のディスクから検索し、検索したデータをコピー先のディスクの空き領域にコピーする。また、制御部１１０は、コピー先にデータをコピーする場合には、空き領域の先頭アドレスから順番にコピーを実行する。
【００８３】
続いて、制御部１１０は、論理物理テーブル１２０ｂを更新する（ステップＳ４０６）。このステップＳ４０６において、制御部１１０は、論理LBAと物理LBAとの対応関係を論理物理テーブル１２０ｂに登録し、Write識別子をSession設定後として登録する。
【００８４】
一方、書き込み対象となるデータがコピー先のディスクに存在する場合には（ステップＳ４０３，Ｙｅｓ）、制御部１１０は、論理物理変換を行い、該当データ上に書き込みを実行する（ステップＳ４０７）。
【００８５】
このように、制御部１１０は、Session設定後にコピー先に対する書き込み要求を取得し、書き込み対象となったデータがコピー先のディスクに存在しない場合に、コピー元のディスクから書き込み対象となるデータを抽出してコピー先に記録し、データの書き込みを実行するので、コピー先のディスクに書き込み対象となるデータが存在しなくても、効率よくコピー先にデータの書き込みを実行することができる。
【００８６】
続いて、制御部１１０がSession設定後にコピー先のディスクに対する読み出し要求を取得した場合の処理について説明する。図１１は、制御部１１０がSession設定後にコピー先のディスクに対する読み出し要求を取得した場合の処理を示すフローチャートである。
【００８７】
図１１に示すように、制御部１１０は、ホストコンピュータ１０から、コピー先のディスクに対する読み出し要求（read i/o）を取得し（ステップＳ５０１）、論理物理変換テーブル１２０ｂを基にして読み出し対象となるデータがコピー先に存在するか否かを判定する（ステップＳ５０２）。
【００８８】
そして、読み出し対象のデータが存在する場合には（ステップＳ５０３，Ｙｅｓ）、制御部１１０は、論理物理変換を行い、該当データをホストコンピュータ１０に転送する（ステップＳ５０４）。
【００８９】
一方、読み出し対象のデータが存在しない場合には（ステップＳ５０３，Ｎｏ）、コピー元のディスクから該当データを検索し、検索したデータをホストコンピュータ１０に転送する（ステップＳ５０５）。
【００９０】
このように、制御部１１０は、読み出し対象となるデータがコピー先のディスクに存在しない場合に、コピー元のディスクから該当データを検索し、ホストコンピュータ１０に転送するので、アドバンスト・コピー機能をサポートする場合であっても、コピー元のディスクのデータ容量よりも小さいデータ容量のディスクをコピー先のディスクとして利用することができる。
【００９１】
つぎに、制御部１１０がSessionの削除要求をホストコンピュータ１０から取得した場合の処理について説明する。図１２は、制御部１１０がSessionの削除要求を取得した場合の処理を示すフローチャートである。
【００９２】
図１２に示すように、制御部１１０は、ホストコンピュータ１０からSessionの削除要求を取得し（ステップＳ６０１）、論理物理変換テーブル１２０ｂに基づいてSession設定後にデータが書き込まれた領域を初期化する（ステップＳ６０２）。このステップＳ６０２において、制御部１１０は、論理物理変換テーブル１２０ｂのWrite識別子「設定後」における物理ＬＢＡに対応するデータを初期化し、Write識別子を「設定前」に変更する。
【００９３】
そして、制御部１１０は、Sessionの削除を実行し（ステップＳ６０３）、Sessionの削除が完了した旨をホストコンピュータ１０に送信する（ステップＳ６０４）。
【００９４】
このように、制御部１１０は、ホストコンピュータ１０からSessionの削除要求を取得した場合に、Session設定後にコピー先のディスクに書き込まれたデータを削除するので、該当データを初期化したディスクを再度コピー先のディスクとして効率よく利用することができる。
【００９５】
上述してきたように、本実施例にかかるディスクアレイ装置５０は、制御部１１０が、コピー元のディスクとコピー先のディスクとのSessionを設定し、コピー元のディスクに記録されたデータを全てコピー先のディスクにコピーすることなく、書き込み対象となったデータ領域に記録されたデータのみをコピー先のディスクにコピーする。また、制御部１１０は、読み出し対象となったデータがコピー先のディスクに存在しない場合には、コピー元のディスクからデータを検索し、検索したデータをホストコンピュータ１０に転送するので、コピー元とコピー先とのディスクの容量を同容量にする必要性がなくなり、アドバンスト・コピー機能をサポートすると共に、コピー先の記憶装置にかかるコストを削減することができる。
【００９６】
ところで、上記の実施例で説明した制御装置（ディスクアレイ装置）の各処理は、リードライト処理に係るプログラムをコンピュータで実行することによって実現することができる。そこで、以下では、図１３を用いて、上記の実施例の制御装置と同様の機能を有するリードライト処理プログラムを実行するコンピュータの一例を説明する。図１３は、リードライト処理プログラムを実行するコンピュータを示す図である。
【００９７】
同図に示すように、コンピュータ３０は、入出力インターフェース３１、ＲＡＭ３２、ＲＯＭ３３、ＣＰＵ３４をバス３５で接続して構成される。入出力インターフェース３１は、キーボードなどの入力装置、図２に示したようなホストコンピュータ１０、ディスク装置等を接続するためのインターフェースである。
【００９８】
また、ＲＡＭ３２は、Copy Session管理データ３２ａ、論理物理変換テーブル３２ｂ、ユーザデータ３２ｃを記録する記録装置である。なお、Copy Session管理データ３２ａ、論理物理変換テーブル３２ｂ、ユーザデータ３２ｃは、図２に示した、Copy Session管理データ１２０ａ、論理物理変換テーブル１２０ｂ、ユーザデータ１２０ｃにそれぞれ対応する。
【００９９】
そして、コンピュータ３０におけるＲＯＭ３３には、上記の実施例の制御装置と同様の機能を発揮するリードライト処理プログラム、つまり、図１３に示すように、リードライト処理プログラム３３ｃが予め記憶されている。また、このＲＯＭ３３は、Copy Session管理データ３３ａ、論理物理変換テーブル３３ｂを記録している。この、Copy Session管理データ３３ａ、論理物理変換テーブル３３ｂはＣＰＵ３４ａによってＲＡＭ３２に読み出される。
【０１００】
ＣＰＵ３４は、このリードライト処理プログラム３３ｃをＲＯＭ３３から読み出して実行することで、図１３に示すように、リードライト実行プログラム３３ｃは、リードライト処理プロセス３４ａとして機能するようになる。ＣＰＵ３３ａは、ＲＡＭ３２ａに記録された各データを用いて、コピー元のディスクに記録されたデータをコピー先のディスクに書き込む。
【０１０１】
（付記１）データのコピー制御を行う制御装置であって、
データの更新要求を取得した場合に、コピー元の記録装置が記録するデータの中で更新対象となるデータを抽出する更新データ抽出手段と、
前記コピー元の記録装置と論理的に等しい記録容量を備え、物理的に前記コピー元の記録装置よりも少ない記録容量を備えるコピー先の記録装置の空き領域を検索し、検索した空き領域の先頭アドレスから前記データを順にコピーするコピー実行手段と、
を備えたことを特徴とする制御装置。
【０１０２】
（付記２）前記コピー実行手段は、前記コピー先の記録装置が記録するデータの論理的なアドレスと物理的なアドレスと対応付けた論理物理対応情報を作成することを特徴とする付記１に記載の制御装置。
【０１０３】
（付記３）前記コピー先の記録装置からデータを読み出す読み出し要求を取得した場合に、読み出し対象となるデータが前記コピー先の記録装置に存在するか否かを前記論理物理対応情報に基づいて判定する読み出し判定手段と、前記読み出し判定手段によって、読み出し対象となるデータが前記コピー先の記録装置に存在しないと判定された場合に、前記コピー元の記録装置から読み出し対象となるデータを検索し、出力する読み出しデータ検索手段とを更に備えたことを特徴とする付記２に記載の制御装置。
【０１０４】
（付記４）前記コピー先の記録装置におけるデータの更新要求を取得した場合に、更新対象となるデータが当該コピー先の記録装置に存在するか否かを前記論理物理対応情報に基づいて判定する更新判定手段と、前記更新判定手段によって、更新対象となるデータが前記コピー先の記録装置に存在しないと判定された場合に、更新対象となるデータを記録した記録装置から更新対象となるデータをコピー先の記録装置に記録し、コピー先の記録装置が記録した更新対象となるデータを更新する更新処理手段とを更に備えたことを特徴とする付記２または３に記載の制御装置。
【０１０５】
（付記５）データのコピー制御を行うコピー制御方法であって、
データの更新要求を取得した場合に、コピー元の記録装置が記録するデータの中で更新対象となるデータを抽出する更新データ抽出工程と、
前記コピー元の記録装置と論理的に等しい記録容量を備え、物理的に前記コピー元の記録装置よりも少ない記録容量を備えるコピー先の記録装置の空き領域を検索し、検索した空き領域の先頭アドレスから前記データを順にコピーするコピー実行工程と、
を含んだことを特徴とするコピー制御方法。
【０１０６】
（付記６）前記コピー実行工程は、前記コピー先の記録装置が記録するデータの論理的なアドレスと物理的なアドレスと対応付けた論理物理対応情報を作成することを特徴とする付記５に記載のコピー制御方法。
【０１０７】
（付記７）前記コピー先の記録装置からデータを読み出す読み出し要求を取得した場合に、読み出し対象となるデータが前記コピー先の記録装置に存在するか否かを前記論理物理対応情報に基づいて判定する読み出し判定工程と、前記読み出し判定工程によって、読み出し対象となるデータが前記コピー先の記録装置に存在しないと判定された場合に、前記コピー元の記録装置から読み出し対象となるデータを検索し、出力する読み出しデータ検索工程とを更に含んだことを特徴とする付記６に記載のコピー制御方法。
【０１０８】
（付記８）前記コピー先の記録装置におけるデータの更新要求を取得した場合に、更新対象となるデータが当該コピー先の記録装置に存在するか否かを前記論理物理対応情報に基づいて判定する更新判定工程と、前記更新判定工程によって、更新対象となるデータが前記コピー先の記録装置に存在しないと判定された場合に、更新対象となるデータを記録した記録装置から更新対象となるデータをコピー先の記録装置に記録し、コピー先の記録装置が記録した更新対象となるデータを更新する更新処理工程とを更に含んだことを特徴とする付記６または７に記載のコピー制御方法。
【０１０９】
（付記９）データのコピー制御を行う制御プログラムであって、
データの更新要求を取得した場合に、コピー元の記録装置が記録するデータの中で更新対象となるデータを抽出する更新データ抽出手順と、
前記コピー元の記録装置と論理的に等しい記録容量を備え、物理的に前記コピー元の記録装置よりも少ない記録容量を備えるコピー先の記録装置の空き領域を検索し、検索した空き領域の先頭アドレスから前記データを順にコピーするコピー実行手順と、
をコンピュータに実行させることを特徴とする制御プログラム。
【０１１０】
（付記１０）前記コピー実行手順は、前記コピー先の記録装置が記録するデータの論理的なアドレスと物理的なアドレスと対応付けた論理物理対応情報を作成することを特徴とする付記９に記載の制御プログラム。
【産業上の利用可能性】
【０１１１】
以上のように、本発明にかかる制御装置およびコピー制御方法は、コピー先のディスクで必要となる記憶容量を節約し、アドバンスト・コピー機能を低コストでサポートする場合に有用である。
【図面の簡単な説明】
【０１１２】
【図１】本発明にかかる制御装置の特徴を説明するための説明図である。
【図２】本実施例にかかるディスクアレイ装置の構成を示す機能ブロック図である。
【図３】Session設定後のコピー処理を説明するための説明図である。
【図４】Session設定前のコピー先のディスクにかかる振る舞いを説明するための説明図である。
【図５】Copy Session管理データの一例を示す図である。
【図６】論理物理変換テーブルの一例を示す図である。
【図７】制御部がSession設定前にコピー先のディスクに対する書き込み要求を取得した場合の処理を示すフローチャートである。
【図８】制御部が、Session設定前にコピー先のディスクに対する読み出し要求を取得した場合の処理を示すフローチャートである。
【図９】制御部がSession設定後にコピー元のディスクに対する書き込み要求を取得した場合の処理を示すフローチャートである。
【図１０】制御部がSession設定後にコピー先のディスクに対する書き込み要求を取得した場合の処理を示すフローチャートである。
【図１１】制御部がSession設定後にコピー先のディスクに対する読み出し要求を取得した場合の処理を示すフローチャートである。
【図１２】制御部がSessionの削除要求を取得した場合の処理を示すフローチャートである。
【図１３】リードライト処理プログラムを実行するコンピュータを示す図である。
【図１４】従来のアドバンスト・コピー機能を説明するための説明図である。
【符号の説明】
【０１１３】
１０    ホストコンピュータ
３０    コンピュータ
３１    入出力インターフェース
３２    ＲＡＭ
３２ａ，３３ａ  Copy Session管理データ
３２ｂ，３３ｂ  論理物理変換テーブル
３２ｃ  ユーザデータ
３３    ＲＯＭ
３３ｃ  リードライト処理プログラム
３４    ＣＰＵ
３４ａ  リードライト処理プロセス
３５    バス
５０    ディスクアレイ装置
６０，６１，６２，６３    ＣＡ
７０，７１，７２，７３    ディスク
１００，２００    ＣＭ
１１０，２１０    制御部
１１０ａ，２１０ａ  セッション管理部
１１０ｂ，２１０ｂ  リードライト実行部
１２０，２２０    記憶部
１２０ａ，２２０ａ  Copy Session管理データ
１２０ｂ，２２０ｂ  論理物理変換テーブル
１２０ｃ，２２０ｃ  ユーザデータ
１３０，１４０，２３０，２４０    ＦＣ
【図１】
0004667225.tif 000002
【図２】
0004667225.tif 000003
【図３】
0004667225.tif 000004
【図４】
0004667225.tif 000005
【図５】
0004667225.tif 000006
【図６】
0004667225.tif 000007
【図７】
0004667225.tif 000008
【図８】
0004667225.tif 000009
【図９】
0004667225.tif 000010
【図１０】
0004667225.tif 000011
【図１１】
0004667225.tif 000012
【図１２】
0004667225.tif 000013
【図１３】
0004667225.tif 000014
【図１４】
0004667225.tif 000015