(57)【要約】【課題】  ストレージ装置に格納されたボリュームについての複製であるセカンダリボリュームの作成を、自動的に適切に行えるようにする。また、セカンダリボリュームを利用するアプリケーションについてもその設定を適切に行えるようにする。【解決手段】  ストレージ管理部１３０はデータ変換バッチ実行部１４０からの要求に基づいて、拡張ボリューム管理テーブル１３２の情報を元に、ストレージ装置１００のセカンダリＶＯＬ作成部１１０を用いてセカンダリボリュームを作成し、データ変換バッチ実行プログラムに通知する。データ変換バッチ実行プログラムは、受信したセカンダリボリュームの情報より、利用するボリュームを決定し、実行プロセス制御部１４４を用いてセカンダリボリュームにあわせてバッチ実行プロセスの最適化を行う。【選択図】      図１
2006106985.tif 000002
【特許請求の範囲】
【請求項１】
計算機と、
前記計算機に接続されるストレージ装置とを有し、
前記ストレージ装置は１つ以上の記憶領域を保持し、
前記記憶領域には計算機が利用するデータを保持するボリュームを格納する計算機システムにおいて、
前記計算機は、ストレージ管理部と、前記複製ボリュームを利用するアプリケーション実行部を備え、
前記アプリケーション実行部は、アプリケーションを実行する指定ボリュームの複製ボリュームの作成を前記ストレージ管理部に指示し、
前記ストレージ管理部は、前記アプリケーション実行部からの指示に基づいて、前記ストレージ装置に前記ボリュームの１つ以上の複製ボリュームの作成を指示し、
前記ストレージ装置は、前記ストレージ管理部からの指示に従って、前記ボリュームの複製ボリュームを作成して前記記憶領域に記憶させる複製ボリューム作成部を備え、
前記ストレージ管理部は、前記アプリケーション実行部に前記複製ボリュームについての情報として、少なくとも複製ボリュームの作成数およびその特性を通知し、
前記アプリケーション実行部は作成された複製ボリュームの作成数およびその特性に応じ、そのアプリケーション実行プロセスを再構成し実行することを特徴とする計算機システム。
【請求項２】
請求項１記載の計算機システムにおいて、
前記アプリケーション実行部は、前記ストレージ管理部に対して、複製ボリュームの作成を要求する指示を送信するにあたって、
複製ボリュームについての条件情報を付加できることを特徴とする計算機システム。
【請求項３】
請求項１記載の計算機システムにおいて、
前記ストレージ管理部は、作成した複製ボリュームについて、前記複製ボリュームに前記アプリケーション実行部がアクセスするための情報である接続情報に付加して、前記複製ボリュームの、少なくとも性能に関わる情報もしくは構成に関わる情報である特性情報についても付加し、前記アプリケーション実行部に送信することを特徴とする計算機システム。
【請求項４】
請求項１記載の計算機システムにおいて、
前記アプリケーション実行部は、受信した複製ボリュームについての情報をもとに、利用する複製ボリュームを決定し、複製ボリューム上のデータにアクセスするアプリケーション実行プロセスを、利用する複製ボリュームの作成数および特性情報に基づいて再構成し実行することを特徴とする計算機システム。
【請求項５】
請求項１記載の計算機システムにおいて、
前記アプリケーション実行部は、利用しない複製ボリュームについての情報をストレージ管理部に送信し、
前記ストレージ管理部は、その送信された利用しない複製ボリュームについての情報をもとに、利用しない複製ボリュームの割り当てを解除することを前記ストレージ装置に指示することを特徴とする計算機システム。
【請求項６】
請求項１記載の計算機システムにおいて、
ボリュームを格納する記憶領域は物理デバイス上に構成され、
前記複製ストレージ作成部は、複製ボリュームを作成するに当たって、複製元ボリュームと複製ボリュームが同一の物理デバイスを共有しないように、前記複製ボリュームを作成することを特徴とする計算機システム。
【請求項７】
請求項６記載の計算機システムにおいて、
さらに前記複製ストレージ作成部は、同一の複製ボリュームを複数作成する場合に、複数の複製ボリュームのそれぞれが、同一の物理デバイスを共有しないように、前記複製ボリュームを作成することを特徴とする計算機システム。
【請求項８】
請求項１記載の計算機システムにおいて、
前記アプリケーション実行部は、そのアプリケーション実行部で利用されたボリュームを、前記ストレージ装置の記憶領域に用意された複製ボリュームの特性に応じて選択した複製ボリュームと書き換え、
前記複製ストレージ作成部は、書き換えられた複製ボリュームに基づいて、複製元ボリュームを更新させることを特徴とする計算機システム。
【請求項９】
請求項１記載の計算機システムにおいて、
前記ストレージ装置の記憶領域には、複数のボリュームを結合して１つのボリュームに見せる結合ボリュームを備え、
前記アプリケーション実行部は、前記結合ボリューム内の複数のボリュームに並列でデータを書き込ませることを特徴とする計算機システム。
【請求項１０】
１つ以上の記憶領域を保持し、記憶領域には接続された計算機が利用するデータを保持するボリュームを格納するストレージ装置において、
前記ボリュームの利用のための複製ボリューム作成の指示の受信で、前記記憶領域に指定ボリュームの複製ボリュームを１つ又は複数作成する複製ボリューム作成部を備え、
前記複製ボリューム作成部は、前記作成された複製ボリュームについての情報として、複製ボリュームの作成数および特性情報を前記計算機に通知することを特徴とするストレージ装置。
【請求項１１】
請求項１０記載のストレージ装置において、
前記複製ボリューム作成部が作成した複製ボリュームについての情報として、前記計算機が複製ボリュームにアクセスするための情報である接続情報と、前記複製ボリュームの、少なくとも性能に関わる情報もしくは構成に関わる情報である特性情報とを付加して、前記計算機に通知することを特徴とするストレージ装置。
【請求項１２】
請求項１０記載のストレージ装置において、
前記複製ボリューム作成部は、利用しない複製ボリュームについての情報の受信で、利用しない複製ボリュームの割り当てを解除することを特徴とするストレージ装置。
【請求項１３】
請求項１０記載のストレージ装置において、
ボリュームを格納する記憶領域は物理デバイス上に構成され、
前記複製ストレージ作成部は、複製ボリュームを作成するに当たって、複製元ボリュームと複製ボリュームが同一の物理デバイスを共有しないように、前記複製ボリュームを作成することを特徴とするストレージ装置。
【請求項１４】
請求項１３記載のストレージ装置において、
さらに前記複製ストレージ作成部は、同一の複製ボリュームを複数作成する場合に、複数の複製ボリュームのそれぞれが、同一の物理デバイスを共有しないように、前記複製ボリュームを作成することを特徴とするストレージ装置。
【請求項１５】
請求項１０記載のストレージ装置において、
前記複製ストレージ作成部は、前記計算機で利用されたボリュームを、前記記憶領域に用意された複製ボリュームの特性に応じて選択した複製ボリュームと書き換え、さらに書き換えられた複製ボリュームに基づいて、複製元ボリュームを更新させることを特徴とするストレージ装置。
【請求項１６】
請求項１０記載のストレージ装置において、
前記記憶領域には、複数のボリュームを結合して１つのボリュームに見せる結合ボリュームを備え、
前記結合ボリューム内の複数のボリュームに並列でデータを書き込ませるようにした特徴とするストレージ装置。
【請求項１７】
計算機に接続されるストレージ装置が保持する記憶領域を管理するストレージ管理方法において、
前記記憶領域に、前記計算機が利用するデータを保持するボリューム及びその複製となる複製ボリュームを格納するボリューム格納ステップと、
前記記憶領域およびボリュームについて、アクセスするために必要な接続情報および特性情報を管理する管理ステップと、
前記計算機が利用するアプリケーションプログラムからの要求に応じて、前記情報を用いて複製ボリュームの作成を指示する複製ボリューム作成ステップと、
前記複製ボリューム作成ステップでの指示に基づいて、前記ボリューム格納ステップで作成した複製ボリュームについての前記情報を、前記アプリケーションプログラムに通知する通知ステップを持つことを特徴とするストレージ管理方法。
【請求項１８】
請求項１７記載のストレージ管理方法において、
さらに、前記アプリケーションプログラムからの通知で、複製ボリュームの割り当てを解除するステップを持つことを特徴とするストレージ管理方法。
【請求項１９】
請求項１７記載のストレージ管理方法において、
前記ボリューム格納ステップで複製ボリュームを作成するに当たって、複製元ボリュームと複製ボリュームが、記憶領域上の同一の物理デバイスを共有しないように、前記複製ボリュームを作成することを特徴とするストレージ管理方法。
【請求項２０】
請求項１９記載のストレージ管理方法において、
さらに前記ボリューム格納ステップで同一の複製ボリュームを複数作成する場合に、複数の複製ボリュームのそれぞれが、同一の物理デバイスを共有しないように、前記複製ボリュームを作成することを特徴とするストレージ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ボリュームを格納するストレージ装置、及びそのストレージ装置とストレージ装置を管理し、そのボリュームを利用するアプリケーションが動作する計算機で構成される計算機システム、並びにストレージの管理方法に関し、ボリュームを適切に複製・割り当てしアプリケーションの動作を最適化する技術に関する。
【背景技術】
【０００２】
大規模な情報処理システムにおいては、情報処理システムで使用されるデータを効率よく処理するために、ストレージ装置が使用される。一般的にストレージ装置は複数の物理デバイスを持ち、物理デバイス上には特定の記憶領域（以下「ボリューム」とも称する）を確保し、計算機装置からはボリュームを利用する。
【０００３】
情報処理システムでは、アプリケーションプログラム（以下「データ変換バッチ」ともいう）を実行することで、データ変換バッチを実行する計算機が、処理対象とするデータを格納するボリュームを保持するストレージ装置からデータを取得し、データを変換する。データ変換バッチは変換後のデータを、目的のボリュームを保持するストレージ装置に書き込む。
【０００４】
上述のデータ取得時においては、プログラム実行管理者は事前にストレージ装置を用いて、処理対象とするデータを格納するボリュームのレプリカ（以下、処理対象とするデータを格納するボリュームを「プライマリボリューム」または「プライマリＶＯＬ」およびそのレプリカ（複製）を「セカンダリボリューム」または「セカンダリＶＯＬ」とも称する）を作成し、そのレプリカからのデータ取得を行うようにデータ変換バッチを設定し、データ変換バッチを実行する。このとき、セカンダリボリュームを作成するに当たっては、プログラム実行管理者またはストレージ管理者自らが行う必要があり、また、セカンダリボリュームの作成に当たっては、ボリュームの構成（ＲＡＩＤレベルなど）を考慮することはできたが、セカンダリボリュームを作成する物理デバイスに既にプライマリボリュームが配置されているかなどについては考慮していなかった。（例えば、特許文献１参照。）
【特許文献１】特開２００３−３０３５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のストレージ装置を利用してセカンダリボリュームを作成する場合においては、次のような問題点がある。
セカンダリボリュームの作成に当たって、データ変換バッチ実行プログラム管理者またはストレージ管理者が、明示的にセカンダリボリュームの作成を指示し、そのセカンダリボリュームを利用するようにデータ変換バッチの実行プロセスを管理する必要があり、管理者にかかる負荷の面で問題があった。
【０００６】
また、セカンダリボリュームを作成する物理デバイスの確保に当たっては、物理デバイスの構成情報については着目していたが、その物理デバイスに既に他のボリュームの配置の有無およびその他性能情報については考慮せず、物理デバイスを選択しセカンダリボリュームを作成していた。
【０００７】
このため、データ変換バッチ実行プログラムがセカンダリボリュームを利用する際に、プライマリボリュームへの外部からのアクセスと、データ変換バッチ実行プログラムによるセカンダリボリュームへのアクセスとが重なる可能性があり、セカンダリボリュームの読み出しや書き込みに時間がかかって、ストレージ装置の利用効率が悪化する可能性があった。
【０００８】
本発明の目的は、アプリケーションから利用するストレージ装置のボリューム割り当て、特にセカンダリボリュームの割り当てにおいて、物理デバイスのボリューム配置情報および性能情報その他を考慮して選択することができ、かつ、セカンダリボリュームを作成し、かつ、作成したセカンダリボリュームを元にデータ変換バッチの実行プロセスを自動的に再編成できるようにすることにある。
【課題を解決するための手段】
【０００９】
本発明は、ストレージ装置が１つ以上の記憶領域を保持し、記憶領域には接続された計算機が利用するデータを保持するボリュームを格納する場合において、ストレージ装置に接続された計算機でボリュームの利用のための複製ボリューム作成の指示を生成させて、その指示の受信で、指定ボリュームの複製ボリュームを１つ又は複数作成し、その作成された複製ボリュームについての情報を計算機に通知し、その情報に基づいて計算機側で利用する複製ボリュームの選定などが行えるようにしたものである。
【発明の効果】
【００１０】
本発明によると、セカンダリボリュームを自動的かつ効率的に利用アプリケーションに割り当てることを可能とし、またセカンダリボリュームを利用するアプリケーションを高速かつストレージの性能を均一に引き出して実行することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の一実施の形態を、図１〜図９を参照して説明する。
本例においては、ハードディスク装置などで構成された大容量のデータ記憶装置を複数台使用して、大容量のデータを格納できるストレージ装置を構成し、そのストレージ装置を電子計算機（コンピュータ装置）に接続して、計算機でデータ格納の管理やデータ変換などを行うシステムとしてある。ストレージ装置でデータを格納する際には、ＲＡＩＤ（Redundant Arrays of Inexpensive Disks）と称される技術を使用して、データを分散させて確実に記憶させるようにしてある。
【００１２】
図１は、本実施の形態におけるシステム構成の例を、データ処理上から示した図である。本例では、背景技術で説明したものと同様に、処理対象とするデータを格納するボリューム（プライマリＶＯＬ）のレプリカ（セカンダリＶＯＬ）を作成し、そのレプリカからのデータ取得を行うようにデータ変換バッチを設定し、データ変換バッチを実行する構成としてある。
【００１３】
ここでは、あるプライマリボリュームに格納されたデータを変換するために、複数のセカンダリボリュームを作成するストレージ管理プログラムが実装されたストレージ管理部と、セカンダリボリュームからデータを取得して変換を行なうようなデータ変換バッチ実行プログラムが実装されたデータ変換バッチ実行部とを備える構成を例として説明する。プライマリボリュームを利用するアプリケーションとしては、データベース管理部に実装されたデータベースプログラムとしてある。なお、プライマリボリュームを利用するアプリケーションとしては、データベースプログラムに限定されず、ボリュームに格納されたデータを利用するような任意のアプリケーションであってよい。また、セカンダリボリュームを利用するアプリケーションについても、アプリケーションとしてはデータ変換バッチ実行プログラムに限定されず、ボリュームに格納されたデータを利用するような任意のアプリケーションであってよい。
【００１４】
なお、以下に説明する各構成要素は計算機やストレージ装置の演算装置に実装されたプログラムで構成され、これらは計算機やストレージ装置の演算装置で実行される。ただし、以下の構成要素の一部が専用のハードウェアによって実現されていても良い。
【００１５】
図１において、管理コンソール１５０は、ストレージ管理プログラムが実装されたストレージ管理部１３０およびデータ変換バッチ実行プログラムが実装されたデータ変換バッチ実行部１４０の操作を行なう。ストレージ管理部１３０は、拡張ボリューム管理テーブル１３２を読み出し、ボリューム管理部１３４を用いて物理デバイスの管理およびセカンダリボリュームの作成を行う。
【００１６】
データ変換バッチ実行部１４０は、データ変換バッチ定義部１４２のデータを読み出し、実行プロセス制御部１４４を用いて、変換バッチの実行プロセスを生成・制御し、バッチ定義部１４２のデータに記載の処理内容を実行する。
【００１７】
ストレージ装置１００は、複数の物理デバイス１１２，１１３，１１４，１１５を備えて、各物理デバイス内に、データを格納するボリュームが設定される。その中の特定のデバイス（ここではデバイス♯１の物理デバイス１１２）には、例えば外部からストレージ装置に書き込まれたデータを格納するプライマリボリューム１２１が設定される。
【００１８】
そして、ストレージ装置１００はセカンダリＶＯＬ作成部１１０を備え、ストレージ管理部１３０からの指示に基づいて、セカンダリＶＯＬ作成部１１０が、プライマリボリューム１２１のレプリカであるセカンダリボリューム１２２，１２３，１２４，１２５を、それぞれ別の物理デバイス１１２，１１３，１１４，１１５上に作成する。
【００１９】
データベース管理部１６０に実装されたデータベースプログラムは、プライマリボリューム１２１を利用するプログラムである。
【００２０】
なお、データ変換の元となるデータを格納するプライマリボリューム１２１は１つに限定されず、1以上の任意の個数を取ることができる。また、また、セカンダリボリューム１２２，１２３，１２４，１２５についても、４つに限定されず、１以上の任意の個数をとることができる。また、物理デバイス１１２，１１３，１１４，１１５についても、４つに限定されず、１以上の任意の個数を取ることができる。
【００２１】
図２は、本実施の形態の計算機システムの構成例を示す図である。
計算機システムは、サーバ計算機２００、クライアント計算機２１０及びストレージ装置２２０を有する。
サーバ計算機２００とクライアント計算機２１０は、ＬＡＮハブ（又はスイッチ）２３０及びケーブルを介して相互に接続されている。ＬＡＮハブ（又はスイッチ）２３０とネットワークをまとめてＬＡＮ（Local Area Network）と呼ぶこともある。なお、サーバ計算機２００とクライアント計算機２１０とを接続するネットワークはＬＡＮで無くても良い。
【００２２】
サーバ計算機２００とストレージ装置２２０は、ＳＡＮハブ（又はスイッチ）２４０及びネットワークを介して相互に接続される。ＳＡＮハブ（又はスイッチ）２４０及びネットワークをＳＡＮ(Storage Area Network)と言うこともある。なお、サーバ計算機２００とストレージ装置２２０とを接続するネットワークはＳＡＮで無くても良い。
【００２３】
サーバ計算機２００は、図１で示したストレージ管理部１３０およびデータ変換バッチ実行部１４０およびデータベース管理部１６０に実装されたプログラムを実行する計算機である。サーバ計算機２００は、ＣＰＵ（中央制御ユニット）２０１、主記憶部２０２、ＣＤ−ＲＯＭ装置２０３、ＳＡＮ  インターフェイス（Ｉ／Ｆ）部２０４、ＬＡＮ  Ｉ／Ｆ部２０５及びディスク装置２０６を有する。そして、これらの装置がコントローラ２０７によって相互に接続されている。
【００２４】
図１で示したストレージ管理部１３０およびデータ変換バッチ実行部１４０およびデータベース管理部１６０などに実装されたプログラム、また、データ変換バッチ定義部１４２、拡張ボリューム管理テーブル１３２などが備えるデータは、ディスク装置２０６に格納されている。ＣＰＵ２０１は、これらのプログラムを主記憶部２０２にロードして実行する。
【００２５】
なお、これらのプログラムを、ストレージ装置２２０の記憶部２２３にロードして、ストレージ制御プロセッサ２２２において実行してもよい。
【００２６】
また、これらのプログラムとデータを、ストレージ装置２２０の物理デバイス１１２、１１３、１１４、１１５に格納することにしてもよい。または、これらのプログラムとデータを、クライアント計算機２１０のディスク装置２１６に格納することにしてもよい。
【００２７】
クライアント計算機２１０は、ユーザやシステム管理者が操作し、サーバ計算機２００に指示を与えるための計算機である。クライアント計算機２１０は、ＣＰＵ２１１、主記憶部２１２、ＣＤ−ＲＯＭ装置２１３、ＬＡＮ  Ｉ／Ｆ部２１４、ディスク装置２１６及び装置間相互を接続するコントローラ２１７を有する。
【００２８】
クライアント計算機２１０のディスク装置２１６には、管理コンソール（プログラム）１５０が格納されている。ユーザやシステム管理者は、管理コンソール１５０を実行することにより、サーバ計算機２００でのストレージ管理プログラム１３０及びデータ変換バッチプログラム１４０の実行を指示する。
【００２９】
ストレージ装置２２０は、ＳＡＮ  Ｉ／Ｆ２２１、ストレージ制御プロセッサ２２２、記憶２２３、物理デバイス１１２、１１３、１１４、１１５及びこれらを相互に接続するコントローラを有する。物理デバイス１１２は、プライマリボリューム１２１およびセカンダリボリューム１２２を格納する。ボリュームとディスク装置はｎ対ｎ（ｎは任意の数）で対応している。具体的に言えば、ボリュームは、物理デバイス１１２が有する物理的な記憶領域の一部又は全部に対応する。したがって、１つのボリュームは、１つ又は複数の物理デバイス１１２が有する記憶領域から構成される。
【００３０】
セカンダリＶＯＬ作成部１１０は、記憶部２２３に格納され、ストレージ制御プロセッサ２２２により、サーバ計算機２００の指示を受けて実行されるプログラムを実行する手段として構成される。
【００３１】
なお、本実施の形態は、サーバ計算機２００とクライアント計算機２１０を有する構成としたが、これを一台の計算機で行うようにしてもよい。また、サーバ計算機２００とクライアント計算機２１０は、それぞれ複数から構成されていてもよい。また、本実施の形態では、ストレージ装置２２０は一台であったが、これが複数接続されていてもよい。
【００３２】
次に、本実施の形態における計算機システムの処理の流れの概略を説明する。まず、システム管理者はデータ変換バッチの実行を、クライアント計算機２１０を介してサーバ計算機２００に指示する。指示を受けたデータ変換バッチ実行部１４０は、ストレージ管理部１３０に対して、セカンダリボリュームの確保を要求する。ストレージ管理部のボリューム管理部は、拡張ボリューム管理テーブルの情報を元に、ストレージ装置１００上の適切な物理デバイス上にプライマリボリューム１２１のセカンダリボリュームを作成するよう、セカンダリＶＯＬ作成部１１０に対して指示する。
【００３３】
セカンダリボリュームの作成後、ストレージ管理部１３０はデータ変換バッチ実行部１４０に、作成したセカンダリボリュームに関わる物理デバイス情報を通知する。このときの情報には、拡張ボリューム管理テーブルに記載の情報が含まれる。データ変換バッチ実行部１４０は、受信したセカンダリボリュームの情報を元に、利用するセカンダリボリュームを選択・決定し、利用しないセカンダリボリュームに関わる情報をストレージ管理部１３０に通知する。データ変換バッチ実行部１４０は、利用するセカンダリボリュームの個数および性能情報に従って、実行プロセス制御部１４４（図１）を用いて、変換バッチの実行プロセス数および各プロセスのデータ取得量の割合などを決定し、変換バッチを実行する。各プロセスは、実行プロセス制御の指示に基づき、セカンダリボリュームからのデータ取得を並列に行うことで高速かつストレージの性能を均一に引き出した変換バッチ実行を可能とする。
【００３４】
図３は、拡張ボリューム管理テーブル１３２およびストレージ管理部１３０とデータ変換バッチ実行部１４０間でやり取りする情報の内容例を示す図である。拡張ボリューム管理テーブルは、ストレージ装置１００の物理デバイス使用状況・接続情報・性能情報を管理するための情報である。
【００３５】
拡張ボリューム管理テーブル１３２が備える具体的なフィールドの例としては、例えば図３に示すように、ボリュームＩＤ３０１、ターゲットＩＤ３０２、ＬＵＮ３０３、データの読み込み転送速度（ＭＢ／Ｓ）３０４、データの書き込み転送速度（ＭＢ／Ｓ）３０５、プライマリボリュームとしての利用状況３０６、配置物理デバイス（ＰＤＥＶ）３０７とを有する。
【００３６】
ボリュームＩＤ、ターゲットＩＤ，ＬＵＮは接続に必要な情報であり、ボリュームＩＤ３０１は、ボリューム毎に管理されるＩＤであり、ターゲットＩＤ３０２は、そのボリュームを使うために必要な情報である。ＬＵＮ３０３は、ネットワークを介したアクセス制御などに必要な論理ユニット番号である。読み込み転送速度および書き込み転送速度は、ボリュームが格納されるデバイスの性能に関わる情報である。なお、拡張ボリューム管理テーブルとして、上述のフィールドに限定されず、その他の接続および性能に関わる情報を記述するフィールドを含んでもよい。また、本実施の形態に記載の拡張管理テーブルでは、ボリュームごとにレコードが記載されているが、物理デバイスを単位としたレコード表現にしてもよい。
【００３７】
拡張ボリューム管理テーブル１３２の使用状態を、図３を参照して説明すると、拡張ボリューム管理テーブル１３２のレコード群１３２ａのレコード３１１は、プライマリボリューム１２１に関わるレコードであり、ＰＤＥＶ３０７には、物理デバイス♯１上に存在することを示す記号「１」が記録され、利用状況３０６にプライマリボリューム１で利用されていることを示すフラグ「Ｐ１」が記録されている。レコード３１２は、ボリューム１２２に関わるレコードであり、３１１と同様に、ＰＤＥＶ３０７には、物理デバイス♯１上に存在することを示す記号「１」が記録され、利用状況３０６に、このボリュームの存在する物理デバイス１１２がプライマリボリューム１で利用されていることを示すフラグ「Ｐ１」が記録されている。レコード３１３はボリューム１２３に関わるレコードである。レコード３１４はボリューム１２４に関わるレコードである。レコード３１５はボリューム１２５に関わるレコードである。
【００３８】
レコード群１３２ｂは、データ変換バッチ実行部１４２からのセカンダリボリューム確保要求にしたがって、ストレージ管理部が選択し通知するセカンダリボリュームに関わる情報の例である。この例では、ボリュームＩＤ２ａのレコード３１２′を通知している。
【００３９】
レコード群１３２ｃは、データ変換バッチ実行部１４２が、バッチの実行に利用しないとしてストレージ管理部１３０に通知する情報の例である。この例では、ボリュームＩＤ２ａのレコード３１２及びボリュームＩＤ４ａのレコード３１４を通知している。なお、レコード群１３２ｄについては、図６のフローチャートに基づいて処理説明時に説明する。
【００４０】
図４は、データ変換実行部１４０が、ストレージ管理部１３０へ行うセカンダリボリュームの確保要求に当たって、付加するフィルタリング条件の設定例を示す図である。付加するフィルタリング条件のフィールドとして選択チェックボックス４０１、フィルタリング条件４０２、条件値１  ４０３、条件値２  ４０４を持つ。なお、保持するフィールドとしてこれらのフィールドに限定されず、その他のフィールドを持っても良い。レコード４１１、４１２、４１３，４１４，４１５はフィルタリング条件の例である。ユーザはこの中から任意のフィルタリング条件を選択し、選択フィールド４０１にチェックすることで、該当レコードのフィルタリング条件がデータ変換バッチ実行プログラム１４２からのセカンダリボリューム要求に付加される。図４の例では、フィルタリング条件として、確保可能なボリューム、９Ｄ１Ｐ（９台のデータディスクと１台のパリティディスクでＲＡＩＤを構成）は不可、ＲＡＩＤレベル５のみ、プライマリＶＯＬ未配置、ディスク装置の最低数・最高数の指定などがある。図４の状態では、選択チェックボックス４０１プライマリＶＯＬ未配置を選択してあり、ディスク装置の最低数・最高数が、条件値１  ４０３及び条件値２  ４０４で指定してある。
【００４１】
次に、本実施形態におけるデータ変換バッチ実行プログラムの処理手順について、図５〜図９のフローチャートを参照して説明する。
図４は、データ変換バッチの実行前の処理例を示すフローチャートである。
まず、システム管理者がデータ変換バッチの開始をサーバ計算機に２００に指示する。指示を受けたデータ変換バッチ実行部１４０は、セカンダリボリュームの確保をストレージ管理部１３０に要求する（ステップＳ１１）。このとき、図４に示したレコード４１１〜４１５のようなフィルタリング条件を付加してもよい。要求後、データ変換バッチ実行部１４０は、セカンダリボリュームの確保結果レコード群３２０をストレージ管理部１３０から受信する（ステップＳ１２）。確保結果より、利用するセカンダリＶＯＬの選択を行う（ステップＳ１３）。例えば、（サーバ計算機のＣＰＵを効率的に利用するためには）２並列プロセスでバッチを実行すると、利用するセカンダリボリュームとして、既にプライマリボリュームが配置されておらず、かつ、転送速度が高速な（図３の読込み転送速度３０４及び書き込み転送速度３０５のフィールドより判断）セカンダリボリュームである、ボリューム３ａ（レコード３１３）、およびボリューム５ａ（レコード３１５）を選択する。利用するボリュームを決定後、不要なボリュームである３３０をストレージ管理部１３０に通知する（ステップＳ１４）。
【００４２】
ステップＳ１３において、利用するセカンダリＶＯＬを決定後、データ変換バッチ実行プロセスをセカンダリボリューム３ａ（レコード３１３）、およびボリューム５ａ（レコード３１５）からデータを取得するように、接続情報であるターゲットＩＤ３０２およびＬＵＮ３０３のフィールドのデータを用いて設定し、次に性能に関わる情報である読み込み転送速度３０４のフィールドのデータを参照し、例えばこの例では転送速度の比率である１：２に応じて、読み込むデータの量を各実行プロセスに設定し（ステップＳ１５）、データ変換バッチの実行前の処理を終了する（ステップＳ１６）。
【００４３】
次に、本実施の形態のシステムでセカンダリボリュームの管理処理を行なう手順について説明する。
図６は、ストレージ管理プログラム１３０で行うセカンダリボリューム管理の処理例を示すフローチャートである。
ストレージ管理部１３０は、ステップＳ２１においてデータ変換バッチ実行プログラム１４０からのセカンダリボリューム確保要求を受信すると、拡張ボリューム管理テーブル１３２のレコード３１１〜３１５を検索し、確保要求に適合したものを選択する（ステップＳ２２）。このとき確保要求にフィルタリング条件がつけられていない場合は、通常確保しても良いと考えられる全ボリュームであるレコード群３２０を、データ変換バッチ実行部１４０に通知するが、例えばレコード３１２のような、当該ボリュームの存在する物理デバイスに既にプライマリボリュームが配置されている場合は、図３に示したレコード群１３２ｂのように利用状況をマーキングするなどして通知する。また、確保要求として、図４のレコード４１４のようなフィルタリング条件が付加されていた場合、確保結果レコード群１３２ｂとして、レコード３１２を初めから含めない（ステップＳ２３）。
【００４４】
ストレージ管理部１３０は、ステップＳ２３において確保した物理デバイス上に、プライマリボリューム１２１のセカンダリＶＯＬを作成する（ステップＳ２４）。例えば、図３に示したレコード群１３２ｂのレコード３１２、３１３、３１４、３１５の物理デバイスフィールド３０７に記載の物理デバイス１１２、１１３、１１４、１１５上に、プライマリボリューム１２１のセカンダリボリュームをそれぞれ１２２、１２３、１２４、１２５として作成する。作成後、作成したセカンダリＶＯＬのレコード群１３２ｂをデータ変換バッチ実行部１４０に通知する（ステップＳ２５）。
【００４５】
ストレージ管理部１３０は、不要なセカンダリＶＯＬのレコード群１３２ｃをデータ変換バッチ実行部１４０から受信する(ステップＳ２６)。受信後、ストレージ管理部１３０は、不要なセカンダリＶＯＬのレコード群１３２ｃをもとに、拡張ボリューム管理テーブル１３２を更新する(ステップＳ２７)。例えば、レコード３１２、３１４については、不要であるとしたので、作成したセカンダリＶＯＬを削除し、レコード３１３、３１５については、プライマリボリューム１２１のセカンダリボリュームを作成したので、レコード群１３２ｄのレコード３１３′、３１５′のように利用状況フィールド３０６にプライマリボリューム１２１のセカンダリが作成されていることを示すフラグである「Ｐ１ｓ」を記録する（ステップＳ２８）。
【００４６】
次に、本実施の形態におけるデータ変換バッチ実行終了時の処理手順について説明する。
図７は、データ変換バッチの実行後処理の例を示すフローチャートである。
データ変換バッチ実行部１４０は、データ変換バッチ実行プロセスの終了を検知し、かつ、当該プロセスの利用していたセカンダリボリュームを利用しない場合、ストレージ管理部１３０に対して、セカンダリボリュームの利用が終了したことを通知する（ステップＳ３１）。この通知で、データ変換バッチ実行後処理を終了させる（ステップＳ３２）。
【００４７】
次に、本実施の形態におけるストレージ管理プログラムのセカンダリＶＯＬ解放処理手順について説明する。
図８は、データ変換バッチ実行処理終了後のストレージ管理プログラムのセカンダリＶＯＬ解放処理の例を示すフローチャートである。
ストレージ管理部１３０は、データ変換バッチ実行終了時にデータ変換バッチ実行部から送信されるストレージ利用終了通知を受信すると（ステップＳ４１）、同処理で用いられていたセカンダリＶＯＬの解放処理を行なう（ステップＳ４２）。解放するＶＯＬについては、ステップＳ２７（図６）において更新したレコードに該当するセカンダリＶＯＬである。セカンダリＶＯＬの解放後、拡張ボリューム管理テーブルを更新し、バッチ実行前の状態に戻し（ステップＳ４３）、セカンダリＶＯＬ解放処理を終了する。
【００４８】
ここまでの説明では、あるボリュームからデータを取得する際にセカンダリボリュームを利用する処理を対象として説明したが、あるボリュームにデータを書き込む際にセカンダリボリュームを利用するようにしてもよい。
【００４９】
次に、あるボリュームにデータを書き込む際にセカンダリボリュームを利用する処理について説明すると、ここでのデータ変換バッチの実行前の処理は、上述した図５のフローチャートと同一である。データ変換バッチの実行前の処理で図５のフローチャートと異なる部分のみ説明すると、ステップＳ１４までにおいて、利用するセカンダリボリュームを決定後、データ変換バッチ実行プロセスをセカンダリボリューム３ａ（レコード３１３）、およびボリューム５ａ（レコード３１５）に対してデータを書き込むように、接続情報であるターゲットＩＤ３０２およびＬＵＮ３０３を用いて設定し、次に性能に関わる情報である書き込み転送速度３０４を参照し、転送速度の比率である３：４に応じて、読み込むデータの量を各実行プロセスに設定する（ステップＳ１５）。
【００５０】
次に、あるボリュームにデータを書き込む際にセカンダリボリュームを利用する場合における、データ変換バッチ処理終了後の、ストレージ管理部のセカンダリＶＯＬ解放処理手順について、図９のフローチャートを参照して説明する。
【００５１】
ストレージ管理部１３０は、データ変換バッチ実行終了時にデータ変換バッチ実行部から送信されるストレージ利用終了通知を受信する（ステップＳ５１）。受信後、同処理で用いられていたセカンダリＶＯＬとプライマリＶＯＬの同期処理、すなわち、セカンダリＶＯＬに対して書き込まれたデータのプライマリＶＯＬへの反映を行う（ステップＳ５２）。同期処理後、同処理で用いられていたセカンダリＶＯＬの解放処理を行なう（ステップＳ５３）。解放するセカンダリＶＯＬについては、ステップＳ２７（図６）において更新したレコードに該当するセカンダリＶＯＬである。セカンダリＶＯＬの解放後、拡張ボリューム管理テーブルを更新し、バッチ実行前の状態に戻し（ステップＳ５４）、セカンダリＶＯＬの解放処理を終了する（ステップＳ５５）。
【００５２】
また、あるボリュームにデータを書き込む際に、複数ボリュームを結合したボリュームに対して各構成ボリュームを利用する処理を対象としてもよい。
図１０は、この場合の構成の例を示す図である。図１０に示した構成の大部分は、図１に示した構成と同一であり、以下の説明では、異なる部分のみ説明する。
【００５３】
図１０では例として、ある複数ボリュームを結合して一つに見せかけた結合ボリューム（以下、「ＬＵＳＥボリューム」と記述する）にデータを格納するために、そのＬＵＳＥボリュームを構成する複数のボリュームにデータを書き込む、データ変換バッチ実行プログラムを例として説明する。
【００５４】
図１０において、ストレージ管理部１３０は拡張ボリューム管理テーブル１３２を読み出し、ボリューム管理部１３４を用いて物理デバイスの管理を行う。
ストレージ装置１００は、ボリューム１２３、１２４、１２５を、それぞれ物理デバイス１１３、１１４、１１５上に格納する。ＬＵＳＥボリューム１０１０は、ボリューム１２３、１２４、１２５からなるボリュームである。
データベース管理部１６０には、ＬＵＳＥボリューム１０１０を利用するプログラムが実装されている。
【００５５】
まず、図１０の例での計算機システムの処理の流れの概略を説明する。
まず、システム管理者はデータ変換バッチの実行を、クライアント計算機２１０（図２）を介してサーバ計算機２００に指示する。指示を受けたデータ変換バッチ実行部１４０は、ストレージ管理部１３０に対して、ＬＵＳＥボリュームを構成するボリュームの情報を要求する。ストレージ管理部１３０内のボリューム管理部１３４は、拡張ボリューム管理テーブル１３２の情報を元にＬＵＳＥを構成するボリュームに関わる情報を通知する。このときの情報には、拡張ボリューム管理テーブル１３２に記載の情報が含まれる。データ変換バッチ実行部１４２は、受信したボリュームの個数および性能情報に従って、実行プロセス制御部１４４を用いて、変換バッチの実行プロセス数および各プロセスのデータ書き込み量の割合などを決定し、変換バッチを実行する。各プロセスは、実行プロセス制御の指示に基づき、ＬＵＳＥを構成するボリュームへのデータ書き込みを並列に行うことで高速かつストレージの性能を均一に引き出した変換バッチ実行を可能とする。
【００５６】
図１１は、拡張ボリューム管理テーブル１３２の例を示す図であり、既に説明した図３に示したテーブルとほぼ同一である。以下、図３のテーブルと異なる部分のみ説明する。
拡張ボリューム管理テーブルは、ストレージ装置１００の物理デバイス使用状況・接続情報・性能情報を管理するための情報である。拡張ボリューム管理テーブル１３２は、利用状況３０８、結合ボリューム（ＬＵＳＥ）構成情報３０９をフィールドとして有する。利用状況は、ディスクの利用割合（％）を記録するフィールドである。また、ＬＵＳＥ構成情報には、該ボリュームが構成するＬＵＳＥボリュームを記録する。拡張ボリューム管理テーブルとして、上述のフィールドに限定されず、その他の接続および性能に関わる情報を記述するフィールドを含んでもよい。また、本例記載の拡張管理テーブルでは、ボリュームごとにレコードが記載されているが、これを物理デバイスを単位としたレコード表現にしてもよい。
【００５７】
レコード３２１、３２２…の内のレコード３２３，３２４，３２５は、ＬＵＳＥボリューム１０１０を構成するボリュームであり、ＬＵＳＥ構成情報フィールド３０９には、そのことを示す記号「１０１０」が記録されている。
【００５８】
以下、図１０の例におけるデータ変換バッチ実行プログラムの処理手順について、説明する。
図１２は、データ変換バッチの実行後処理フローの例を示す図である。
まず、システム管理者がデータ変換バッチの開始をサーバ計算機２００（図２）に指示する。指示を受けたデータ変換バッチ実行部１４０は、処理対象とするＬＵＳＥボリューム１０１０を構成するボリュームの情報を要求する（ステップＳ６１）。要求後、データ変換バッチ実行部１４０は、ＬＵＳＥを構成する情報レコード３２３，３２４，３２５をストレージ管理部１３０から受信する（ステップＳ６２）。確保結果より、ＬＵＳＥボリューム１０１０は３ボリュームで構成されているため、３並列プロセスでバッチを実行し、データをＬＵＳＥボリューム１０１０を構成する各ボリューム１２３，１２４，１２５に書き込むように、接続情報であるターゲットＩＤ３０２およびＬＵＮ３０３のフィールドのデータを用いて設定し、かつ、書き込み転送速度３０５、または、ディスク利用割合３０８で示される比率のデータに従って、各プロセスの書き込むデータ量を設定する（ステップＳ６３）。例えば、書き込み転送速度３０５のフィールドを参照した場合、３つのボリュームの書き込み転送速度の比率である３：２：４に応じて、書き込むデータの量を各実行プロセスに設定する。
【００５９】
この図９に示したセカンダリボリュームに対してのデータ書き込み、或いは図１０〜図１２に示したセカンダリボリュームに対してのデータ書き込みは、図５〜図８で説明したセカンダリボリュームからのデータ取得と併用してもよく、或いは何れか一方だけを使用してもよい。
【００６０】
また、ここまで説明した実施の形態に記載した処理としては、ストレージ装置と、そのストレージ装置にネットワークなどを介して接続されて、ストレージ装置の管理などを実行する専用の計算機とを備えたシステムとして構築させた例としたが、上述した実施の形態で説明した処理と同様の処理を行うプログラム（ソフトウェア）を用意して、そのプログラムを汎用の計算機（コンピュータ装置）に実装させて、同様の装置を構築させてもよい。その場合、上述した実施の形態では、各プログラムが実装される各機能処理部を、個別の処理部として示したが、コンピュータ装置上の１つ（又は限られた数）の演算手段が、それぞれのプログラムの処理を順に処理する構成としてもよい。
【図面の簡単な説明】
【００６１】
【図１】本発明の一実施の形態による計算機システムの論理的な構成例を示す構成図である。
【図２】一実施の形態による計算機システムのハードウェア構成例を示す構成図である。
【図３】一実施の形態による拡張ボリューム管理テーブルの例を示す説明図である。
【図４】一実施の形態によるフィルタリング条件の例を示す説明図である。
【図５】一実施の形態によるデータ変換バッチ実行前処理の処理手順の例を示すフローチャートである。
【図６】一実施の形態によるストレージ管理プログラムセカンダリボリューム確保処理の処理手順の例を示すフローチャートである。
【図７】一実施の形態によるデータ変換バッチ実行後処理の処理手順の例を示すフローチャートである
【図８】一実施の形態によるストレージ管理プログラムセカンダリボリューム解放処理の処理手順の例を示すフローチャートである。
【図９】一実施の形態によるストレージ管理プログラムセカンダリボリューム解放処理の処理手順の例を示すフローチャートである。
【図１０】本発明の他の実施の形態による計算機システムの論理的な構成例を示す構成図である。
【図１１】図１０の例による拡張ボリューム管理テーブルの例を示す説明図である。
【図１２】図１０の例によるデータ変換バッチ実行前処理の処理手順の例を示すフローチャートである。
【符号の説明】
【００６２】
１００…ストレージ装置、１１０…セカンダリボリューム作成部、１１２…物理デバイス＃１、１１３…物理デバイス＃３、１１４…物理デバイス＃４、１１５…物理デバイス＃５、１２１…プライマリボリューム（プライマリＶＯＬ）、１２３，１２５…セカンダリボリューム（セカンダリＶＯＬ）、１３０…ストレージ管理部、１３２…拡張ボリューム管理テーブル、１４０…データ変換バッチ実行部、１４４…実行プロセス制御部、２００…サーバ計算機、２１０…クライアント計算機、２２０…ストレージ装置
【図１】
2006106985.tif 000003
【図２】
2006106985.tif 000004
【図３】
2006106985.tif 000005
【図４】
2006106985.tif 000006
【図５】
2006106985.tif 000007
【図６】
2006106985.tif 000008
【図７】
2006106985.tif 000009
【図８】
2006106985.tif 000010
【図９】
2006106985.tif 000011
【図１０】
2006106985.tif 000012
【図１１】
2006106985.tif 000013
【図１２】
2006106985.tif 000014