(57)【要約】【課題】ストレージを有する計算機の割り当てにおいて、計算機能力などに基づいて、ストレージ構成を自動的に良好に再編成する。【解決手段】データ変換バッチ実行プログラムが実行するデータ変換バッチの実行前に、その目標実行時間を元として必要な計算能力を見積もり、計算構成を確保するよう、計算機管理プログラムを用いて計算機に指示し、同時に、関わるデータを格納するプライマリボリュームのセカンダリボリュームを確保するよう、ストレージ管理プログラムを用いてストレージ装置に指示する。この指示に基づいて、目標実行時間を達成可能な計算機の効率の良い割り当て、および、セカンダリボリュームを自動的かつ効率的に利用アプリケーションに割り当てることを可能とし、またセカンダリボリュームを利用するアプリケーションをストレージの性能と計算機の性能をと均衡の取れた形で引き出して実行する。【選択図】図１
2007328604.tif 000002
【特許請求の範囲】
【請求項１】
計算機と、
前記計算機に接続されるストレージ装置とネットワーク装置とを有し、
前記計算機は、前記ストレージ装置に格納されたデータを使用してデータ処理を実行する１つ以上の処理ユニットを保持し、
前記ストレージ装置は１つ以上の記憶領域を保持し、
前記ストレージ装置の記憶領域には、前記計算機が利用するデータを保持するボリュームもしくはその複製となる複製ボリュームを格納する計算機システムにおいて、
前記計算機は、計算機管理処理とストレージ管理処理と前記複製ボリュームを利用するアプリケーションの実行処理とを制御する制御部を備え、
前記計算機の制御部は、前記計算機管理処理の実行で、前記計算機に確保可能な前記処理ユニットの構成を判断し、
前記ストレージ管理処理の実行により、前記ストレージ装置に確保可能な複製ボリュームおよびネットワーク構成についての情報を得て、確保可能な計算機構成と、複製ボリュームの作成数と、ネットワーク構成から適切な構成を決定し、
その決定に基づいて前記ストレージ装置および前記ネットワーク装置に前記ボリュームの複製ボリュームの確保作成を指示し、
前記制御部によるアプリケーション実行処理で、確保作成された複製ボリュームの作成数およびその特性に応じ、そのアプリケーション実行プロセスを再構成することを特徴とする計算機システム。
【請求項２】
請求項１記載の計算機システムにおいて、
前記計算機の制御部でのアプリケーションの実行により、前記ストレージ装置に前記ボリュームの１つ以上の複製ボリュームの作成を指示し、
前記ストレージ装置は、前記指示に従って、前記ボリュームの複製ボリュームを作成し、作成した複製ボリュームについての情報を前記計算機の制御部に通知することを特徴とする計算機システム。
【請求項３】
請求項１記載の計算機システムにおいて、
前記計算機の制御部でのアプリケーションの実行で、複製ボリュームの作成を行う際に、複製ボリュームについての条件情報を付加して作成させることを特徴とする計算機システム。
【請求項４】
請求項１記載の計算機システムにおいて、
前記計算機の制御部でのストレージ管理処理の実行で、作成した複製ボリュームにアクセスするための接続情報に付加して、少なくとも性能に関わる情報もしくは構成に関わる情報である特性情報および作成に関わる時間の情報についても付加することを特徴とする計算機システム。
【請求項５】
請求項１記載の計算機システムにおいて、
前記計算機の制御部でのアプリケーション実行処理で、受信した複製ボリュームおよびネットワーク構成についての情報をもとに、利用する複製ボリュームを決定し、複製ボリューム上のデータにアクセスするアプリケーション実行プロセスを、利用する複製ボリュームの作成数および特性情報に基づいて再構成し実行することを特徴とする計算機システム。
【請求項６】
請求項１記載の計算機システムにおいて、
前記計算機の制御部でのアプリケーション実行処理で、利用するかつ・またはしない複製ボリュームについての情報を得て、
利用するボリュームの情報をもとに、利用する複製ボリュームの作成を前記ストレージ装置およびネットワーク装置に指示し、
さらに、利用しないボリュームの情報をもとに、利用しない複製ボリュームの割り当てを解除することを前記ストレージ装置に指示することを特徴とする計算機システム。
【請求項７】
請求項１記載の計算機システムにおいて、
ボリュームを格納する記憶領域は物理デバイス上に構成し、
前記制御部でのストレージ管理処理の実行で、複製元ボリュームの複製ボリュームを作成するに当たって、複製元ボリュームと複製ボリュームが同一の物理デバイスを共有しないように、前記複製ボリュームを作成することを可能とする計算機システム。
【請求項８】
請求項１記載の計算機システムにおいて、
前記計算機の制御部でのアプリケーション実行処理で、計算機構成を確保する場合に、
計算機構成についての条件情報を付加して確保を要求することを特徴とする計算機システム。
【請求項９】
請求項１記載の計算機システムにおいて、
前記計算機の制御部での計算機管理処理の実行で、確保する計算機構成について、前記計算機構成をアプリケーションが利用するための情報に付加して、少なくとも、性能に関わる情報と、構成に関わる情報と、作成に関わるコストの情報のいずれかについても付加することを特徴とする計算機システム。
【請求項１０】
請求項１記載の計算機システムにおいて、
前記計算機の制御部でのアプリケーション実行処理で、計算機構成についての情報をもとに、利用する処理ユニットを決定し、アクセスするアプリケーション実行プロセスを、利用する処理ユニットの情報基づいて再構成し実行することを特徴とする計算機システム。
【請求項１１】
請求項１記載の計算機システムにおいて、
前記計算機の制御部でのアプリケーション実行処理で、利用するか利用しない計算機構成についての情報を得て、その情報をもとに、利用する計算機の処理ユニットの確保、又は利用しない計算機の処理ユニットの割り当ての解除を行うことを特徴とする計算機システム。
【請求項１２】
計算機と、
前記計算機に接続されるストレージ装置とネットワーク装置を有し、
前記計算機は、前記ストレージ装置に格納されたデータを使用してデータ処理を実行する１つ以上の処理ユニットを保持し、
前記ストレージ装置は１つ以上の記憶領域を保持し、
前記ストレージ装置の記憶領域には、計算機が利用するデータを保持するボリュームもしくはその複製となる複製ボリュームを格納する計算機システムの管理を行うストレージ管理プログラムにおいて、
ストレージが格納する記憶領域およびボリュームについて、利用するために必要な接続情報および特性情報および構成情報を管理し、
アプリケーションプログラムからの要求に応じて、前記情報を用いて確保可能な複製ボリュームおよび制御・ネットワーク装置を検索し、アプリケーションプログラムに通知するステップと、
アプリケーションプログラムからの要求に応じて、前記情報を用いて複製ボリュームおよびネットワーク装置を確保し作成するステップと、
前記作成した複製ボリュームおよびネットワーク装置についての前記情報をアプリケーションプログラムに通知するステップと、
アプリケーションプログラムからの通知に応じて、複製ボリュームおよびネットワーク装置の割り当てを解除するステップを持つことを特徴とするストレージ管理プログラム。
【請求項１３】
計算機と、
前記計算機に接続されるストレージ装置とネットワーク装置を有し、
前記計算機は、前記ストレージ装置に格納されたデータを使用してデータ処理を実行する１つ以上の処理ユニットを保持し、
前記ストレージ装置は１つ以上の記憶領域を保持し、
前記ストレージ装置の記憶領域には、計算機が利用するデータを保持するボリュームもしくはその複製となる複製ボリュームを格納する計算機システムの管理を行う計算機管理プログラムにおいて、
計算機の保持する処理ユニットについて、利用するために必要な接続情報および特性情報および構成情報を管理し、
アプリケーションプログラムからの要求に応じて、前記情報を用いて確保可能な処理ユニットを検索するステップと、
アプリケーションプログラムからの要求に応じて、前記情報を用いて処理ユニットを確保するステップと、
確保した処理ユニットについての前記情報をアプリケーションプログラムに通知するステップと、
アプリケーションプログラムからの通知に応じて、確保した処理ユニットの割り当てを解除するステップを持つことを特徴とする計算機管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ボリュームを格納するストレージ装置を備える計算機システムおよびそのボリュームを利用するアプリケーションが動作する計算機システムと、その計算機システムに適用されるストレージ管理プログラム及び計算機管理プログラムに関する。
【背景技術】
【０００２】
大規模な情報処理システムにおいては、情報処理システムで使用されるデータを効率よく処理するために、複数のプロセッサ等の処理ユニットを保持する計算機、および、ストレージ装置が使用される。
一般的に、複数のプロセッサを保持する計算機は、そのプロセッサを切り分けたり結合したり(パーティショニング)することで、その提供する計算能力をプログラムごとに変更することができる。また一般的にストレージ装置は複数の物理デバイスを持ち、物理デバイス上には特定の記憶領域（以下「ボリューム」とも称する）を確保し、計算機装置からはボリュームを利用する。
【０００３】
情報処理システムでは、アプリケーションプログラム（以下「データ変換バッチ」ともいう）を実行することで、データ変換バッチを実行する計算機が、処理対象とするデータを格納するボリュームを保持するストレージ装置からデータを取得し、データを変換する。データ変換バッチは変換後のデータを、目的のボリュームを保持するストレージ装置に書き込む。
【０００４】
上述のデータ取得時においては、プログラム実行管理者は事前にバッチの実行に必要な計算能力を確保できるようにバッチ実行計算機の設定を行い、また、プログラム実行管理者は事前にストレージ装置を用いて、処理対象とするデータを格納するボリュームのレプリカ（以下、処理対象とするデータを格納するボリュームを「プライマリボリューム」または「ＰＶＯＬ」およびそのレプリカを「セカンダリボリューム」または「ＳＶＯＬ」とも称する）を作成し、そのレプリカからのデータ取得を行うようにデータ変換バッチを設定し、データ変換バッチを実行する。このとき、バッチ実行計算機の設定に当たっては、最も負荷の高いジョブを目標実行時間以内に処理できるような計算能力を確保できるように設定を行い、ジョブごとの動的な設定については考慮していなかった。また、このとき、セカンダリボリュームを作成するに当たっては、プログラム実行管理者またはストレージ管理者自らが行う必要があり、また、セカンダリボリュームの作成に当たっては、ボリュームの構成（ＲＡＩＤレベルなど）を考慮することはできたが、セカンダリボリュームを作成する物理デバイスに既にプライマリボリュームが配置されているか、物理デバイスの異筐体への配置などについては考慮していなかった。（例えば、特許文献１参照。）
【特許文献１】特開２００３−３０３５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の手法においては、以下のような問題点がある。
プログラム実行計算機の計算処理能力確保に当たって、プログラム管理者が最も負荷の高いジョブを目標実行時間以内に処理できるような計算能力を確保できるように見積もりおよび計算機のパーティショニングなどを行うことで必要な計算能力を確保するが、このような方法では計算機の処理能力がその見積もり対象のジョブを除いては過剰となり、資源を有効に利用できないという問題があった。また、最大計算能力を確保するのではなく各バッチごとにその都度必要な計算能力の見積もりおよび確保を行う方法では、管理者にかかる負荷の面で問題があった。
【０００６】
セカンダリボリュームの作成に当たって、データ変換バッチ実行プログラム管理者またはストレージ管理者が、明示的にセカンダリボリュームの作成を指示し、そのセカンダリボリュームを利用するようにデータ変換バッチの実行プロセスを管理する必要があり、管理者にかかる負荷の面で問題があった。
また、セカンダリボリュームを作成する物理デバイスの確保に当たっては、物理デバイスの構成情報については着目していたが、その物理デバイスに既に他のボリュームが配置の有無およびその他性能情報については考慮せず、また同時に、そのボリュームへのアクセスを行うスイッチ・コントローラ等の経路情報についても考慮せず、また同時に、セカンダリボリュームの作成をどのレイヤーの処理能力を用いて行うかについてを考慮せず、物理デバイスを選択しセカンダリボリュームを作成していた。
同時に、計算能力とボリュームとその経路の確保に当たって、それらのマッチングをとることは困難であり、管理者にかかる負荷の面で問題があった。
【０００７】
本発明の目的は、計算機の割り当てにおいて、計算機能力などに基づいて、ストレージ構成を自動的に良好に再編成することにある。
【課題を解決するための手段】
【０００８】
本発明は、計算機とストレージ装置とそれらを接続するスイッチおよびコントローラを有する計算機システムに適用される。計算機は、データ変換バッチ実行プログラムが実行するデータ変換バッチの実行前に、その目標実行時間を元として必要な計算能力を見積もり、計算構成を確保するよう、計算機管理プログラムを用いて計算機に指示し、同時に、関わるデータを格納するプライマリボリュームのセカンダリボリュームを確保するよう、ストレージ管理プログラムを用いてストレージ装置に指示する。
【０００９】
計算機管理プログラムの実行で、計算機のプロセッサ・メモリ・ストレージ・接続方法などに関わる構成情報を保持する計算機構成管理テーブルを指示に基づいて検索し、確保可能な計算機構成を選択し、データ変換バッチ実行プログラムに通知する。
また、ストレージ管理プログラムの実行で、物理デバイス・その物理デバイスの接続情報・その物理デバイスに配置されているボリューム・その物理デバイスに関わる性能情報・配置されているストレージ装置・コントローラ・スイッチ等構成情報を保持するストレージ構成管理テーブルを指示に基づいて検索し、確保可能な物理デバイスを選択し、データ変換バッチ実行プログラムに通知する。
【００１０】
また、データ変換バッチ実行プログラムの実行で、通知された計算機構成に関わる情報、および、通知された物理デバイスの情報を元に、どの計算機構成を利用するか、および、どの物理デバイス上のセカンダリボリューム・ストレージ構成を利用するかを決定し、利用する計算機構成についての情報を計算機管理プログラムに通知し、同時に、利用する物理デバイスについての情報をストレージ管理プログラムに通知する。計算機管理プログラムは通知を受けた情報に基づいて、計算機構成を確保し、確保した計算機構成の情報をデータ変換バッチ実行プログラムに通知する。
【００１１】
また、ストレージ管理プログラムは通知を受けた情報に基づいて、その物理デバイス上にセカンダリボリュームの作成を開始し、セカンダリボリュームを作成した物理デバイスの情報をデータ変換バッチ実行プログラムに通知する。データ変換バッチ実行プログラムは通知を受け、通知を受けたセカンダリボリュームを利用し、かつ、データ変換バッチの実行プロセスを、計算機構成に適合し、かつ、物理デバイスの性能を均一化し実行速度を向上するように調整し、データ変換バッチ処理を実行する。
【発明の効果】
【００１２】
本発明によると、目標実行時間を達成可能な計算機の効率の良い割り当て、および、セカンダリボリュームを自動的かつ効率的に利用アプリケーションに割り当てることを可能とし、またセカンダリボリュームを利用するアプリケーションをストレージの性能と計算機の性能をと均衡の取れた形で引き出して実行することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の第１の実施の形態を、図１〜図１４を参照して説明する。
図１は、本実施の形態におけるプログラム構成及びデータ構成の例を示す図である。図１では例として、あるプライマリボリュームに格納されたデータを変換するために、複数のセカンダリボリュームを作成するストレージ管理プログラムと、セカンダリボリュームからデータを取得して変換を行なうような目標実行時間を持つデータ変換バッチ実行プログラムと、その目標実行時間を達成可能であるように計算機の確保を行おうとする計算機管理プログラムを例として説明する。なお、プライマリボリュームを利用するアプリケーションとしては、データベースプログラムに限定されず、ボリュームに格納されたデータを利用するような任意のアプリケーションであってよい。また、セカンダリボリュームを利用するアプリケーションについても、アプリケーションとしてはデータ変換バッチ実行プログラムに限定されず、ボリュームに格納されたデータを利用するような任意のアプリケーションであってよい。
なお、以下の説明では、プログラムを構成要素の一部としてあるが、これらは計算機やストレージ装置の演算装置の対応した処理部にインストールされて実行される。処理動作などの説明において、プログラムそのものを、プログラムの格納部に付与した符号と同じ符号を付与して説明するが、装置構成では、該当する格納部からプログラムを読み出して処理されるものである。ただし、構成要素としてのプログラムの一部が、専用のハードウェアによって実現されていても良い。
【００１４】
図１において、管理コンソール１５０は計算機管理プログラム格納部１９０と、ストレージ管理プログラム格納部１３０と、データ変換バッチ実行プログラム格納部１４０に格納されたプログラムの操作を行なう。
計算機管理プログラム格納部１９０に格納された計算機管理プログラムは、計算機構成管理テーブル１９２を読み出し、計算機構成管理部１９４を用いて、データ変換バッチ実行プログラム実行部１４０でのプログラムを実行する計算機の構成変更等の管理を行なう。
ストレージ管理プログラム実行部１３０は、ストレージ構成管理テーブル１３２を読み出し、ボリューム管理部１３４を用いて物理デバイスの管理およびセカンダリボリュームの作成を行う。
データ変換バッチ実行プログラム格納部１４０に格納されたデータ変換バッチ実行プログラムは、データ変換バッチ定義・処理履歴予測１４２（以降、データ変換バッチ定義１４２と表記する）を読み出し、実行プロセス制御１４４を用いて、変換バッチの実行プロセスを生成・制御し、データ変換バッチ定義１４２記載の処理内容を実行する。
【００１５】
ストレージ装置１００のＳＶＯＬ作成部１１０（またはストレージ装置１０１のＳＶＯＬ作成部１１１、ＳＡＮハブ・スイッチ１７０のＳＶＯＬ作成部１７１、ストレージコントローラ１８０のＳＶＯＬ作成部１８１のいずれか）は、ストレージ管理プログラム格納部１３０に格納されたストレージ管理プログラムからの指示に基づいて、プライマリボリューム１２１のレプリカであるセカンダリボリューム１２２・１２３・１２４・１２５を、それぞれ物理デバイス１１２・１１３・１１４・１１５上に作成する。
データベースプログラム格納部１６０に格納されたデータベースプログラムは、プライマリボリューム１２１を利用するプログラムである。
なお、データ変換の元となるデータを格納するプライマリボリューム１２１は１つに限定されず、1以上の任意の個数を取ることができる。また、また、セカンダリボリューム１２２・１２３・１２４・１２５についても、４つに限定されず、１以上の任意の個数をとることができる。また、物理デバイス１１２・１１３・１１４・１１５についても、４つに限定されず、１以上の任意の個数を取ることができる。またこれら物理デバイスを格納するストレージ装置についても２台に限定されず、１台以上の任意の個数を取ることができ、ＳＡＮハブ・スイッチおよびストレージコントローラについても１台に限定されず、０台以上の任意の個数をとることができる。
【００１６】
図２は、本実施の形態の計算機システムの構成例を示す図である。
計算機システムは、サーバ計算機２００、クライアント計算機２１０及びストレージ装置２２０を有する。
サーバ計算機２００とクライアント計算機２１０は、ＬＡＮハブ（又はスイッチ）２３０及びケーブルを介して相互に接続されている。ＬＡＮハブ（又はスイッチ）２３０とネットワークをまとめてＬＡＮと呼ぶこともある。尚、サーバ計算機２００とクライアント計算機２１０とを接続するネットワークはＬＡＮで無くても良い。
サーバ計算機２００とストレージ装置２２０とストレージ装置２２５とストレージコントローラ２５０は、ＳＡＮハブ（又はスイッチ）２４０及びネットワークを介して相互に接続される。ＳＡＮハブ（又はスイッチ）２４０及びネットワークをＳＡＮ(Storage Area Network)と言うこともある。尚、サーバ計算機２００とストレージ装置２２０、並びに、ストレージ装置２２５とストレージコントローラ２５０とを接続するネットワークはＳＡＮで無くても良い。ストレージ装置２２０とストレージ装置２２５とは、ここでは同一構成としてある。
【００１７】
サーバ計算機２００は、図１で示した計算機管理プログラム格納部１６０、ストレージ管理プログラム格納部１３０、データ変換バッチ実行プログラム格納部１４０、データベースプログラム格納部１６０に格納された各プログラムを実行する計算機である。サーバ計算機２００は、ＣＰＵ群２０１、主記憶２０２、ＣＤ−ＲＯＭ装置２０３、ＳＡＮ  Ｉ／Ｆ２０４、ＬＡＮ  Ｉ／Ｆ２０５及びディスク装置２０６を有する。そして、これらの装置がコントローラによって相互に接続されている。
図１で示した計算機管理プログラム格納部１９０、ストレージ管理プログラム格納部１３０、データ変換バッチ実行プログラム格納部１４０、データベースプログラム格納部１６０などに格納されたプログラムは、例えば、ディスク装置２０６を利用して構成（格納）されている。また、データ変換バッチ定義１４２、ストレージ構成管理テーブル１３２などのデータについても、ディスク装置２０６に格納されている。ＣＰＵ２０１は、これらのプログラムを主記憶２０２にロードして実行する。
なお、これらのプログラムを、ストレージ装置２２０の記憶２２３にロードして、ストレージ制御プロセッサ２２２において実行してもよく、ＳＡＮハブ・スイッチ２４０の記憶２４３にロードして、制御プロセッサ２４２において実行してもよく、ストレージコントローラ２５０の記憶２５３にロードして、ストレージ制御プロセッサ２５２において実行してもよい。
また、これらのプログラムとデータを、ストレージ装置２２０の物理デバイス１１２、１１３、１１４、１１５に格納することにしてもよく、またはストレージ装置２２５に格納してもよい。または、これらのプログラムとデータを、クライアント計算機２１０のディスク装置２１６に格納することにしてもよい。
【００１８】
クライアント計算機２１０は、ユーザやシステム管理者が操作し、サーバ計算機２００に指示を与えるための計算機である。クライアント計算機２１０は、ＣＰＵ２１１、主記憶２１２、ＣＤ−ＲＯＭ装置２１３、ＬＡＮ  Ｉ／Ｆ２１４、ディスク装置２１６及び装置間相互を接続するコントローラを有する。
クライアント計算機２１０のディスク装置２１６には、管理コンソール（プログラム）１５０が格納されている。ユーザやシステム管理者は、管理コンソール１５０を実行することにより、サーバ計算機２００での計算機管理プログラム格納部１９０およびストレージ管理プログラム格納部１３０およびデータ変換バッチプログラム格納部１４０に格納されたプログラムの実行を指示する。
ストレージ装置２２０は、ＳＡＮ  Ｉ／Ｆ２２１、ストレージ制御プロセッサ２２２、記憶２２３、物理デバイス１１２、１１３、１１４、１１５及びこれらを相互に接続するコントローラを有する。物理デバイス１１２は、プライマリボリューム１２１およびセカンダリボリューム１２２を格納する。ボリュームとディスク装置はｎ対ｎで対応している。具体的に言えば、ボリュームは、物理デバイス１１２が有する物理的な記憶領域の一部又は全部に対応する。したがって、１つのボリュームは、１つ又は複数の物理デバイス１１２が有する記憶領域から構成される。
ＳＶＯＬ作成部１１０は、記憶２２３に格納され、ストレージ制御プロセッサ２２２により、サーバ計算機２００の指示を受けて実行されるプログラムである。
なお、ストレージ装置２２５についてもストレージ装置２２０と類似した構成を保持するものである。
【００１９】
ＳＡＮハブ・スイッチ２４０は、ＳＡＮ  Ｉ／Ｆ２４１、制御プロセッサ２４２、記憶２４３およびこれらを相互に接続するコントローラを有する。
ＳＶＯＬ作成部１７１は、記憶２４３に格納され、制御プロセッサ２４２により、サーバ計算機２００の指示を受けて実行されるプログラムである。
ストレージコントローラ２５０は、ＳＡＮ  Ｉ／Ｆ２５１、ストレージ制御プロセッサ２５２、記憶２５３およびこれらを相互に接続するコントローラを有する。
ＳＶＯＬ作成部１８１は、記憶２５３に格納され、ストレージ制御プロセッサ２５２により、サーバ計算機２００の指示を受けて実行されるプログラムである。
なお、本実施形態は、サーバ計算機２００とクライアント計算機２１０を有する構成としたが、これを一台の計算機で行うようにしてもよい。また、サーバ計算機２００とクライアント計算機２１０は、それぞれ複数から構成されていてもよい。また、本実施形態では、ストレージ装置２２０およびストレージ装置２２５は一台であったが、これが複数接続されていてもよく、実施形態全体としてストレージ装置が１台以上であってよい。また、本実施形態では、ＳＡＮハブ・スイッチ２４０およびストレージコントローラ２５０を有する構成としたが、これは１台のＳＡＮハブ・スイッチ兼ストレージコントローラとして１台で実行してもよく、またはそれぞれ複数から構成されていてもよく、またはなくてもよい。
【００２０】
まず、本実施の形態における計算機システムの処理の流れの概略を説明する。なお、以下の説明でプログラムが主語になる場合は、実際はそのプログラムを実行する装置が処理を実行する。
まず、システム管理者はデータ変換バッチ定義１４２に記録されたデータ変換バッチ群の実行を、クライアント計算機２１０を介してサーバ計算機２００に指示する。指示を受けたデータ変換バッチ実行プログラム１４０は、計算機管理プログラム１９０に対して、実行がスケジューリングされたデータ変換バッチについての計算機構成の確保を要求し、また同時にストレージ管理プログラム１３０に対して、セカンダリボリュームの確保を要求する。
【００２１】
計算機管理プログラムの計算機構成管理部は、計算機構成管理テーブルの情報を元に、確保可能な計算機構成を検索し、確保可能な構成に関する情報をデータ変換バッチ実行プログラムに通知する。このときの情報には、計算機構成管理テーブルに記載の情報が含まれる。また、ストレージ管理プログラムのボリューム管理部は、ストレージ構成管理テーブルの情報を元に、確保可能なセカンダリボリュームの情報および利用できるＳＡＮハブ・スイッチおよびストレージコントローラを検索し、確保可能なボリューム構成に関する情報をデータ変換バッチ実行プログラムに通知する。このときの情報には、ストレージ構成管理テーブルに記載の情報が含まれる。
データ変換バッチ実行プログラムは、受信した計算機構成の情報を元に、利用する計算機構成を選択・決定し、利用するまたはしない計算機構成に関わる情報を計算機管理プログラム１９０に通知する。また同時に、データ変換バッチ実行プログラムは、受信したセカンダリボリュームおよびＳＡＮハブ・スイッチおよびストレージコントローラの情報を元に、利用するセカンダリボリュームおよびＳＡＮハブ・スイッチおよびストレージコントローラを選択・決定し、利用するまたはしない構成に関わる情報をストレージ管理プログラム１３０に通知する。
【００２２】
計算機管理プログラム１９０の計算機構成管理部は、データ変換管理プログラムからの要求を元に、サーバ計算機２００が持つ適切なＣＰＵｓ・主記憶・ＳＡＮＩ／Ｆ・ＬＡＮＩ／Ｆを確保する。計算機構成の確保後、計算機管理プログラムはデータ変換バッチ実行プログラムに確保したことを通知する。また同時に、ストレージ管理プログラムのボリューム管理部は、データ変換管理プログラムからの要求を元に、ストレージ装置１００上の適切な物理デバイス上にプライマリボリューム１２１のセカンダリボリュームを作成するよう、ＳＶＯＬ作成部１１０または１７１または１８１に対して指示する。セカンダリボリュームの作成後、ストレージ管理プログラムはデータ変換バッチ実行プログラムに、作成したことを通知する。
データ変換バッチ実行プログラムは、利用する計算機構成および利用するセカンダリボリュームの個数および性能情報および利用するＳＡＮハブ・スイッチおよびストレージコントローラの情報に従って、実行プロセス制御１４４を用いて、変換バッチの実行プロセス数および各プロセスのデータ取得量の割合などを決定し、変換バッチを実行する。各プロセスは、実行プロセス制御の指示に基づき、セカンダリボリュームからのデータ取得を並列に行うことで高速かつストレージの性能を均一に引き出した変換バッチ実行を可能とし、かつ目標実行時間を達成することができる最適な計算機構成を確保することで、計算機資源を有効に利用することができる。
なおこの処理の流れの概略において、最初のデータ変換実行プログラムからの確保要求時に、計算機構成およびストレージ構成の確保可能な構成を通知する前または同時に、実際の確保を行なう処理を行なってもよい。
【００２３】
図３、図４、図５は、ストレージ構成管理テーブル１３２およびストレージ管理プログラムとデータ変換バッチ実行プログラム間でやり取りする情報の内容例を示す図である。ストレージ構成管理テーブルは、ストレージ装置１００の物理デバイス使用状況・接続情報・性能情報を管理するための情報である。テーブル３１０はストレージ構成管理テーブル１３２の一部でありボリュームに関する以下の情報、ボリュームＩＤ（ＶＯＬＩＤ）３０１、ターゲットＩＤ（ＴＩＤ）３０２、ＬＵＮ３０３、読み込み転送速度（ＲＥＡＤ  ＭＢ／Ｓ）３０４、書き込み転送速度（ＷＲＩＴＥ  ＭＢ／Ｓ）３０５、利用状況（ＩｎＵｓｅ）３０６、配置物理デバイス（ＰＤＥＶ）３０７、利用期限３０８をフィールドとして有する。ボリュームＩＤ、ターゲットＩＤ，ＬＵＮは接続に必要な情報である。読み込み転送速度および書き込み転送速度は、性能に関わる情報である。利用期限はそのボリュームを利用可能な時間の期限を示す情報である。ストレージ構成管理テーブルとして、上述のフィールドに限定されず、その他の接続および性能に関わる情報を記述するフィールドを含んでもよい。また、本例記載のストレージ構成管理テーブルでは、ボリュームごとにレコードが記載されているが、これを物理デバイスを単位としたレコード表現にしてもよい。
【００２４】
図３に示したレコード３１１は、プライマリボリューム１２１に関わるレコードであり、ＰＤＥＶ３０７には、物理デバイス１上に存在することを示す記号「１」が記録され、利用状況３０６にプライマリボリューム１で利用されていることを示すフラグ「Ｐ１」および解放されるまでの時間「∞」が記録されている。レコード３１２は、ボリューム１２２に関わるレコードであり、３１１と同様に、ＰＤＥＶ３０７には、物理デバイス１上に存在することを示す記号「１」が記録され、利用状況３０６に、このボリュームの存在する物理デバイス１１２がプライマリボリューム１で利用されていることを示すフラグ「Ｐ１」および解放されるまでの時間「∞」が記録されている。レコード３１３はボリューム１２３に関わるレコードである。レコード３１４はボリューム１２４に関わるレコードである。レコード３１５はボリューム１２５に関わるレコードである。
【００２５】
レコード群３２０は、データ変換バッチ実行プログラム１４２のセカンダリボリューム確保要求にしたがって、ストレージ管理プログラムが選択し通知するセカンダリボリュームに関わる情報の例である。
レコード群３３０は、データ変換バッチ実行プログラム１４２が、バッチの実行に利用するとしてストレージ管理プログラム１３０に通知する情報の例である。
レコード群３４０は、データ変換バッチ実行プログラムによるデータ変換処理バッチ実行中のときの、ストレージ構成管理テーブル１３２の内容例である。
【００２６】
図４に示したテーブル１３１０はストレージ構成管理テーブル１３２の一部でありＳＡＮハブ・スイッチに関する以下の情報、スイッチＩＤ（Ｓｗｉｔｃｈ  ｉｄ）１３０１、ポート（Ｐｏｒｔ  ｉｄ）１３０２、利用状況（ＩｎＵｓｅ）１３０３、遅延（Ｌａｔｅｎｃｙ）１３０４、負荷状況（Ｌｏａｄ）１３０５、利用可能になるまでの時間（Ｓｅｔｕｐ  ｔｉｍｅ）１３０６、利用期限１３０７をフィールドとして有する。スイッチＩＤ、ポートＩＤは接続に必要な情報である。遅延および負荷状況は、性能に関わる情報である。利用可能になるまでの時間は、そのスイッチ・ポートが利用可能になるまでの時間およびそれを用いてボリュームを作成するときのそのボリュームが利用可能になるまでの時間である。利用期限はそのスイッチおよびポートを利用可能な時間の期限を示す情報である。ストレージ構成管理テーブル（ＳＡＮハブ・スイッチ）として、上述のフィールドに限定されず、その他の接続および性能に関わる情報を記述するフィールドを含んでもよい。また、本実施例記載のストレージ構成管理テーブル（ＳＡＮハブ・スイッチ）では、スイッチとポートを単位としてテーブルおよびレコードが記載されているが、これを別のテーブルおよびレコード表現にしてもよい。
【００２７】
図４に示すレコード１３１１は、ＳＡＮハブ・スイッチ１７１「Ｓｗ１」のポート番号「１」に関わるレコードであり、遅延１３０４および負荷１３０５にはそれぞれ性能をあらわす数字が記載され、利用可能になるまでの時間には、すぐに利用可能であることを示す「０」が記載され、利用期限１３０７には２１時までの利用が可能であることを示す「２１：００」が記載されている。
【００２８】
レコード１３１２はＳＡＮハブ・スイッチ１７１「Ｓｗ１」のポート番号「２」に関わるレコードである。レコード１３１３はスイッチ「Ｓｗ１」のポート番号「３」に関わるレコードであり、ジョブ＃が無期限に利用中であることを示し、「Job#,∞」が利用状況フィールド１３０３に記載されている。レコード１３１４はスイッチ「Ｓｗ２」のポート番号「１」に関わるレコードである。レコード１３１５はスイッチ「Ｓｗ２」のポート番号「２」に関わるレコードである。
【００２９】
また図４に示すテーブル１３２０はストレージ構成管理テーブル１３２の一部でありストレージコントローラに関する以下の情報、コントローラＩＤ（Ｃｏｎｔｏｒｏｌｌｅｒ  ｉｄ）１３３１、ポート（Ｐｏｒｔ  ｉｄ）１３３２、利用状況（ＩｎＵｓｅ）１３３３、遅延（Ｌａｔｅｎｃｙ）１３３４、負荷状況（Ｌｏａｄ）１３３５、利用可能になるまでの時間（Ｓｅｔｕｐ  ｔｉｍｅ）１３３６、利用期限１３３７をフィールドとして有する。コントローラＩＤ、ポートＩＤは接続に必要な情報である。遅延および負荷状況は、性能に関わる情報である。利用可能になるまでの時間は、そのコントローラが利用可能になるまでの時間およびそれを用いてボリュームを作成するときのそのボリュームが利用可能になるまでの時間である。利用期限はそのコントローラおよびポートを利用可能な時間の期限を示す情報である。ストレージ構成管理テーブル（コントローラ）として、上述のフィールドに限定されず、その他の接続および性能に関わる情報を記述するフィールドを含んでもよい。また、本実施例記載のストレージ構成管理テーブル（コントローラ）では、コントローラとポートを単位としてテーブルおよびレコードが記載されているが、これを別のテーブルおよびレコード表現にしてもよい。
【００３０】
レコード１３２１は、ストレージ装置１００内蔵コントローラ「ＳＴＲ１ｉ」のポート番号「１」に関わるレコードであり、遅延１３３４および負荷１３３５にはそれぞれ性能をあらわす数字が記載され、利用可能になるまでの時間には、すぐに利用可能であることを示す「０」が記載され、利用期限１３３７には２２時までの利用が可能であることを示す「２２：００」が記載されている。
レコード１３２２はストレージ装置１００内蔵コントローラ「ＳＴＲ１ｉ」のポート番号「２」に関わるレコードである。レコード１３２３はストレージ装置１０１内蔵コントローラ「ＳＴＲ２ｉ」のポート番号「１」に関わるレコードであり、ジョブ＃９が２１：３０時まで利用中であることを示す「Ｊｏｂ＃９、２１：３０」が利用状況フィールド１３３３に記載されている。レコード１３１４はストレージ装置１０１内蔵コントローラ「ＳＴＲ２ｉ」のポート番号「２」に関わるレコードである。レコード１３１５はストレージコントローラ１８１「ＣＴＬ０１」のポート番号「１」に関わるレコードである。
なお、本例のストレージ構成管理テーブルでは、ボリューム・ＳＡＮ・ハブスイッチおよびストレージコントローラごとにテーブルを記載したが、これを一まとめまたは組み合わせたテーブル表現にしてもよい。
【００３１】
図５に示すテーブル１４００は、ストレージ管理プログラムとデータ変換バッチ実行プログラム間でやり取りする情報の一部の内容例を示すテーブルであり、テーブル３１０およびテーブル１３１０およびテーブル１３２０を合成した情報となっており、ストレージ構成・利用するネットワーク経路・ボリューム作成を行いコントローラなどに関する以下の情報、ボリュームＩＤ（ＶＯＬＩＤ）３０１、ターゲットＩＤ（ＴＩＤ）３０２、ＬＵＮ３０３、配置物理デバイス（ＰＤＥＶ）３０７、利用するコントローラＩＤ（Ｃｏｎｔｏｒｏｌｌｅｒ  ｉｄ）１４０４、利用するスイッチＩＤ（Ｓｗｉｔｃｈ）１４０４、利用するポートＩＤ（Ｐｏｒｔ）１４０６、複合された読み込み転送速度（ＲＥＡＤ  ＭＢ／Ｓ）１４０７、複合された書き込み転送速度（ＷＲＩＴＥ  ＭＢ／Ｓ）１４０８、複合された負荷（Ｌｏａｄ）１４０９、複合された遅延（Ｌａｔｅｎｃｙ）１４１０、複合された利用状況（ＩｎＵｓｅ）１４１１、複合された利用可能になるまでの時間（Ｓｅｔｕｐ  ｔｉｍｅ）１４１２、複合された利用期限１４１３をフィールドとして有する。ボリュームＩＤ、ターゲットＩＤ，ＬＵＮはボリュームの接続に必要な情報である。コントローラＩＤは利用するコントローラの情報であり、スイッチＩＤは利用するスイッチの情報であり、ポートＩＤは利用するコントローラおよびスイッチのポートの情報である。複合された読み込み転送速度および複合された書き込み転送速度は、レコードに指定されたストレージ装置およびコントローラおよびスイッチを利用した場合のストレージ読み出しおよび書き込みの性能に関わる情報である。複合された負荷および複合された遅延は、レコードに指定されたストレージ装置およびコントローラおよびスイッチを利用した場合の性能に関わる情報である。複合された利用状況は、レコードに指定されたストレージ装置およびコントローラおよびスイッチを利用しているときのその組み合わせの利用状況に関わる情報である。複合された利用可能になるまでの時間は、レコードに指定されたストレージ装置およびコントローラおよびスイッチを利用しているときのその組み合わせの利用可能になるまでの時間に関わる情報である。複合された利用期限は、レコードに指定されたストレージ装置およびコントローラおよびスイッチを利用しているときのその組み合わせの利用期限に関わる情報である。
【００３２】
レコード１４３１は、セカンダリボリューム１２３をストレージ装置１００内蔵のＳＶＯＬ作成部１１０で作成し、かつ、ＳＡＮハブ・スイッチ１７０経由し、かつコントローラのポート１・スイッチのポート１を利用したときの該ボリュームに関するレコードであり、ＰＤＥＶ３０７には物理デバイス３上に存在することを示す記号「３」が記録され、コントローラＩＤ１４０４にはストレージ装置１００内蔵のコントローラを用いることを示す記号「ＳＴＲ１ｉ」が記録され、スイッチＩＤ１４０５にはスイッチ１７１を利用することを示す記号「Ｓｗ１」が記録され、ポートＩＤ１４０６にはコントローラのポート１・スイッチのポート１を経由することを示す記号「Ｃ１Ｓ１」が記録され、複合された読み込み転送速度１４０７、複合された書き込み転送速度１４０８、複合された負荷１４０９、複合された遅延１４１０、複合された利用状況１４１１、複合された利用可能になるまでの時間１４１２、複合された利用期限１４１３には、それぞれ該ボリュームを該コントローラおよび該スイッチおよびポート経由でアクセスした場合に、元となるデータ：テーブル３１０のフィールド３０４、３０５、３０６，３０８およびテーブル１３１０のフィールド１３０３，１３０４，１３０５，１３０６，１３０７およびテーブル１３２０のフィールド１３３３、１３３４、１３３５、１３３６、１３３７から計算されたデータが記録されている。レコード１４３２は、セカンダリボリューム１２３をＳＡＮハブ・スイッチ１７０のＳＶＯＬ作成部１７１で作成し、かつ、ＳＡＮハブ・スイッチ１７０経由し、かつストレージのポート２・スイッチのポート１を利用したときの該ボリュームに関するレコードである。レコード１４３３は、セカンダリボリューム１２３をストレージコントローラ１８０のＳＶＯＬ作成部１８１で作成し、かつ、ＳＡＮハブ・スイッチ１７０経由し、かつコントローラのポート２・スイッチのポート１を利用したときの該ボリュームに関するレコードである。
なお、本実施例記載のストレージ管理プログラムとデータ変換バッチ実行プログラム間でやり取りする情報の一部の内容例では、ボリューム・ＳＡＮ・ハブスイッチおよびストレージコントローラの組み合わせでデータをテーブル表現したが、これを分割した、または、他の表現にしてもよい。
【００３３】
図６は、計算機構成管理テーブル１９２および計算機管理プログラムとデータ変換バッチ実行プログラム間でやり取りする情報の内容例を示す図である。計算機構成管理テーブルは、サーバ計算機２００の使用状況・構成・性能情報を管理するための情報である。
テーブル１５１０は計算機構成管理テーブル１９２の内容例およびデータ変換バッチ実行プログラムでやり取りするデータの内容例であり、計算機に関する以下の情報、管理番号（＃）１５０１、計算機構成１５０２、ストレージとの接続１５０３、利用期限１５０４、性能情報（Ｒａｔｉｎｇ）１５０５、利用状況（ＩｎＵｓｅ）１５０６、状況（Ｓｔａｔｕｓ）１５０７をフィールドとして有する。計算機構成１５０２はその確保可能な計算機構成について示す情報である。ストレージ接続１５０３は、その計算機構成に接続可能なストレージ構成（ＳＡＮハブ・スイッチおよびストレージコントローラおよびストレージ装置等）について示す情報である。利用期限はその計算機構成を利用可能な期限について示す情報である。性能情報はその計算機構成の性能を指数化した情報である。利用状況はその計算機構成の利用の有無等について示す情報である。
【００３４】
レコード１５１１は計算機構成「SMP (CPU(a)*8)/8GB/・・・(分離不可)」に関するレコード例であり、ストレージ接続１５０３にはＳＡＮ・ハブスイッチ１７１およびストレージコントローラ１８１およびストレージ装置１００およびストレージ装置１０１を利用可能であることを示す値「Sw1/CLT01/STR1i/STR2i」がセットされており、利用期限１５０４にはその構成をとる計算機を２２：００時まで利用可能であることを示す値「22:00」がセットされており、性能情報１５０５にはその計算機構成の性能を示す指数である「10」が値としてセットされている。レコード１５１２、１５１３、１５１４は、それぞれの計算機構成を示す情報の例である。
【００３５】
なお、計算機構成管理テーブルおよび計算機管理プログラムとデータ変換バッチ実行プログラム間でやり取りするデータのテーブルおよびフィールドとして、上述のフィールドに限定されず、その他の接続および性能に関わる情報を記述するフィールドを含んでもよい。また、本実施例記載の計算機構成管理テーブルでは、計算機構成としてある程度グルーピングしたものを単位としてテーブルおよびレコードを記載しているが、これを例えばＣＰＵｓやメモリやロジカルパーティションなど別のテーブルおよびレコード表現にしてもよい。
【００３６】
図７は、データ変換実行プログラム１４０が、計算機管理プログラム１９０への計算機構成確保要求、および、ストレージ管理プログラム１３０へ行うセカンダリボリュームの確保要求に当たって、付加するフィルタリング条件・選択ポリシーの設定例、および、データ変換実行プログラム１４０が計算機構成・ストレージ構成を選択するための条件例を示す図である。付加するフィルタリング条件・選択ポリシーのフィールドとして選択チェックボックス６０１、フィルタリング条件６０２、条件値１６０３、条件値２ ６０４を持つ。なお、保持するフィールドとしてこれらのフィールドに限定されず、その他のフィールドを持っても良い。レコード６１１、６１２、６１３，６１４，６１５、６１６はストレージフィルタリング条件の例であり、レコード６２１，６２２，６２３，６２４，６２５，６２６は計算機構成フィルタリング条件の例である。ユーザはこの中から任意のフィルタリング条件・選択ポリシーを選択し、選択フィールド６０１にチェックすることで、該当レコードのフィルタリング条件がデータ変換バッチ実行プログラム１４２からの、計算機構成要求、および、ストレージ構成要求に付加される。
【００３７】
図８は、データ変換バッチ定義１４２の内容例を示す図である。
テーブル１７１０はデータ変換バッチ定義１４２の一部でありバッチ実行スケジュールに関する以下の情報、管理番号（＃）１７０１、バッチ名称１７０２、予定実行時刻１７０３、目標実行時間１７０４、構成１７０５、データ量（予想）１７０６をフィールドとして有する。
予定実行時刻１７０３はそのバッチを実行するスケジュール情報であり、目標実行時間１７０４はそのバッチをその実行時間を目標として実行することを示す情報であり、構成１７０５は利用する計算機・ストレージ構成に関する情報であり、データ量１７０６は、バッチが次の実行時に処理する予定のデータ量を示す情報である。レコード１７１１はバッチ「販売管理バッチ(定時)」についてのレコードであり、１５分毎に定期実行が予定されているため予定１７０３には「１５分毎」と記載され、目標１７０４には「１４分」と記載され、１４分以内の実行を目標としており、その処理するデータ量の予想として「１０Ｍ」という値がセットされている。レコード１７１２、レコード１７１３についても、それぞれのバッチ名称に記載のバッチに関するレコードである。
【００３８】
テーブル１７２０はデータ変換バッチ定義１４２の一部でありバッチ処理履歴および予測に関する以下の情報、管理番号（＃）１７３１、バッチ名称・実行履歴１７３２、処理性能１７３３、構成１７３４および予測１７３５をフィールドとして持つ。
バッチ名称・実行履歴１７３２は実行したバッチの名称およびそのバッチが実行されたときの時刻情報であり、処理性能はそのバッチが実行されたときの処理性能情報であり、構成１７３４にはそのときの計算機・ストレージ構成を示す情報であり、予測１７３５にはある計算機構成でどの程度のデータを処理することができるかという予測値を示す情報である。
【００３９】
レコード１７２１は、「販売管理バッチ(定時)」の実行した時の履歴情報レコードであり、バッチ名称・実行履歴１７３２には、「販売管理バッチ(定時)」が「」２００５年の１１月０１日の１３：００から」実行されたことを示す値である「販売管理バッチ(定時):20051101-13:00」がセットされており、そのときの処理性能として４ギガバイトのデータを１２分で処理したことを示す値である「１２ｍｉｎ/４Ｇ」がセットされており、その処理を実行したときの計算機・ストレージ構成を示す値である「Ｃ６，ｍ９，ｄ１」がセットされており、予測１７３５にはＣＰＵ（Ａ）を用いたときに１０Ｍバイトのデータを１分で処理できるであろうことを示す値である「CPU(A)1/10M/10min」がセットされている。
【００４０】
次に、本実施の形態におけるデータ変換バッチ実行プログラムの処理手順について説明する。
図９は、データ変換バッチの実行前処理フローの例を示す図である。
まず、システム管理者がデータ変換バッチ群の開始をサーバ計算機に２００に指示する。指示を受けたデータ変換バッチ実行プログラム１４０は、データ変換バッチ定義・処理履歴予測１４２より次に実行するバッチについての計算機構成の確保要求を計算機管理プログラム１９０へ要求し、同時に、ストレージ構成の確保をストレージ管理プログラム１３０に要求する（ステップＳ１１）。このとき、レコード６１１〜６１５および６２１〜６２６のようなフィルタリング条件・選択ポリシーを付加してもよい。要求後、データ変換バッチ実行プログラム１４０は、計算機構成の確保結果レコード群１５１０を計算機管理プログラム１９０から受信し、同時に、ストレージ構成の確保候補レコード群１４００および３２０および１３１０および１３２０をストレージ管理プログラム１３０から受信する（ステップＳ１２）。このときテーブル３２０が受信されるのは、レコード６１５の「ＰＶＯＬ未配置」が設定されているためである。確保結果より、利用する計算機構成の決定および利用するストレージ構成の選択を行う（ステップＳ１３）。例えば、次に実行されるバッチが「販売管理バッチ(定時)」であるとすると、「販売管理バッチ(定時)」はレコード１７１１より実行目標時間は１４分で想定されるデータ量は１０Ｇバイトであるので、計算機構成管理テーブル１５１０よりその要求を満たす性能情報１５０５の値が「１０」の計算機構成であるレコード１５１１または１５１３が候補としてあげられる。なお、ステップＳ１３において、利用しない計算機構成及び／又はストレージ構成の選択を行ってもよい。
【００４１】
また、利用可能なストレージ構成としてテーブル１４００および３２０を受信しているが、このときバッチの過去実行情報および予測であるテーブル１７２０より「販売管理バッチ(定時)」は２並列読み書き以上で十分に性能を満たすことができると判断されると、転送速度１４０７、１４０８および３０４、３０５が高速なセカンダリボリュームで、準備時間がバッチの目標実行時間を十分満足できるとレコード１４３１〜１４３３およびレコード１４３４，１４３５のフィールド１４１２より判断できる、ボリューム３ａ（レコード３１３）、およびボリューム５ａ（レコード３１５）を選択する。また、このときボリューム３ａをどのレイヤーで作成しどのパスで読むかの決定に当たってレコード１４３１，１４３２，１４３３の準備時間１４１２が比較的短くかつ負荷１４０９の低いレコード１４３３の設定であるＳＶＯＬ作成をストレージコントローラ１８０で行いスイッチ１を経由しポート２および１を用いて書き込むことを決定する。このようにストレージの選択が決定されたので、レコード６２４「Ｓｔｏｒａｇｅにあわせて計算機を確保」ポリシーにしたがって、１５１１または１５１３を選択するが、１５１１はストレージ接続１５０３においてストレージコントローラ１８０が利用可能であることを示す値「ＣＬＴ１」が記録されているのに対し、１５１３は利用不可であるため、レコード１５１１に記載の計算機構成を利用することに決定する。なお、これらストレージおよび計算機構成の決定に当たっては、上述の説明の順序によらず異なる組み合わせ順序によって決定されてもよく、また、値をシミュレーションや実測によって判断してもよい。このようにして、利用する計算機構成および利用するストレージ構成を決定後、利用する計算機構成を計算機管理プログラム１９０に通知し、同時に、利用するストレージ構成をストレージ管理プログラム１３０に通知する（ステップＳ１４）。ステップ４２０において、利用するストレージを決定後、データ変換バッチ実行プロセスをセカンダリボリューム３ａ（レコード３１３）およびボリューム５ａ（レコード３１５）からデータを取得するように設定する。このとき、ボリューム３ａについては、ストレージコントローラ１８１を用いて作成をおこない、ＳＡＮハブ・スイッチ１７１のポート１を経由してデータを取得するように、接続情報であるターゲットＩＤ３０２およびＬＵＮ３０３を用いて設定する。ボリューム５ａについても同様に設定する。次に、性能に関わる情報である読み込み転送速度１４０７を参照し、転送速度の比率である１：２および確保できた計算機の詳細構成を考慮し、読み込むデータの量などを各実行プロセスに設定し（ステップＳ１５）、データ変換処理バッチ実行前処理を終了する（ステップＳ１６）。なお、ステップＳ１４において、利用しない計算機構成及び／又は利用しないストレージ構成の通知を行ってもよい。
【００４２】
次に、本実施の形態のシステムでストレージ構成の管理処理を行なう手順について説明する。
図１０は、ストレージ管理プログラム１３０で行うストレージ構成管理の処理フローを示す図である。
【００４３】
ストレージ管理プログラム１３０は、ステップ４００においてデータ変換バッチ実行プログラム１４０からのストレージ構成確保要求を受信すると（ステップＳ２１）、ストレージ構成管理テーブル１３２のテーブル３１０、１３１０、１３２０を検索し、確保要求に適合したものを選択する（ステップＳ２２）。このとき確保要求にフィルタリング条件がつけられていない場合は、通常確保しても良いと考えられる全ボリューム・全ＳＡＮハブ・スイッチ・全コントローラであるテーブル３１０，１３１０，１３２０の全レコードを検索し、また、集計処理を行ないテーブル１４００を作成する（ステップＳ２３）。なお、集計処理については、ストレージ管理プログラム１３０では行わずにデータ変換バッチ実行プログラム１４０側で行ってもよい。また、確保要求としてレコード６１４のようなフィルタリング条件が付加されていた場合、利用可能な結果レコードとして、レコード３１２を初めから含めない。また、ステップＳ２２又はＳ２３でＳＶＯＬを確保してもよい。検索後、利用可能なボリュームおよびＳＡＮハブ・スイッチおよびコントローラであるテーブル３２０，１３１０，１３２０の整理後のレコードをおよび集計結果であるテーブル１４００をデータ変換バッチ実行プログラム１４０に通知する（ステップＳ２４）。その後、ストレージ管理プログラム１３０は、データ変換バッチ実行プログラム１４０によって利用されるストレージ構成のレコード３１３，３１５、１４３３、１４３５、１３１１’、１３２２’、１３２５’をデータ変換バッチ実行プログラム１４０から受信する(ステップＳ２５)。ストレージ構成管理プログラム１３０は、ステップ５４０において受信したストレージ構成情報に従って、情報に基づいたコントローラおよびネットワーク経路を用いたＳＶＯＬの作成およびアクセス経路の確保を行う。例えばレコード３１２、３１５のＰＤＥＶフィールド３０７に記載の物理デバイス１１２、１１５上に、プライマリボリューム１２１のセカンダリボリュームをそれぞれ１２２、１２５として１４３３よりストレージコントローラ１８０のＳＶＯＬ作成部１８１、および１４３５よりストレージ装置１００の内蔵ＳＶＯＬ作成部１１０およびを用いてそれぞれ作成する(ステップＳ２６)。作成後、ストレージ管理プログラム１３０は、受信したレコードを元に、ストレージ構成管理テーブル１３２を更新する(ステップＳ２７)。例えば、レコード１３１１、１３２２、１３２５については、それぞれのフィールドである１３０３および１３３３を受信したレコード１３１１’、１３２２’、１３２５’に基づいて更新し、レコード３１３、３１５については、プライマリボリューム１２１のセカンダリボリュームを作成したので、レコード群３４０のレコード３１２’、３１５’のように利用状況フィールド３０６にプライマリボリューム１２１のセカンダリが作成されていることを示すフラグである「Ｐ１ｓ」および利用予定時間「１５」を記録し、利用期限３０８を更新する。
なお、ステップＳ２２及び／又はＳ２３において、適合したものを選択した際に実際のＳＶＯＬ等の確保を行ってもよく、このときステップＳ２６においては、既に確保済みの構成について利用しないものを解放する処理としてもよい。また、ステップＳ２５においては、データ変換バッチ実行プログラム１４０から利用しないストレージ構成の情報を受信してもよい。
【００４４】
次に、本実施の形態のシステムで計算機構成の管理処理を行なう手順について説明する。
図１１は、計算機管理プログラム１９０で行う計算機構成管理の処理フローを示す図である。
計算機管理プログラム１９０は、データ変換バッチ実行プログラム１４０からの計算機構成確保要求を受信すると（ステップＳ８１）、計算機構成管理テーブルから確保可能な計算機構成を検索する（ステップＳ８２）。その後検索条件を元に、ストレージ構成のステップ５２０と同様にフィルタリングを実施する（ステップＳ８３）。このときはレコード６２５「ストレージにあわせて確保」とあるので、特にフィルタリングを行わない。検索後、利用可能な計算機構成をデータ変換バッチ実行プログラムに通知する（ステップＳ８４）。特に条件がつけられていなければ、テーブル１５１０のレコード１５１１，１５１２，１５１３，１５１４を通知する。その後、データ変換バッチプログラム１４０から利用する計算機構成を受信し（ステップＳ８５）、通知された情報に従って計算機を構成する（ステップＳ８６）。本実施例では、レコード１５１１を利用すると選択したため、レコード１５１１の計算機構成にしたがってデータ変換バッチの実行計算機の再設定を行う。構成後、計算機構成管理テーブルを更新する（ステップＳ８７）。本例では、レコード１５１１の利用状況１５０５の値を「＃１販売管理バッチ(定時)」が１５分後まで利用することを示す「Job#1、21:15」という値をセットし、状況１５０７を更新する。なお、ステップＳ８２，Ｓ８３，Ｓ８６で、計算機構成を確保してもよい。
なお、ステップＳ８２及び／又はＳ８３において、確保可能な構成を検索した際に、実際の計算機構成の確保を行ってもよく、このときステップＳ８６においては、既に確保済みの構成について利用しないものを解放する処理としてもよい。また、ステップＳ８５において、データ変換バッチ実行プログラム１４０から利用しない計算機構成の情報を受信してもよい。
【００４５】
次に、本実施の形態におけるデータ変換バッチ実行終了時の処理手順について説明する。
図１２は、データ変換バッチの実行後処理フローの例を示す図である。
データ変換バッチ実行プログラム１４０は、データ変換バッチ実行プロセスの終了を検知した場合、ストレージ管理プログラム１３０に対して、ＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラの利用が終了したことを通知し、同時に、計算機管理プログラム１９０に対して、当該計算機の利用が終了したことを通知する（ステップＳ３１）。
【００４６】
次に、本実施の形態におけるストレージ管理プログラムのＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラの解放処理手順について説明する。
図１３は、データ変換バッチ実行処理終了後のストレージ管理プログラムのＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラ解放処理フローの例を示す図である。
ストレージ管理プログラム１３０は、データ変換バッチ実行終了時にデータ変換バッチ実行プログラムから送信されるストレージ利用終了通知を受信すると（ステップＳ４１）、同処理で用いられていたＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラの解放処理を行なう（ステップＳ４２）。解放するＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラについては、ステップＳ２７（図１０）において更新したレコードに該当するＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラである。ＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラの解放後、ストレージ構成管理テーブルを更新し、バッチ実行前の状態に戻す（ステップＳ５３）。本例では、レコード３１３、３１５、１３１１、１３２２、１３２５に相当するレコードについて更新を行う。
【００４７】
次に、本実施の形態におけるストレージ管理プログラムの計算機の解放処理手順について説明する。
図１４は、データ変換バッチ実行処理終了後のストレージ管理プログラムのＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラ解放処理フローの例を示す図である。
ストレージ管理プログラム１３０は、データ変換バッチ実行終了時にデータ変換バッチ実行プログラムから送信される計算機利用終了通知を受信すると（ステップＳ５１）、同処理で用いられていた計算機の解放処理を行なう（ステップＳ５２）。計算機の解放後、計算機構成管理テーブルを更新し、バッチ実行前の状態に戻す（ステップＳ５３）。
【００４８】
次に、本発明の第２の実施の形態を、図１５を参照して説明する。
第１の実施の形態では、あるボリュームからデータを取得する際にセカンダリボリュームを利用する処理を対象として記載していた。これに対して、第２の実施の形態では、あるボリュームにデータを書き込む際にセカンダリボリュームを利用する処理を対象とする。
第２の実施の形態は、構成のすべては第１の実施の形態と同じであり、ここでは省略する。
以下、本実施の形態におけるデータ変換バッチ実行プログラムの処理手順について説明する
本実施の形態におけるデータ変換バッチの実行前処理の処理フローは第一の実施の形態で説明したフロー（図９）と同一である。以下、第１の実施の形態と異なる部分のみ説明する。
図９のフローチャートのステップＳ１４までにおいて、利用するセカンダリボリュームを決定後、本例では、データ変換バッチ実行プロセスをセカンダリボリューム３ａ（レコード３１３）、およびボリューム５ａ（レコード３１５）に対してデータを書き込むように、接続情報であるターゲットＩＤ３０２およびＬＵＮ３０３を用いて設定し、次に性能に関わる情報である書き込み転送速度３０４を参照し、転送速度の比率である３：４に応じて、読み込むデータの量を各実行プロセスに設定する（ステップＳ１５）。
【００４９】
以下、本実施の形態におけるストレージ管理プログラムのＳＶＯＬ解放処理手順について説明する
図１５は、データ変換バッチ処理終了後のストレージ管理プログラムのＳＶＯＬ解放処理の処理フローの例を示す図である。
ストレージ管理プログラム１３０は、データ変換バッチ実行終了時にデータ変換バッチ実行プログラムから送信されるストレージ利用終了通知を受信する（ステップＳ６１）。受信後、同処理で用いられていたＳＶＯＬとＰＶＯＬの同期処理、すなわち、ＳＶＯＬに対して書き込まれたデータのＰＶＯＬへの反映を行う（ステップＳ６２）。この同期処理において、ＳＶＯＬとＰＶＯＬへの同期処理をどのプロセッサレイヤ、すなわちストレージ装置１００内蔵のプロセッサ２２２で行うのか、ストレージ装置１０１に内蔵のプロセッサで行うのか、ストレージコントローラ１８０に内蔵のプロセッサ２５２で行うのか、ＳＡＮハブ・スイッチ内蔵のプロセッサ２４２で行うのかを、テーブル１３１０およびテーブル１３２０を用いて決定する。
【００５０】
同期処理後、同処理で用いられていたＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラの解放処理を行なう（ステップＳ６３）。解放するＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラについては、ステップ５６０において更新したレコードに該当するＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラである。ＳＶＯＬおよびＳＡＮハブ・スイッチおよびストレージコントローラの解放後、ストレージ構成管理テーブルを更新し、バッチ実行前の状態に戻す（ステップＳ６４）。
【００５１】
なお、第１の実施の形態および第２の実施の形態に示した処理は、排他的な関係にあるのではなく、その複合形をとってもよい。すなわち第１の実施の形態のセカンダリボリュームからのデータ取得と、第２の実施の形態のセカンダリボリュームに対してのデータ書き込みを併用することもできる。
【００５２】
次に、本発明の第３の実施の形態を、図１６〜図１８を参照して説明する。
第１の実施の形態では、あるボリュームからデータを取得する際にセカンダリボリュームを利用する処理を対象として記載していた。第２の実施の形態では、あるボリュームにデータを書き込む際にセカンダリボリュームを利用する処理を対象としていた。
第３の実施の形態では、あるボリュームにデータを書き込む際に複数ボリュームを結合したボリュームに対して各構成ボリュームを利用する処理を対象とする。
第３の実施の形態は、構成の大部分は第１の実施の形態と同じであり、説明を省略する。
【００５３】
以下、本実施の形態における、プログラム構成及びデータ構成の例を説明する。
プログラム構成およびデータ構成の大部分は第１の実施の形態で説明した構成（図１）と同一である。以下、第１の実施の形態と異なる部分のみ、図１６を参照して説明する。
図１６は、本実施の形態におけるプログラム構成及びデータ構成の例を示す図である。
本図では例として、ある複数ボリュームを結合して一つに見せかけたボリューム（以下、「ＬＵＳＥ」と記述する）にデータを格納するために、そのＬＵＳＥを構成する複数のボリュームにデータを書き込む、データ変換バッチ実行プログラムを例として説明する。
図１６において、ストレージ管理プログラム１３０はストレージ構成管理テーブル１０３２を読み出し、ボリューム管理部１３４を用いて物理デバイスの管理を行う。
ストレージ装置１００は、ボリューム１２３・１２４・１２５を、それぞれ物理デバイス１１３・１１４・１１５上に格納する。ＬＵＳＥボリューム１０１０は、ボリューム１２３・１２４・１２５からなるボリュームである。
データベースプログラム１６０は、ＬＵＳＥボリューム１０１０を利用するプログラムである。
【００５４】
次に、本実施の形態における計算機システムの処理の流れの概略を説明する。なお、以下の説明でプログラムが主語になる場合は、実際はそのプログラムを実行する装置が処理を実行する。
まず、システム管理者はデータ変換バッチ群の実行を、クライアント計算機２１０を介してサーバ計算機２００に指示する。指示を受けたデータ変換バッチ実行プログラム１４０は、計算機管理プログラム１９０に対して、利用可能な計算機構成情報を要求し、同時に、ストレージ管理プログラム１３０に対して、ＬＵＳＥボリュームを構成するボリュームの情報を要求する。計算機管理プログラムの計算機構成管理部は、計算機構成管理テーブルの情報を元に、利用可能な計算機構成の情報をデータ変換バッチ実行プログラムに通知する。このときの情報には、計算機構成管理テーブルに記載の情報が含まれる。同時に、ストレージ管理プログラムのボリューム管理部は、ストレージ構成管理テーブルの情報を元にＬＵＳＥを構成するボリュームに関わる情報を通知する。このときの情報には、ストレージ構成管理テーブルに記載の情報が含まれる。データ変換バッチ実行プログラムは、受信した計算機構成情報および受信したＬＵＳＥ構成ボリュームの性能を含む情報およびＳＡＮハブ・スイッチ・ストレージコントローラの情報に従って、実行プロセス制御１４４を用いて、変換バッチの実行プロセス数および各プロセスのデータ書き込み量の割合などを決定し、変換バッチを実行する。各プロセスは、実行プロセス制御の指示に基づき、ＬＵＳＥ構成ボリュームへのデータ書き込みを並列に行うことで高速かつストレージの性能を均一に引き出した変換バッチ実行を可能とする。
【００５５】
図１７は、ストレージ構成管理テーブル１０３２の例を示す図であり、第１の実施の形態で説明したテーブル（図３）とほぼ同一である。以下、第１の実施の形態と異なる部分のみ説明する。
図１７に示したストレージ構成管理テーブル１１３２は、ストレージ構成管理テーブル１０３２の一部であり、ストレージ装置１００およびストレージ装置１０１の物理デバイス使用状況・接続情報・性能情報を管理するための情報である。ストレージ構成管理テーブル１０３２は、利用状況（ＩｎＵｓｅ）１１０６、ＬＵＳＥ構成情報１１０７をフィールドとして有する。利用状況は、ディスクの利用割合（％）を記録するフィールドである。また、ＬＵＳＥ構成情報には、該ボリュームが構成するＬＵＳＥボリュームを記録する。ストレージ構成管理テーブルとしては、上述のフィールドに限定されず、その他の接続および性能に関わる情報を記述するフィールドを含んでもよい。また、本実施の形態に記載の拡張管理テーブルでは、ボリュームごとにレコードが記載されているが、これを、物理デバイスを単位としたレコード表現にしてもよい。
【００５６】
レコード１１１３・１１１４・１１１５は、ＬＵＳＥボリューム１０１０を構成するボリュームであり、ＬＵＳＥ構成情報フィールド１１０７には、そのことを示す記号「１０１０」が記録されている。
【００５７】
次に、本実施の形態におけるデータ変換バッチ実行プログラムの処理手順について説明する。フローについて主な部分は第１の実施の形態で説明した処理フロー（図９）と同一であるので、以下、第１の実施の形態と異なる部分を中心に説明する。
図１８は、データ変換バッチの実行後処理フローの例を示す図である。
まず、システム管理者がデータ変換バッチ群の開始をサーバ計算機に２００に指示する。指示を受けたデータ変換バッチ実行プログラム１４０は、確保可能な計算機構成の情報を計算機管理プログラムに要求し、同時に、処理対象とするＬＵＳＥボリューム１０１０を構成するボリュームの情報をストレージ管理プログラムに要求する（ステップＳ７１）。要求後、データ変換バッチ実行プログラム１４０は、利用可能な計算機構成情報、および、ＬＵＳＥを構成する情報レコード１１１３・１１１４・１１１５をストレージ管理プログラム１３０から受信する（ステップＳ７２）。確保結果より、ＬＵＳＥボリューム１０１０は３ボリュームで構成されているため、３並列プロセスでバッチを実行しデータをＬＵＳＥボリューム１０１０を構成する各ボリューム１２３・１２４・１２５に書き込むように、利用する計算機構成を決定し、接続情報であるターゲットＩＤ３０２およびＬＵＮ３０３を用いて設定し、かつ、書き込み転送速度３０５、または、ディスク利用割合１１０６の比率に従って、各プロセスの書き込むデータ量を設定する（ステップＳ７３）。例えば、転送速度３０５を参照した場合、速度の比率である３：２：４に応じて、書き込むデータの量を各実行プロセスに設定する。
【００５８】
なお、第１，第２，第３の実施の形態に示した処理は、排他的な関係にあるのではなく、その複合形をとってもよい。すなわち第１の実施の形態のセカンダリボリュームからのデータ取得と第２の実施の形態のセカンダリボリュームに対しての書き込み、および、第３の実施の形態のＬＵＳＥリボリュームに対してのデータ書き込みを併用することもできる。
また本発明は、以上説明した各実施の形態で説明した具体的な構成や処理に限定されるものでは無く、本発明の要旨を逸脱しない範囲で、種々の変更や変形が可能であることは勿論である。
【図面の簡単な説明】
【００５９】
【図１】本発明の第１の実施の形態による計算機システムの論理的な構成例を示す構成図である。
【図２】第１の実施の形態による計算機システムのハードウェア構成例を示す構成図である。
【図３】第１の実施の形態によるストレージ構成管理テーブルの例を示す構成図である。
【図４】第１の実施の形態によるストレージ構成管理テーブルの例を示す説明図である。
【図５】第１の実施の形態によるストレージ構成管理テーブルとストレージ管理プログラムとデータ変換バッチ実行プログラムでやり取りされるデータの例を示す説明図である。
【図６】第１の実施の形態による計算機構成管理テーブルの例を示す説明図である。
【図７】第１の実施の形態によるフィルタリング条件・選択ポリシーの例を示す説明図である。
【図８】第１の実施の形態によるデータ変換バッチ定義・処理履歴予測の例を示す説明図である。
【図９】第１の実施の形態によるデータ変換バッチ実行前処理の処理手順の例を示すフローチャートである。
【図１０】第１の実施の形態によるデータ変換バッチ実行前処理の処理手順の例を示すフローチャートである。
【図１１】第１の実施の形態による計算機管理プログラムの処理手順の例を示すフローチャートである。
【図１２】第１の実施の形態によるデータ変換バッチ実行後処理の処理手順の例を示すフローチャートである
【図１３】第１の実施の形態によるストレージ管理プログラムのストレージ構成（セカンダリボリュームおよびＳＡＮハブ・スイッチ、ストレージコントローラ等）解放処理の処理手順の例を示すフローチャートである。
【図１４】第１の実施の形態によるストレージ管理プログラムの計算機構成解放処理の処理手順の例を示すフローチャートである。
【図１５】第２の実施の形態によるストレージ管理プログラムのストレージ構成（セカンダリボリュームおよびＳＡＮハブ・スイッチ、ストレージコントローラ等）確保処理の処理手順の例を示すフローチャートである。
【図１６】第３の実施の形態による計算機システムの論理的な構成例を示す構成図である。
【図１７】第３の実施の形態によるストレージ構成管理テーブルの例を示す説明図である。
【図１８】第３の実施の形態によるストレージ管理プログラムのストレージ構成（セカンダリボリュームおよびＳＡＮハブ・スイッチ、ストレージコントローラ等）解放処理の処理手順の例を示すフローチャートである。
【符号の説明】
【００６０】
１００…ストレージ装置、１０１…ストレージ装置、１１０…ＳＶＯＬ作成部、１１１…ＳＶＯＬ作成部、１１２…物理デバイス＃１、１２１…ＰＶＯＬ、１２３…ＳＶＯＬ（３ａ）１３０…ストレージ管理プログラム格納部、１３２…ストレージ構成管理テーブル、１４０…データ変換バッチ実行プログラム格納部、１４４…実行プロセス制御部、１７０…ＳＡＮハブ・スイッチ、１７１…ＳＶＯＬ作成部、１８０…ストレージコントローラ、１８１…ＳＶＯＬ作成部、１９０…計算機管理プログラム、１９２…計算機構成管理テーブル、１９４…計算機構成管理部
【図１】
2007328604.tif 000003
【図２】
2007328604.tif 000004
【図３】
2007328604.tif 000005
【図４】
2007328604.tif 000006
【図５】
2007328604.tif 000007
【図６】
2007328604.tif 000008
【図７】
2007328604.tif 000009
【図８】
2007328604.tif 000010
【図９】
2007328604.tif 000011
【図１０】
2007328604.tif 000012
【図１１】
2007328604.tif 000013
【図１２】
2007328604.tif 000014
【図１３】
2007328604.tif 000015
【図１４】
2007328604.tif 000016
【図１５】
2007328604.tif 000017
【図１６】
2007328604.tif 000018
【図１７】
2007328604.tif 000019
【図１８】
2007328604.tif 000020