JP2016184310A - 情報処理システム、制御装置および情報処理システムの制御方法 - Google Patents
情報処理システム、制御装置および情報処理システムの制御方法 Download PDFInfo
- Publication number
- JP2016184310A JP2016184310A JP2015064488A JP2015064488A JP2016184310A JP 2016184310 A JP2016184310 A JP 2016184310A JP 2015064488 A JP2015064488 A JP 2015064488A JP 2015064488 A JP2015064488 A JP 2015064488A JP 2016184310 A JP2016184310 A JP 2016184310A
- Authority
- JP
- Japan
- Prior art keywords
- job
- input
- unit
- information processing
- output device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer Security & Cryptography (AREA)
Abstract
【課題】 特性が異なる複数のジョブを実行する場合に、ジョブの処理効率を向上する。
【解決手段】 第1の入出力装置が有する第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブと、第2の入出力装置が有する第2の入出力特性に適した読み出しと書き込みの割合であり、第1のジョブと依存関係を有する第2のジョブと、第3のジョブとが保持部に保持されている場合、第1の入出力装置を接続させた計算ノードに第1のジョブを投入し、第1のジョブの実行の完了後、計算ノードに第3のジョブを投入するとともに、第1の入出力装置が記憶する第1のジョブの実行による実行結果データを、第2の入出力装置にコピーし、第3のジョブの実行の完了後、第2の入出力装置を接続させた計算ノードに第2のジョブを投入する。
【選択図】 図1
【解決手段】 第1の入出力装置が有する第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブと、第2の入出力装置が有する第2の入出力特性に適した読み出しと書き込みの割合であり、第1のジョブと依存関係を有する第2のジョブと、第3のジョブとが保持部に保持されている場合、第1の入出力装置を接続させた計算ノードに第1のジョブを投入し、第1のジョブの実行の完了後、計算ノードに第3のジョブを投入するとともに、第1の入出力装置が記憶する第1のジョブの実行による実行結果データを、第2の入出力装置にコピーし、第3のジョブの実行の完了後、第2の入出力装置を接続させた計算ノードに第2のジョブを投入する。
【選択図】 図1
Description
本発明は、情報処理システム、制御装置および情報処理システムの制御方法に関する。
システムに要求される性能に応じてホストコンピュータを所定数のストレージ装置に接続することで、要求される性能を満足する情報処理システムを構築する手法が提案されている。この種の情報処理システムは、アプリケーションプログラムに要求される性能を満たす記憶領域を、ストレージ装置が有する複数の記憶領域の中から選択し、選択した記憶領域をホストコンピュータに割り当てる(例えば、特許文献1参照)。
この種の情報処理システムに搭載されるストレージ装置は、HDD(Hard Disk Drive)、フラッシュメモリ、またはHDDとフラッシュメモリの両方を含む。情報処理システムは、HDDとフラッシュメモリの両方を含むストレージ装置にデータを移行する場合、HDDに移行するデータとフラッシュメモリに移行するデータとを、データのアクセス特性に基づいて決定する(例えば、特許文献2参照)。
また、入力キューに保持した複数の入出力要求を、入出力要求に付けられた優先順位にしたがってストレージ装置のキューに選択的に転送する制御装置を有する情報処理システムが提案されている(例えば、特許文献3参照)。制御装置は、ストレージ装置のキューに保持される入出力要求の数を目標数に維持するとともに、入出力要求の処理が実行されるまでの目標の待ち時間と実際の待ち時間とに基づいて目標数を調整する。
情報処理システムが実行する複数のジョブは、ストレージ装置等の記憶装置に対する読み出しと書き込みの割合が異なる場合がある。また、SSD(Solid State Drive)等の記憶装置は、読み出し性能が書き込み性能より高い製品と、書き込み性能が読み出し性能より高い製品とが存在する。例えば、書き込みの割合が読み出しの割合より高いジョブが、書き込み性能が読み出し性能より高い記憶装置で実行される場合、読み出し性能が書き込み性能より高い記憶装置で実行される場合に比べて処理時間は短縮される。しかしながら、ジョブの特性に基づいて、ジョブの実行に使用する記憶装置を、性能が互いに異なる複数の記憶装置の中から選択する手法は提案されていない。
本件開示の情報処理システム、制御装置および情報処理システムの制御方法は、特性が互いに異なる複数のジョブを実行する場合に、ジョブの処理効率を向上することを目的とする。
一つの観点によれば、複数の計算ノードと、複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置と、情報処理装置を制御する制御装置とを有する情報処理システムにおいて、制御装置は、複数のジョブを保持する保持部と、複数の計算ノードのいずれかにジョブを投入するジョブ投入部と、複数の計算ノードと入出力装置との接続を変更する構成変更部と、第2の入出力特性よりも第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、第1のジョブと依存関係があるとともに第1の入出力特性よりも第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および第1のジョブと第2のジョブのいずれとも依存関係がない第3のジョブが保持部に保持されている場合、構成変更部に第1の入出力装置を接続させた情報処理装置に含まれる計算ノードにジョブ投入部を介して第1のジョブを投入し、第1のジョブの実行の完了後、情報処理装置に含まれる複数の計算ノードの少なくともいずれかにジョブ投入部を介して第2のジョブよりも先に第3のジョブを投入するとともに構成変更部に第1の入出力装置と第2の入出力装置とを接続させ、第1の入出力装置が記憶する第1のジョブの実行による実行結果データを第2の入出力装置にコピーさせ、第3のジョブの実行の完了後、構成変更部に第2の入出力装置を接続させた情報処理装置に含まれる計算ノードにジョブ投入部を介して第2のジョブを投入する制御部を有する。
別の観点によれば、複数の計算ノードと、複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置を制御する制御装置は、複数のジョブを保持する保持部と、複数の計算ノードのいずれかにジョブを投入するジョブ投入部と、複数の計算ノードと入出力装置との接続を変更する構成変更部と、第2の入出力特性よりも第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、第1のジョブと依存関係があるとともに第1の入出力特性よりも第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および第1のジョブと第2のジョブのいずれとも依存関係がない第3のジョブが保持部に保持されている場合、構成変更部に第1の入出力装置を接続させた情報処理装置に含まれる計算ノードにジョブ投入部を介して第1のジョブを投入し、第1のジョブの実行の完了後、情報処理装置に含まれる複数の計算ノードの少なくともいずれかにジョブ投入部を介して第2のジョブよりも先に第3のジョブを投入するとともに構成変更部に第1の入出力装置と第2の入出力装置とを接続させ、第1の入出力装置が記憶する第1のジョブの実行による実行結果データを第2の入出力装置にコピーさせ、第3のジョブの実行の完了後、構成変更部に第2の入出力装置を接続させた情報処理装置に含まれる計算ノードにジョブ投入部を介して第2のジョブを投入する制御部を有する。
別の観点によれば、複数の計算ノードと、複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置と、情報処理装置を制御する制御装置とを有する情報処理システムの制御方法は、制御装置が、複数の計算ノードのいずれかに保持部が保持する複数のジョブのいずれかを投入し、複数の計算ノードと入出力装置との接続を変更し、第2の入出力特性よりも第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、第1のジョブと依存関係があるとともに第1の入出力特性よりも第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および第1のジョブと第2のジョブのいずれとも依存関係がない第3のジョブが保持部に保持されている場合、構成変更部に第1の入出力装置を接続させた情報処理装置に含まれる計算ノードにジョブ投入部を介して第1のジョブを投入し、第1のジョブの実行の完了後、情報処理装置に含まれる複数の計算ノードの少なくともいずれかにジョブ投入部を介して第2のジョブよりも先に第3のジョブを投入するとともに構成変更部に第1の入出力装置と第2の入出力装置とを接続させ、第1の入出力装置が記憶する第1のジョブの実行による実行結果データを第2の入出力装置にコピーさせ、第3のジョブの実行の完了後、構成変更部に第2の入出力装置を接続させた情報処理装置に含まれる計算ノードにジョブ投入部を介して第2のジョブを投入する。
本件開示の情報処理システム、制御装置および情報処理システムの制御方法は、特性が互いに異なる複数のジョブを実行する場合に、ジョブの処理効率を向上することができる。
以下、図面を用いて実施形態を説明する。
図1は、情報処理システム、制御装置および情報処理システムの制御方法の一実施形態を示す。図1に示す情報処理システムSYS1は、情報処理装置200と、情報処理装置200を制御する制御装置100とを有する。制御装置100は、保持部10、制御部12、ジョブ投入部14および構成変更部16を有する。情報処理装置200は、複数の計算ノード20、22、切り替え装置24、複数の入出力装置26(26a、26b)、28(28a、28b)を有する。各計算ノード20、22は、CPU(Central Processing Unit)やプロセッサ等の演算処理装置と、演算処理装置により処理するデータを記憶するDRAM(Dynamic Random Access Memory)等の主記憶装置とを有する。
入出力装置26は、第1の入出力特性を有し、入出力装置28は、第2の入出力特性を有する。例えば、第1の入出力特性は、書き込み性能が読み出し性能に比べて高い書き込み優位特性であり、第2の入出力特性は、読み出し性能が書き込み性能に比べて高い読み出し優位特性である。すなわち、第1の入出力特性は、所定数のデータを書き込む書き込み時間が、所定数のデータを読み出す読み出し時間より短い特性である。第2の入出力特性は、所定数のデータを読み出す読み出し時間が、所定数のデータを書き込む書き込み時間より短い特性である。なお、第1の入出力特性が読み出し優位特性であり、第2の入出力特性が書き込み優位特性であってもよい。
保持部10は、情報処理システムSYS1の外部から供給される複数のジョブJBを保持する。制御部12は、保持部10に保持された複数のジョブJBのいずれかを取り出し、取り出したジョブJBをジョブ投入部14に出力する。ジョブ投入部14は、制御部12から受けるジョブJBを、制御部12の指示にしたがって複数の計算ノード20、22のいずれかに投入する。計算ノード20、22は、切り替え装置24を介して接続された入出力装置26、28のいずれかを使用して、投入されたジョブJBを実行する。また、制御部12は、計算ノード20、22と入出力装置26、28との接続を変更する指示を構成変更部16に出力する。構成変更部16は、制御部12からの指示に基づいて、切り替え装置24を制御し、計算ノード20、22と入出力装置26、28との接続を変更する。
図1に示す例では、保持部10にジョブJB1、JB2、JB3がこの順序で保持される。ジョブJB1は、読み出し優位特性よりも書き込み優位特性に適した読み出しと書き込みの割合である。すなわち、ジョブJB1は、書き込み処理の割合が読み出し処理の割合より大きいため、読み出し優位特性を有する入出力装置28よりも書き込み優位特性を有する入出力装置26を使用して処理された方が効率がよい。
ジョブJB2は、ジョブJB1と依存関係があり、書き込み優位特性よりも読み出し優位特性に適した読み出しと書き込みの割合である。すなわち、ジョブJB2は、読み出し処理の割合が書き込み処理の割合より大きいため、書き込み優位特性を有する入出力装置26よりも読み出し優位特性を有する入出力装置28を使用して処理された方が効率がよい。
ジョブJB3は、ジョブJB1、JB2のいずれとも依存関係がなく、読み出し優位特性よりも書き込み優位特性に適した読み出しと書き込みの割合である。例えば、各ジョブJB1、JB2、JB3が、書き込み優位特性または読み出し優位特性のいずれに適した読み出しと書き込みの割合であるかは、各ジョブJB1、JB2、JB3とともに供給される情報により判定される。
図2は、図1に示す情報処理システムSYS1の動作の一例を示す。制御部12は、保持部10に最初に保持されたジョブJB1に含まれる情報に基づいて、ジョブJB1における書き込み処理の割合が読み出し処理の割合より大きいことを判定する。
そして、図2(A)に示すように、制御部12は、構成変更部16に、書き込み性能が読み出し性能に比べて高い書き込み優位特性を有する入出力装置26aと計算ノード20とを接続させる。制御部12は、保持部10からジョブJB1を取り出し、取り出したジョブJB1を、ジョブ投入部14を介して計算ノード20に投入する。
制御部12は、ジョブJB1の次に保持部10に保持されたジョブJB2が、ジョブJB1と依存関係があるとともに、ジョブJB2における読み出し処理の割合が書き込み処理の割合より大きいことを、ジョブJB2に含まれる情報に基づいて判定する。すなわち、制御部12は、ジョブJB1、JB2が互いに依存関係を有し、互いに異なる入出力特性に適した読み出しと書き込みの割合であることを、ジョブJB3に含まれる情報に基づいて判定する。また、制御部12は、ジョブJB2の次に保持部10に保持されたジョブJB3が、ジョブJB1、JB2と依存関係がなく、ジョブJB3における書き込み処理の割合が読み出し処理の割合より大きいことを検出する。
このため、制御部12は、計算ノード20によるジョブJB1の実行が完了した後、図2(B)に示すように、構成変更部16に、書き込み優位特性を有する入出力装置26bと計算ノード20とを接続させる。そして、制御部12は、保持部10からジョブJB2よりも先にジョブJB3を取り出し、取り出したジョブJB3を、ジョブ投入部14を介して計算ノード20に投入する。
また、制御部12は、構成変更部16に、計算ノード22と入出力装置26a、28aとを接続させ、入出力装置26aが記憶するジョブJB1の実行による実行結果データを入出力装置28aにコピーさせるコピー処理CPYを計算ノード22に実行させる。これにより、ジョブJB3の実行のバックグラウンドでコピー処理CPYを実行することができ、コピー処理CPYに掛かる時間を、ジョブJB3の実行時間に含めることができる。
制御部12は、計算ノード20によるジョブJB3の実行と計算ノード22によるコピー処理CPYとが完了した後、図2(C)に示すように、構成変更部16に、ジョブJB1の実行結果データがコピーされた入出力装置28aと、計算ノード20とを接続させる。そして、制御部12は、ジョブ投入部14を介してジョブJB2を計算ノード20に投入する。計算ノード20は、読み出し優位特性を有する入出力装置28aを使用して、読み出し処理の割合が書き込み処理の割合より大きいジョブJB2を実行する。このため、書き込み優位特性を有する入出力装置26aを使用して、ジョブJB2を実行する場合に比べて、ジョブJB2の実行時間を短縮することができる。そして、ジョブJB1、JB2、JB3の実行は完了する。
以上、図1に示す情報処理システムSYS1は、読み出しと書き込みの割合が互いに異なり、データの依存関係を有するジョブJB1、JB2を、読み書き性能が互いに異なる入出力装置26、28を使用して実行する。また、情報処理システムSYS1は、ジョブJB1の実行結果データを入出力装置26aから入出力装置28aへコピーするコピー処理CPYを、他のジョブJB3の実行中に実行する。
例えば、入出力装置26aが書き込み優位特性を有し、入出力装置28aが読み出し優位特性を有する場合、書き込みの割合が読み出しの割合より大きいジョブJB1は、入出力装置26aを使用して実行される。読み出しの割合が書き込みの割合より大きく、ジョブJB1と依存関係を有するジョブJB2は、入出力装置26aに記憶されたジョブJB1の実行結果データがコピーされた入出力装置28aを使用して、ジョブJB3のバックグラウンドで実行される。これにより、ジョブJB1、JB2、JB3の実行が完了するまでの時間を従来に比べて短縮することができ、ジョブJB1、JB2、JB3の処理効率を従来に比べて向上することができる。この結果、情報処理システムSYS1の性能を従来に比べて向上することができる。
図3は、情報処理システム、制御装置および情報処理システムの制御方法の別の実施形態を示す。図3に示す情報処理システムSYS2は、管理サーバMSVおよびリソースプールRSCPLを有する。
管理サーバMSVは、ユーザインタフェースUSRIF、ジョブキューJCUE、ジョブ割り当て部ALCT、データベースJOBDB、SVDB、SSDDB、ノード配備部NDPLおよび構成変更部HWCを有する。管理サーバMSVは、インターネットまたはイントラネット等のネットワークNWを介して、リソースプールRSCPLを使用するユーザ等が操作する端末装置TMに接続される。管理サーバMSVは、リソースプールRSCPLを制御する制御装置の一例である。なお、管理サーバMSVは、ネットワークNWを介さずに端末装置TMに接続されてもよく、ネットワークNWを介して複数の端末装置TMに接続されてもよい。
リソースプールRSCPLは、複数のサーバSV(SV0、SV1、SV2、SV3、SV4、SV5)、複数の記憶装置SSD(SSD0、SSD1、SSD2、SSD3、SSD4、SSD5)およびスイッチ装置DSWを有する。また、リソースプールRSCPLは、スイッチ制御部SWCおよびネットワークスイッチNSWを有する。サーバSVは、計算ノードの一例であり、記憶装置SSDは、入出力装置およびソリッドステートドライブ装置の一例である。リソースプールRSCPLは、サーバSVと記憶装置SSDとを有する情報処理装置の一例である。なお、リソースプールRSCPLに搭載されるサーバSVの数は、6つに限定されず、リソースプールRSCPLに搭載される記憶装置SSDの数は、6つに限定されない。
端末装置TMは、情報処理システムSYS1にジョブを実行させるコンピュータ装置に含まれる。情報処理システムSYS1は、端末装置TMを介して入力されるユーザからの指示に基づいて、ジョブを実行し、ジョブの実行結果を端末装置TMに出力する。
ユーザインタフェースUSRIFは、端末装置TMからのジョブを受信し、受信したジョブをJSON(Java_Script Object Notation;JavaScriptは登録商標)形式等のデータ形式に変換し、ジョブキューJCUEに転送する。また、ユーザインタフェースUSRIFは、ジョブの実行結果を端末装置TMに送信する。なお、図3に示す管理サーバMSVには、ジョブの実行結果を端末装置TMに送信するための機能ブロックおよび経路が記載されていない。例えば、ユーザインタフェースUSRIFが受信するジョブは、ジョブを実行させるサーバSVの数、各サーバSVに接続する記憶装置SSDの数、後続のジョブとの依存関係、およびジョブによる記憶装置SSDのアクセス特性を示すジョブ情報を含む。
ユーザインタフェースUSRIFは、ウェブブラウザ上で動作するGUI(Graphical User Interface)により実現される。端末装置TMを操作するユーザは、端末装置TMに表示されるGUI画面を使用して、ジョブを情報処理システムSYS1に送信し、ジョブの実行結果を受信する。
ジョブキューJCUEは、端末装置TMから受ける複数のジョブを順次に保持し、保持したジョブをジョブ割り当て部ALCTからの指示に基づいてジョブ割り当て部ALCTに転送する。ジョブキューJCUEは、複数のジョブを保持する保持部の一例である。図3では、3つのジョブA1、A2、B1がジョブキューJCUEに順次に投入された状態を示す。ジョブA1、A2は、互いに依存関係を有しており、ジョブA1の実行により得られたデータを使用してジョブA2が実行される。ジョブB1は、ジョブA1、A2に対して依存関係を持たない。ジョブキューJCUEは、ジョブを保持する3つの領域を有するが、ジョブを保持する領域の数は、4つ以上でもよい。
ジョブ割り当て部ALCTは、ジョブキューJCUEに保持されたジョブの情報をデータベースJOBDBに格納する。データベースJOBDBに格納される情報の例は、図5に示される。
ジョブ割り当て部ALCTは、データベースJOBDBおよびデータベースSVDBを参照し、リソースプールRSCPLに投入するジョブに含まれる情報で指定される数のサーバSVを、ジョブを実行するサーバSVとして選択する。また、ジョブ割り当て部ALCTは、ジョブに含まれるアクセス特性に基づいて、複数の記憶装置SSDの中からジョブの処理の使用に適したタイプを選択する。
ジョブ割り当て部ALCTは、選択したサーバSV上にジョブを実行する環境を構築させる指示をノード配備部NDPLに出力する。例えば、ジョブ割り当て部ALCTは、ジョブを実行するサーバSVを起動する指示と、ジョブを実行するアプリケーションプログラムをインストールする指示とをノード配備部NDPLに出力する。
ジョブ割り当て部ALCTは、選択した記憶装置SSDのうち、ジョブに含まれる情報で指定される数の記憶装置SSDを、ジョブを実行するサーバSVに接続させる指示を構成変更部HWCに出力する。そして、ジョブ割り当て部ALCTは、ジョブキューJCUEに保持されたジョブの1つを選択し、選択したジョブをリソースプールRSCPLに投入する指示をノード配備部NDPLに出力する。
ジョブ割り当て部ALCTは、構成変更部HWCに接続させたサーバSVと記憶装置SSDとの接続関係を示す情報をデータベースSVDB、SSDDBのそれぞれに格納する。そして、ジョブ割り当て部ALCTは、データベースJOBDB、SVDB、SSDDBを使用して、リソースプールRSCPL内のリソース(サーバSVおよび記憶装置SSD)を管理する。データベースSVDB、SSDDBに格納される情報の例は、図5に示される。
ノード配備部NDPLは、ジョブ割り当て部ALCTからの指示に基づいて、リソースプールRSCPL内に所定数のサーバSVを配備し、ジョブ割り当て部ALCTから受けるジョブを、配備したサーバSVに投入する。ここで、サーバSVの配備とは、未使用のサーバSVの中から、ジョブを実行する所定数のサーバSVを選択し、起動することである。サーバSVの起動は、電源の投入とジョブを実行するアプリケーションプログラムの起動とを含む。例えば、ノード配備部NDPLの機能の一部は、OpenStack(登録商標)のIronicにより実現されてもよい。ノード配備部NDPLは、複数のサーバSVのいずれかにジョブを投入するジョブ投入部の一例である。
構成変更部HWCは、ジョブ割り当て部ALCTからの指示に基づいて、リソースプールRSCPLのスイッチ制御部SWCを制御し、所定のサーバSVを所定の記憶装置SSDに接続させる。
リソースプールRSCPLにおいて、各サーバSVは、CPU等の演算処理装置と、DRAM等の主記憶装置MEMとを有する。なお、各サーバSVは、OS(Operating System)およびアプリケーションプログラムを格納するハードディスクドライブ装置等の記憶装置を有してもよい。この場合、スイッチ装置DSWを介して記憶装置SSDに接続されていないサーバSVも、内蔵するハードディスクドライブ装置等の記憶装置を使用して起動状態を維持することができる。
スイッチ制御部SWCは、構成変更部HWCから受ける指示に基づいて、スイッチ装置DSWを制御する。スイッチ装置DSWは、スイッチ制御部SWCからの指示に基づいて、サーバSVのいずれかを記憶装置SSDのいずれかに接続する。スイッチ装置DSWは、構成変更部HWCからの指示に基づいて、複数のサーバSVと記憶装置SSDとの接続を切り替える切り替え装置の一例である。スイッチ装置DSWは、専用のハードウェアを使用して実現されてもよく、SAN(Storage Area Network)を使用して実現されてもよい。
リソースプールRSCPLに搭載される記憶装置SSDは、書き込み性能が読み出し性能に比べて高い入出力特性である書き込み優位特性、または読み出し性能が書き込み性能に比べて高い入出力特性である読み出し優位特性のいずれかを有する。以下、書き込み優位特性を有する記憶装置SSDは、書き込み優位タイプと称され、末尾に(W)が付される。読み出し優位特性を有する記憶装置SSDは、読み出し優位タイプと称され、末尾に(R)が付される。特に限定されないが、書き込み優位タイプの記憶装置SSDの性能IOPS(Input/Output Per Second)は、読み出しが41K(キロ)IOPSであり、書き込みが80KIOPSである。読み出し優位タイプの記憶装置SSDの性能IOPSは、読み出しが75KIOPSであり、書き込みが12KIOPSである。
なお、記憶装置SSDは、シーケンシャルアクセス時の書き込み性能とランダムアクセス時の書き込み性能とに基づいて、タイプが分類されてもよい。あるいは、記憶装置SSDは、シーケンシャルアクセス時の読み出し性能とランダムアクセス時の読み出し性能とに基づいて、タイプが分類されてもよい。ここで、シーケンシャルアクセスは、連続したアドレスへのアクセスを示し、ランダムアクセスは、不連続なアドレスへのアクセスを示す。さらに、アクセスされるブロックの数に応じてアクセス性能が異なる場合、記憶装置SSDは、ブロック数によるアクセス性能に基づいて、タイプが分類されてもよい。ここで、ブロックは、1回の書き込み要求または1回の読み出し要求によりアクセスされる単位である。
ネットワークスイッチNSWは、サーバSV、スイッチ制御部SWCおよびノード配備部NDPLを相互に接続する。例えば、サーバSV、スイッチ制御部SWCおよび管理サーバMSVがLAN(Local Area Network)を介して互いに接続される場合、ネットワークスイッチNSWは、LANスイッチである。
図4は、図3に示す情報処理システムSYS1において、ジョブのタイプによるリソースプールRSCPLの構成の例を示す。図4の左側は、記憶装置SSDに対する書き込みアクセスの割合が、記憶装置SSDに対する読み出しアクセスの割合より高いジョブを実行する場合のリソースプールRSCPLの構成例を示す。以降の説明では、記憶装置SSDに対する書き込みアクセスの割合が、記憶装置SSDに対する読み出しアクセスの割合より高いジョブは、書き込み優位ジョブと称される。ジョブの処理効率を向上するために、書き込み優位ジョブを実行するサーバSVは、書き込み優位タイプの記憶装置SSDに接続されることが好ましい。
図4の右側は、記憶装置SSDに対する読み出しアクセスの割合が、記憶装置SSDに対する書き込みアクセスの割合より高いジョブを実行する場合のリソースプールRSCPLの構成例を示す。以降の説明では、記憶装置SSDに対する読み出しアクセスの割合が、記憶装置SSDに対する書き込みアクセスの割合より高いジョブは、読み出し優位ジョブと称される。ジョブの処理効率を向上するために、読み出し優位ジョブを実行するサーバSVは、読み出し優位タイプの記憶装置SSDに接続されることが好ましい。
なお、図4は、Apache Software Foundation(Apacheは登録商標)が開発した大規模データの分散処理を行うソフトウェアフレームワークであるHadoop(登録商標)を動作させる例を示す。例えば、Hadoop上でMahout(登録商標)を動作させて、機械学習を実行する場合、処理するデータを分類する前処理では書き込みアクセスが支配的な場合が多く、分類されたデータを集計する後処理では、読み出しアクセスが支配的な場合が多い。例えば、前処理は、Hadoopのmap処理であり、後処理は、Hadoopのreduce処理である。
このため、図4の左側に示す構成のリソースプールRSCPLにより前処理を実行することで、分類したデータの記憶装置SSDへの書き込み処理を効率的に実行できる。また、図4の右側に示す構成のリソースプールRSCPLにより後処理を実行することで、記憶装置SSDに格納されたデータの読み出し処理を効率的に実行できる。例えば、図3において、ジョブA1は、機械学習の前処理に対応し、ジョブA2は、機械学習の後処理に対応する。なお、図4では、サーバSV0は、ファイルシステムのデータを管理するnamenodeとして動作し、読み出し優位タイプの記憶装置SSDに接続される。サーバSV1−SV3は、処理するデータdataを記憶装置SSDに入出力するdatanodeとして動作する。
図4において、領域system、name、tmpが割り当てられた記憶装置SSDは、親ノードとして動作するサーバSV0により使用される。領域rdataが割り当てられた記憶装置SSDは、領域dataが割り当てられた記憶装置に分散配置される前のデータ(生データ)を保持する。領域dataが割り当てられた記憶装置SSDは、子ノードとして動作するサーバSV1−SV3により分散されるデータを保持する。なお、サーバSV0−SV3に接続される記憶装置SSDの数および用途は、図4に示す例に限定されない。
図5は、図3に示すデータベースJOBDB、SVDB、SSDDBに格納される情報の一例を示す。データベースJOBDB、SVDB、SSDDBは、情報処理システムSYS1の構築時の初期設定シーケンスにおいて生成される。図5に示すデータベースJOBDB、SVDB、SSDDBは、ジョブキューJCUEにジョブA1、A2、B1が保持された初期状態(図3に示す状態)を示す。
データベースJOBDBは、ジョブキューJCUEに投入されたジョブのID(IDentification)が格納される領域J−IDと、データの依存関係を互いに有するジョブのIDが格納される領域NJ−IDとを有する。データの依存関係を有する他のジョブが存在しない場合、領域NJ−IDは、”0”に設定される。図5に示すデータベースJOBDBは、ジョブキューJCUEにジョブA1、A2、B1が順に保存され、ジョブA1とジョブA2とにデータの依存関係があることを示す。ジョブ割り当て部ALCTは、データベースJOBDBを参照することにより、ジョブキューJCUEに保持されたジョブ間の依存関係を認識することができ、認識結果に基づいて、ジョブの投入または投入の保留を判断することができる。領域NJ−IDに格納されるジョブのIDは、複数のジョブ間の依存関係を表す依存関係情報の一例であり、データベースJOBDBは、依存関係情報を記憶する依存関係情報記憶部の一例である。
データベースSVDBは、サーバSVのID毎に、サーバSVが実行中のジョブのIDが格納される領域EXJ−IDと、サーバSVに接続された記憶装置SSDのIDを格納する領域SSD−IDとを有する。ジョブを実行していない場合、領域EXJ−IDは、”0”に設定され、サーバSVに記憶装置SSDが接続されていない場合、領域SSD−IDは、”0”に設定される。
データベースSSDDBは、記憶装置SSDのID毎に、記憶装置SSDのタイプが格納される領域RD、WRと、記憶装置SSDに接続されたサーバSVが実行中のジョブのIDが格納される領域EXJ−IDとを有する。また、データベースSSDDBは、記憶装置SSDのID毎に、記憶装置SSDに接続されたサーバSVのIDが格納される領域SV−IDを有する。さらに、データベースSSDDBは、記憶装置SSDのID毎に、記憶装置SSDに格納されたデータが後続のジョブで使用されることを示す情報が格納される領域USEを有する。領域USEに格納される情報は、データ保持情報の一例である。
書き込み優位タイプの記憶装置SSDに対応する領域RD、WRは、”0”、”1”がそれぞれ設定される。読み出し優位タイプの記憶装置SSDに対応する領域RD、WRには、”1”、”0”がそれぞれ設定される。ジョブ割り当て部ALCTは、データベースSSDDBを参照することにより、ジョブのタイプ(書き込み優位ジョブまたは読み出し優位ジョブ)にしたがって、サーバSVに接続する記憶装置SSDを選択することができる。領域RD、WRは、書き込み優位特性(書き込み優位タイプ)または読み出し優位タイプ(読み出し優位特性)を記憶装置SSD毎に識別する優位情報の一例であり、データベースSSDDBは、優位情報を記憶する優位情報記憶部の一例である。
ジョブを実行していない場合、データベースSSDDBにおける領域EXJ−IDは、”0”に設定される。記憶装置SSDにサーバSVが接続されていない場合、データベースSSDDBにおける領域SV−IDは、”0”に設定される。領域USEは、記憶装置SSDに格納されたデータが後続のジョブで使用される場合”1”が設定され、記憶装置SSDに格納されたデータが後続のジョブで使用されない場合”0”が設定される。データベースSSDDBに領域USEを設けることで、依存関係を有する後続のジョブで使用するデータを記憶する記憶装置SSDが、他のジョブで使用されることを抑止することができる。この結果、依存関係を有する後続のジョブで使用するデータが、記憶装置SSDから失われることを抑止することができる。
図6から図11は、図3に示す情報処理システムSYS2の動作の一例を示す。なお、図6から図11では、説明を分かりやすくするために、サーバSVの数を3台とし、各ジョブA1、A2、B1を実行するために、2つのサーバSVが使用され、各サーバSVに1つの記憶装置SSDが接続されるとする。また、記憶装置SSD間でのデータのコピー処理は、1つのサーバが使用されるとする。
ジョブA1、A2、B1により実行される処理は、Hadoop処理であり、ジョブA1はmap処理、ジョブA2はreduce処理であるとする。なお、ジョブA1、A2、B1により実行される処理は、Hadoop処理以外の他の分散処理でもよい。
図6は、図3および図5に示す初期状態からの続きを示し、ジョブ割り当て部ALCTが、最初のジョブA1をジョブキューJCUEから取り出し、ジョブA1を実行する準備をする状態を示す。図6において、データベースSVDB、SSDDB内に太枠で示す領域は、図5に対して状態が変化した領域を示す。同様に、図7から図13において、データベースJOBDB、SVDB、SSDDB内に太枠で示す領域は、それぞれ1つ手前の図に対して状態が変化した領域を示す。
まず、図3に示すように、管理サーバMSVは、端末装置TMからジョブA1、A2、B1を順次に受け、受けたジョブA1、A2、B1をジョブキューJCUEに格納する。例えば、端末装置TMを操作する情報処理システムSYS2のユーザは、ユーザインタフェースUSRIF(GUI画面)によりHadoop処理を選択する。そして、ユーザは、ユーザインタフェースUSRIFにより、Hadoop処理の実行に使用するパラメータを設定する。ここで、パラメータは、namenodeの数、datanodeの数、map処理のタスク数、reduce処理のタスク数、タスクのヒープサイズ等である。
図6において、ジョブ割り当て部ALCTは、ジョブA1に含まれる情報に基づいて、2つのサーバSVを使用することを決定し、ジョブA1が書き込み優位ジョブであると判定する。なお、ジョブを分散して実行させるサーバSVの数と、ジョブのタイプ(書き込み優位ジョブまたは読み出し優位ジョブ)と、各サーバSVに接続する記憶装置SSDの数と、ジョブの依存関係は、端末装置TMを介してユーザにより設定される。
ジョブ割り当て部ALCTは、データベースSVDB、SSDDBをそれぞれ参照し、サーバSV0、SV1と、書き込み優位タイプの記憶装置SSD2、SSD3とを使用することを決定する。そして、ジョブ割り当て部ALCTは、データベースSVDBにおけるサーバSV0、SV1の領域SSD−IDに、サーバSV0、SV1にそれぞれ接続する記憶装置SSD2、SSD3を示す情報を格納する。また、ジョブ割り当て部ALCTは、データベースSSDDBにおける記憶装置SSD2、SSD3の領域SV−IDに、記憶装置SSD2、SSD3にそれぞれ接続するサーバSV0、SV1を示す情報を格納する。
次に、ジョブ割り当て部ALCTは、サーバSV0と記憶装置SSD2とを接続させ、サーバSV1と記憶装置SSD3とを接続させる指示を構成変更部HWCに出力する。構成変更部HWCは、ジョブ割り当て部ALCTからの指示に基づいて、スイッチ制御部SWCを制御し、スイッチ装置DSWを介して、サーバSV0と記憶装置SSD2とを接続し、サーバSV1と記憶装置SSD3とを接続する。構成変更部HWCは、サーバSV0と記憶装置SSD2との接続、およびサーバSV1と記憶装置SSD3との接続の完了をジョブ割り当て部ALCTに通知する。なお、以降の動作においても、構成変更部HWCは、スイッチ装置DSWの状態を変更した場合、変更の完了をジョブ割り当て部ALCTに通知する。
次に、図7において、ジョブ割り当て部ALCTは、サーバSV0、SV1の起動と、ジョブA1を実行するための環境の構築とをノード配備部NDPLに指示する。ジョブA1を実行するための環境がサーバSV0、SV1に構築された場合、ジョブ割り当て部ALCTは、ジョブA1の実行をノード配備部NDPLに指示する。ノード配備部NDPLは、ジョブ割り当て部ALCTからの指示に基づいてサーバSV0、SV1にジョブA1を投入し、ジョブA1を実行させる。
そして、ジョブ割り当て部ALCTは、データベースSVDBにおけるサーバSV0、SV1の領域EXJ−IDに、サーバSV0、SV1が実行中のジョブA1を示す情報を格納する。ジョブ割り当て部ALCTは、データベースSSDDBにおける記憶装置SSD2、SSD3の領域EXJ−IDに、サーバSV0、SV1が実行中のジョブA1を示す情報を格納する。また、ジョブ割り当て部ALCTは、データベースJOBDBに格納された情報から、ジョブキューJCUEに格納されているジョブA2は、実行中のジョブA1と依存関係があるため、ジョブA2の代わりにジョブB1をジョブキューJCUEから取り出す。
ジョブ割り当て部ALCTは、ジョブB1に含まれる情報に基づいて、2つのサーバSVを使用することを決定し、ジョブB1が書き込み優位ジョブであると判定する。ジョブ割り当て部ALCTは、データベースSVDB、SSDDBをそれぞれ参照し、1つのサーバSV2のみ空いているため、2つ以上のサーバSVが空くまでジョブB1の実行を待機する。
なお、図6から図13は、説明を分かりやすくするために、1つのジョブがサーバSVに投入された時点で、空いているサーバSVの数が、他のジョブを実行可能な数に対して足りない例を示している。すなわち、図6から図13は、複数のジョブがリソースプールRSCPLに投入され、空いているサーバSVの数が不足している状態を局所的に示している。また、図11で説明するように、1つのジョブがサーバSVに投入された時点で、空いている1つのサーバSVによりコピー処理CPYが実行可能な例を示している。
次に、図8において、ジョブ割り当て部ALCTは、ジョブA1の実行の完了に基づいて、データベースJOBDBからジョブA1に関する情報を削除する。また、ジョブ割り当て部ALCTは、データベースSVDBにおけるサーバSV0、SV1の領域EXJ−ID、SSD−IDと、データベースSSDDBにおける記憶装置SSD2、SSD3の領域EXJ−ID、SV−IDとを”0”にリセットする。さらに、ジョブ割り当て部ALCTは、データベースJOBDBを参照することで、ジョブA1の実行結果データを後続のジョブA2で使用することを判断し、記憶装置SSD2、SSD3に保持している実行結果データの削除を抑止する。そして、ジョブ割り当て部ALCTは、データベースSSDDBにおける記憶装置SSD2、SSD3の領域USEを、記憶装置SSD2、SSD3に保持しているデータを後続のジョブで使用することを示す”1”に設定する。領域USEが”1”に設定された記憶装置SSDは、依存関係のあるジョブを実行するためのデータのコピー操作以外のアクセスが抑止される。
この後、ジョブ割り当て部ALCTは、ジョブ割り当て部ALCTは、サーバSV0と記憶装置SSD2との接続を遮断させ、サーバSV1と記憶装置SSD3との接続を遮断させる指示を構成変更部HWCに出力する。構成変更部HWCは、ジョブ割り当て部ALCTからの指示に基づいて、スイッチ制御部SWCを制御し、スイッチ装置DSWを介して、サーバSV0と記憶装置SSD2との接続を遮断し、サーバSV1と記憶装置SSD3との接続を遮断する。
次に、図9において、ジョブ割り当て部ALCTは、データベースSVDB、SSDDBをそれぞれ参照し、サーバSV0、SV1と、書き込み優位タイプの記憶装置SSD0、SSD1とをジョブB1の実行に使用することを決定する。そして、ジョブ割り当て部ALCTは、データベースSVDBにおけるサーバSV0、SV1の領域SSD−IDに、サーバSV0、SV1にそれぞれ接続する記憶装置SSD0、SSD1を示す情報を格納する。また、ジョブ割り当て部ALCTは、データベースSSDDBにおける記憶装置SSD0、SSD1の領域SV−IDに、記憶装置SSD0、SSD1にそれぞれ接続するサーバSV0、SV1を示す情報を格納する。
次に、ジョブ割り当て部ALCTは、サーバSV0と記憶装置SSD0とを接続させ、サーバSV1と記憶装置SSD1とを接続させる指示を構成変更部HWCに出力する。構成変更部HWCは、ジョブ割り当て部ALCTからの指示に基づいて、スイッチ制御部SWCを制御し、スイッチ装置DSWを介して、サーバSV0と記憶装置SSD0とを接続し、サーバSV1と記憶装置SSD1とを接続する。
次に、図10において、ジョブ割り当て部ALCTは、サーバSV0、SV1の起動と、ジョブB1を実行するための環境の構築とをノード配備部NDPLに指示し、ジョブB1の実行をノード配備部NDPLに指示する。ノード配備部NDPLは、ジョブ割り当て部ALCTからの指示に基づいて、環境を構築し、サーバSV0、SV1にジョブB1を実行させる。
ジョブ割り当て部ALCTは、データベースSVDB、SSDDBにおけるサーバSV0、SV1の領域EXJ−IDに、サーバSV0、SV1が実行中のジョブB1を示す情報を格納する。また、ジョブ割り当て部ALCTは、データベースSSDDBにおける記憶装置SSD0、SSD1の領域EXJ−IDに、サーバSV0、SV1が実行中のジョブB1を示す情報を格納する。ジョブ割り当て部ALCTは、データベースJOBDBを参照し、ジョブA2をジョブキューJCUEから取り出す。
次に、図11において、ジョブ割り当て部ALCTは、ジョブA2に含まれる情報に基づいて、2つのサーバSVを使用することを決定し、ジョブA2が読み出し優位ジョブであると判定する。ジョブ割り当て部ALCTは、データベースSVDB、SSDDBをそれぞれ参照し、1つのサーバSV2のみ空いているため、2つ以上のサーバSVが空くまでジョブA2の実行を待機する。
一方、ジョブ割り当て部ALCTは、データベースJOBDBを参照し、ジョブA2がジョブA1と依存関係があるため、ジョブA1の実行結果を使用して読み出し優位ジョブであるジョブA2を実行することを決定する。さらに、ジョブ割り当て部ALCTは、データベースSSDDBを参照し、読み出し優位タイプの記憶装置SSD4、SSD5を使用して、ジョブA2を実行することを決定する。また、ジョブ割り当て部ALCTは、記憶装置SSD2、SSD3に保持されているデータを記憶装置SSD4、SSD5にコピーすることを決定する。ジョブ割り当て部ALCTは、データベースSVDBを参照して空いているサーバSVを検索し、データのコピー処理にサーバSV2を使用することを決定する。
そして、ジョブ割り当て部ALCTは、データベースSVDBにおけるサーバSV2の領域SSD−IDに、サーバSV2に接続する記憶装置SSD2、SSD3、SSD4、SSD5を示す情報を格納する。また、ジョブ割り当て部ALCTは、データベースSSDDBにおける記憶装置SSD2−SSD5の領域SV−IDに、記憶装置SSD2−SSD5に接続するサーバSV2を示す情報を格納する。
次に、ジョブ割り当て部ALCTは、サーバSV2と記憶装置SSD2−SSD5とを接続させる指示を構成変更部HWCに出力する。構成変更部HWCは、ジョブ割り当て部ALCTからの指示に基づいて、スイッチ制御部SWCを制御し、スイッチ装置DSWを介して、サーバSV2と記憶装置SSD2−SSD5とを接続する。
次に、ジョブ割り当て部ALCTは、サーバSV2の起動と、記憶装置SSD2、SSD3から記憶装置SSD4、SSD5にデータをコピーするための環境の構築とをノード配備部NDPLに指示する。コピー処理の環境がサーバSV2に構築された場合、ジョブ割り当て部ALCTは、コピー処理の実行をノード配備部NDPLに指示する。ノード配備部NDPLは、ジョブ割り当て部ALCTからの指示に基づいてサーバSV2にコピー処理を実行させる。
そして、ジョブ割り当て部ALCTは、データベースSVDBにおけるサーバSV2の領域EXJ−IDに、コピー処理の実行中を示す情報CPYを格納する。また、ジョブ割り当て部ALCTは、データベースSSDDBにおける記憶装置SSD2−SSD5の領域EXJ−IDに、コピー処理の実行中を示す情報CPYを格納する。
次に、図12において、ジョブ割り当て部ALCTは、ジョブB1の実行の完了に基づいて、データベースJOBDBからジョブB1に関する情報を削除する。また、ジョブ割り当て部ALCTは、データベースSVDBにおけるサーバSV0、SV1の領域EXJ−ID、SSD−IDと、データベースSSDDBにおける記憶装置SSD0、SSD1の領域EXJ−ID、SV−IDとを”0”にリセットする。この後、ジョブ割り当て部ALCTは、サーバSV0と記憶装置SSD0との接続を遮断させ、サーバSV1と記憶装置SSD1との接続を遮断させる指示を構成変更部HWCに出力する。
一方、ジョブ割り当て部ALCTは、コピー処理の完了に基づいて、データベースSVDBにおけるサーバSV2の領域EXJ−ID、SSD−IDを”0”にリセットする。また、ジョブ割り当て部ALCTは、コピー処理の完了に基づいて、データベースSSDDBにおける記憶装置SSD2−SSD5の領域EXJ−ID、SV−IDを”0”にリセットする。この後、ジョブ割り当て部ALCTは、サーバSV2と記憶装置SSD2−SSD5との接続を遮断させる指示を構成変更部HWCに出力する。また、コピー処理の完了により、記憶装置SSD2、SSD3に保持されたデータは、以降の動作で使用しないため、ジョブ割り当て部ALCTは、データベースSSDDBにおける記憶装置SSD2−SSD5の領域USEを”0”にリセットする。なお、サーバSV2と記憶装置SSD2、SSD3の接続が解除される前に、記憶装置SSD2、SSD3に記憶されたデータを削除する処理をサーバSV2に実行させてもよい。
次に、図13において、ジョブ割り当て部ALCTは、データベースSVDB、SSDDBをそれぞれ参照し、空いているサーバSV0、SV1を使用してジョブA2を実行することを決定する。そして、ジョブ割り当て部ALCTは、データベースSVDBにおけるサーバSV0、SV1の領域SSD−IDに、サーバSV0、SV1にそれぞれ接続する記憶装置SSD4、SSD5を示す情報を格納する。また、ジョブ割り当て部ALCTは、データベースSSDDBにおける記憶装置SSD4、SSD5の領域SV−IDに、記憶装置SSD4、SSD5にそれぞれ接続するサーバSV0、SV1を示す情報を格納する。
ジョブ割り当て部ALCTは、サーバSV0、SV1の起動と、ジョブA2を実行するための環境の構築とをノード配備部NDPLに指示する。ジョブA2を実行するための環境がサーバSV0、SV1に構築された場合、ジョブ割り当て部ALCTは、ジョブA2の実行をノード配備部NDPLに指示する。この後、サーバSV0、SV1は、ジョブA2の実行を開始する。
そして、ジョブ割り当て部ALCTは、データベースSVDBにおけるサーバSV0、SV1の領域EXJ−IDに、サーバSV0、SV1が実行中のジョブA2を示す情報を格納する。ジョブ割り当て部ALCTは、データベースSSDDBにおける記憶装置SSD4、SSD5の領域EXJ−IDに、サーバSV0、SV1が実行中のジョブA2を示す情報を格納する。
図14は、図3に示すジョブ割り当て部ALCTの動作の一例を示す。図14に示す動作は、管理サーバMSVが実行する制御プログラムにより実現される情報処理システムSYS2の制御方法を示す。図14に示すフローは、制御プログラムにより、所定の頻度で起動され、ジョブ毎に実行される。
まず、ステップS102において、ジョブ割り当て部ALCTは、ジョブキューJCUEに保持されたジョブのうちで選択可能なジョブがあるか否かを判定する。サーバSVがジョブを実行していない場合、ジョブ割り当て部ALCTは、ジョブキューJCUEに保持された最も古いジョブを選択可能と判断する。サーバSVがジョブを実行している場合、ジョブ割り当て部ALCTは、サーバSVが実行中のジョブと依存関係がないジョブのうち、ジョブキューJCUEに保持された最も古いジョブを選択可能と判断する。また、サーバSVが実行中のジョブと依存関係があるジョブのみがジョブキューJCUEに保持されている場合、ジョブ割り当て部ALCTは、選択可能なジョブがないと判定する。選択可能なジョブがある場合、処理はステップS104に移行され、選択可能なジョブがない場合、処理は終了する。
ステップS104において、ジョブ割り当て部ALCTは、新たに実行するジョブをジョブキューJCUEから取り出し、処理をステップS106に移行する。ステップS106において、ジョブ割り当て部ALCTは、データベースJOBDBを参照し、ジョブキューJCUEから取り出したジョブとサーバSVに投入したジョブとの間に依存関係があるか否かを判定する。例えば、実行が完了したジョブA1と依存関係があるジョブA2がジョブキューJCUEから取り出された場合、処理はステップS108に移行される。一方、実行中のジョブA1と依存関係がないジョブB1がジョブキューJCUEから取り出された場合、処理はステップS120に移行される。
ステップS108において、ジョブ割り当て部ALCTは、ジョブキューJCUEから取り出したジョブのタイプと、サーバSVに投入したジョブのタイプとが同じか否かを判定する。例えば、ジョブキューJCUEから取り出したジョブと、実行を完了したジョブが、ともに書き込み優位ジョブの場合、依存関係のある2つのジョブは、書き込み優位特性を有する共通の入出力装置26を使用して実行可能であり、コピー処理は省略可能である。このため、処理はステップS124に移行される。一方、ジョブキューJCUEから取り出したジョブが読み出し優位ジョブで、実行を完了したジョブが書き込み優位ジョブの場合、入出力装置26に記憶されたジョブの実行結果データを入出力装置28へコピーするため、処理はステップS110に移行される。
ステップS110において、ジョブ割り当て部ALCTは、依存関係を有するジョブ以外の他のジョブをサーバSVが実行中か否かを判定する。例えば、他のジョブをサーバSVが実行中の場合、実行中の他のジョブと並行して記憶装置SSD間でデータのコピー処理を実行するため、処理はステップS200に移行される。一方、実行中の他のジョブがなく、ジョブキューJCUEから取り出したジョブを投入できる場合、依存関係があるジョブの実行による実行結果データを保持している記憶装置SSDを使用してジョブを実行するため、処理はステップS124に移行される。すなわち、コピー処理をバックグラウンドで実行することが困難な場合、ジョブ割り当て部ALCTは、コピー処理を実行せずに共通の記憶装置SSDを使用して、依存関係のある後続のジョブをサーバSVに実行させる。コピー処理を省略することにより、ジョブの処理効率を向上することができる場合がある。依存関係があるジョブの実行による実行結果データを保持している記憶装置SSDをそのまま使用してジョブを実行する例は、図16(E)に示される。
ステップS200において、ジョブ割り当て部ALCTは、実行を完了したジョブで使用された記憶装置SSDに保持されているジョブの実行結果データを、選択したジョブで使用する記憶装置SSDにコピーするコピー処理を実行する。例えば、選択したジョブが読み出し優位ジョブの場合、書き込み優位ジョブの実行を完了したサーバSVで使用された書き込み優位タイプのSSDから読み出し優位タイプのSSDへ実行結果データがコピーされる。
コピー処理が他のジョブのバックグラウンドで実行される場合、コピー処理に掛かる時間は、ジョブの実行時間に含まれない。例えば、依存関係を有する後続のジョブが読み出し優位ジョブであるとする。この場合、実行結果データは、コピー処理により、読み出し優位タイプの記憶装置SSDに転送され、依存関係を有する後続の読み出し優位ジョブは、読み出し優位タイプの記憶装置SSDを使用して実行される。したがって、実行結果データの転送元の書き込み優位タイプの記憶装置SSDを使用して読み出し優位ジョブを実行する場合に比べて、ジョブの処理効率を向上することができる。ステップS200によるコピー処理の例は、図15に示される。
次に、ステップS120において、ジョブ割り当て部ALCTは、データベースSSDDBを参照し、ジョブの実行に使用する数の記憶装置SSDの空きがあるか否かを判定する。ジョブ割り当て部ALCTは、記憶装置SSDに空きがある場合、処理をステップS122に移行し、記憶装置SSDに空きがない場合、記憶装置SSDが空くまで待つ。ステップS122において、ジョブ割り当て部ALCTは、ジョブの実行に使用する記憶装置SSDを選択し、処理をステップS124に移行する。
ステップS124において、ジョブ割り当て部ALCTは、データベースSVDBを参照し、ジョブの実行に使用する数のサーバSVの空きがあるか否かを判定する。ジョブ割り当て部ALCTは、サーバSVに空きがある場合、処理をステップS126に移行し、サーバSVに空きがない場合、サーバSVが空くまで待つ。ステップS126において、ジョブ割り当て部ALCTは、ジョブの実行に使用するサーバSVを選択し、選択したサーバSVおよび記憶装置SSDに基づいて、データベースSVDBの領域SSD−IDと、データベースSSDDBの領域SV−IDとを更新する。
なお、ジョブ割り当て部ALCTが、ステップS108、S110の判定結果を保持し、保持した判定結果に基づいて、ステップS120、S122の実行の可否を判断できるとする。この場合、ステップS120、S122は、ステップS124、S126の後に処理されてもよい。
次に、ステップS128において、ジョブ割り当て部ALCTは、ステップS122で選択した記憶装置SSDとステップS126で選択したサーバSVとの接続を、構成変更部HWCに指示する。構成変更部HWCは、ジョブ割り当て部ALCTからの指示に基づいてスイッチ制御部SWCを制御し、スイッチ装置DSWを介して、指示されたサーバSVと記憶装置SSDとを接続する。
次に、ステップS130において、ジョブ割り当て部ALCTは、選択したサーバSVの起動と、ジョブキューJCUEから取り出したジョブの実行とをノード配備部NDPLに指示する。また、ジョブ割り当て部ALCTは、ジョブの実行の開始に基づいて、データベースSVDB、SSDDBの領域EXJ−IDを更新する。ノード配備部NDPLは、ジョブ割り当て部ALCTからの指示に基づいて、指示されたサーバSVを起動し、ジョブを実行するための環境を構築する。そして、ノード配備部NDPLは、起動したサーバSVにジョブを投入する。
次に、ステップS132において、ジョブ割り当て部ALCTは、ジョブの実行の完了を待ち、ジョブの実行が完了した場合、処理をステップS134に移行する。ステップS134において、ジョブ割り当て部ALCTは、完了したジョブを実行していたサーバSVの動作の終了(シャットダウン等)をノード配備部NDPLに指示し、処理をステップS136に移行する。ノード配備部NDPLは、ジョブ割り当て部ALCTからの指示に基づいて、指示されたサーバSVの動作を終了する。なお、依存関係を有する先行のジョブが完了した場合、ジョブ割り当て部ALCTは、データベースSSDDBの領域USEを更新し、記憶装置SSDに格納されたデータが後続のジョブで使用されることを識別可能にする。
ステップS136において、ジョブ割り当て部ALCTは、ステップS128で接続したサーバSVと記憶装置SSDとの接続の解除を構成変更部HWCに指示し、処理を終了する。また、ジョブ割り当て部ALCTは、ジョブの完了に基づいて、データベースSVDBの領域EXJ−ID、SSD−IDと、データベースSSDDBの領域EXJ−ID、SV−IDとを更新する。さらに、ジョブ割り当て部ALCTは、実行を完了したジョブが、後続のジョブとの間で依存関係を有する場合、データベースSSDDBの領域USEを更新する。構成変更部HWCは、ジョブ割り当て部ALCTからの指示に基づいてスイッチ制御部SWCを制御し、スイッチ装置DSWを介して、指示されたサーバSVと記憶装置SSDとの接続を解除する。
図15は、図14に示すステップS200の処理の一例を示す。まず、ステップS202において、ジョブ割り当て部ALCTは、データベースSVDBを参照し、コピー処理に使用する数のサーバSVの空きがあるか否かを判定する。ジョブ割り当て部ALCTは、サーバSVに空きがある場合、処理をステップS204に移行し、サーバSVに空きがない場合、サーバSVが空くまで待つ。
ステップS204において、ジョブ割り当て部ALCTは、コピー処理に使用するサーバSVを選択し、処理をステップS206に移行する。ステップS206において、ジョブ割り当て部ALCTは、データベースSSDDBを参照し、コピー処理によりデータを書き込む記憶装置SSDの空きがあるか否かを判定する。ジョブ割り当て部ALCTは、記憶装置SSDに空きがある場合、処理をステップS208に移行し、記憶装置SSDに空きがない場合、記憶装置SSDが空くまで待つ。
ステップS208において、ジョブ割り当て部ALCTは、コピー処理に使用する記憶装置SSDを選択し、データベースSVDBの領域SSD−IDと、データベースSSDDBの領域SV−IDとを更新し、処理をステップS210に移行する。
ステップS210において、ジョブ割り当て部ALCTは、ステップS204で選択したサーバSVとステップS208で選択した記憶装置SSDとの接続を、構成変更部HWCに指示する。構成変更部HWCは、ジョブ割り当て部ALCTからの指示に基づいてスイッチ制御部SWCを制御し、スイッチ装置DSWを介して、指示されたサーバSVと記憶装置SSDとを接続する。
次に、ステップS212において、ジョブ割り当て部ALCTは、選択したサーバSVの起動をノード配備部NDPLに指示する。ノード配備部NDPLは、ジョブ割り当て部ALCTからの指示に基づいて、指示されたサーバSVを起動し、ジョブを実行するための環境を構築する。
ステップS214において、ジョブ割り当て部ALCTは、ノード配備部NDPLを介してサーバSVにコピー処理の実行を指示し、データベースSVDB、SSDDBの領域EXJ−IDを更新する。次に、ステップS216において、ジョブ割り当て部ALCTは、コピー処理の完了を待ち、コピー処理が完了した場合、処理をステップS218に移行する。
ステップS218において、ジョブ割り当て部ALCTは、コピー元の記憶装置SSDに保持されているデータの削除をノード配備部NDPLに指示し、処理をステップS220に移行する。また、ジョブ割り当て部ALCTは、データの削除に伴い、データベースSSDDBの領域USEを更新する。ノード配備部NDPLは、ジョブ割り当て部ALCTからの指示に基づいて、コピー元の記憶装置SSDに保持されているデータを削除する。
ステップS220において、ジョブ割り当て部ALCTは、コピー処理を実行していたサーバSVの動作の終了(シャットダウン等)をノード配備部NDPLに指示し、処理をステップS222に移行する。ノード配備部NDPLは、ジョブ割り当て部ALCTからの指示に基づいて、指示されたサーバSVの動作を終了する。
ステップS222において、ジョブ割り当て部ALCTは、ステップS210で接続したサーバSVと記憶装置SSDとの接続の解除を構成変更部HWCに指示し、処理を終了する。また、ジョブ割り当て部ALCTは、コピー処理の完了に基づいて、データベースSVDBの領域EXJ−ID、SSD−IDと、データベースSSDDBの領域EXJ−ID、SV−IDとを更新する。構成変更部HWCは、ジョブ割り当て部ALCTからの指示に基づいてスイッチ制御部SWCを制御し、スイッチ装置DSWを介して、指示されたサーバSVと記憶装置SSDとの接続を解除する。
図16は、図3に示す情報処理システムSYS2により実行されるジョブの一例を示す。ジョブA1、A2、B1は、図3から図13で説明したジョブA1、A2、B1であり、ジョブA1、B1は、書き込み優位ジョブであり、ジョブA2は、読み出し優位ジョブである。ジョブA2は、ジョブA1に対して依存関係を有しており、ジョブA1の実行結果を使用して実行される。なお、ジョブB1は、読み出し優位ジョブでもよく、この場合、ジョブB1は、記憶装置SSD(R)を使用して実行される。ジョブA1は、時刻t0に開始され、ジョブA1の実行後、ジョブB1、A2等が実行される。
図16(A)および図16(C)は、図6から図13に示す動作により実行されるジョブA1、B1、A2を示している。ジョブA1の実行結果を記憶装置SSD(W)から記憶装置SSD(R)にコピーするコピー処理CPYは、ジョブB1の処理と並列に実行される。図16(A)は、ジョブB1の実行時間tB1が、コピー処理CPYの実行時間tCPYより長い例を示し、図16(C)は、ジョブB1の実行時間tB1が、コピー処理CPYの実行時間tCPYより短い例を示す。
図16(B)および図16(D)は、ジョブA1、A2、B1を書き込み優位タイプの記憶装置SSD(W)を使用して実行する例を示している。図16(B)および図16(D)では、ジョブA1の実行結果を保持する記憶装置SSD(W)を使用してジョブA2が実行されるため、コピー処理CPYは発生しない。但し、ジョブA2は、読み出し優位ジョブであるため、記憶装置SSD(W)を使用して実行されるジョブA2の実行時間tT1wは、記憶装置SSD(R)を使用して実行されるジョブA2の実行時間tT1rより長くなる。
図16(A)に示すように、ジョブB1の実行時間tB1が、コピー処理CPYの実行時間tCPYより長い場合、コピー処理CPYをジョブB1によって隠すことができる。また、ジョブA2の実行時間tA2rは、図16(B)に示すジョブA2の実行時間tA2wより短縮することができる。この結果、図16(A)に示すジョブA1、A2、B1の処理が完了する時刻tAを、図16(B)に示すジョブA1、A2、B1の処理が完了する時刻tBより常に早くすることができる。
一方、実行時間tB1が実行時間tCPYより短い場合、以下の条件下において、図16(C)に示すジョブA1、A2、B1の処理が完了する時刻tCを、図16(D)に示すジョブA1、A2、B1の処理が完了する時刻tDより常に早くすることができる。
(条件)図16(C)に示す実行時間tCPYと記憶装置SSD(R)を使用したジョブA2の実行時間tA2rとの和が、図16(D)に示すジョブB1の実行時間tB1と記憶装置SSD(W)を使用したジョブA2の実行時間tA2wとの和より短い。
(条件)図16(C)に示す実行時間tCPYと記憶装置SSD(R)を使用したジョブA2の実行時間tA2rとの和が、図16(D)に示すジョブB1の実行時間tB1と記憶装置SSD(W)を使用したジョブA2の実行時間tA2wとの和より短い。
なお、図16(A)から図16(D)におけるSSD(W)とSSD(R)とを入れ換えることで、読み出し優位ジョブであるジョブA1の処理結果を使用して、書き込み優位ジョブであるジョブA1を実行する場合の例が示される。この場合にも、コピー処理CPYの実行により、タイプが異なる記憶装置SSDを使用して依存関係を有するジョブA1、A2を実行することができ、ジョブA1、A2、B1の処理が完了する時刻を早めることが可能になる。
図16(E)は、ジョブキューJCUEにジョブB1が保持されておらず、ジョブA1、A2が順次実行される例を示す。この場合、図14のステップS110で説明したように、読み出し優位ジョブであるジョブA2は、書き込み優位タイプの記憶装置SSDに記憶されたジョブA1の実行結果データを使用して実行される。このため、ジョブA2の実行時間tA2wは、読み出し優位タイプの記憶装置SSDを使用して実行される場合の実行時間tA2rより長くなる。但し、ジョブA2の実行時間tA2wが、図16(C)に示す実行時間tCPY、tA2rの和より短い場合、最終のジョブA2の処理が完了する時刻tEを、図16(C)に示す最終のジョブA2の処理が完了する時刻tCより早くすることができる。
一方、ジョブA2の実行時間tA2wが、図16(C)に示す実行時間tCPY、tA2rの和より長い場合、ジョブA2は、コピー処理CPYにより実行結果データがコピーされた読み出し優位タイプの記憶装置SSDを使用して実行されることが好ましい。このため、ジョブ割り当て部ALCTは、図14のステップS110において、ジョブA2の処理が完了する時刻tEが時刻tCより遅くなる場合、処理をステップS200に移行してもよい。
図16(F)は、コピー処理CPYとジョブB1とを独立に実行する場合(比較例)を示す。コピー処理CPYとジョブB1とを独立に実行する場合、ジョブA1、A2、B1の処理が完了する時刻tFは、実行時間tCPY、tA2r、tB1の和を含むため、図16(A)の時刻tAおよび図16(C)の時刻tCより常に遅くなる。
以上、図3から図16に示す実施形態においても、図1および図2に示す実施形態と同様に、ジョブA1、A2、B1の実行が完了するまでの時間を従来に比べて短縮することができ、ジョブA1、A2、B1の処理効率を従来に比べて向上することができる。この結果、情報処理システムSYS2の性能を従来に比べて向上することができる。
さらに、図3から図16に示す実施形態では、管理サーバMSVは、ジョブ間の依存関係を記憶する領域NJ−IDを含むデータベースJOBDBを有する。これにより、ジョブ割り当て部ALCTは、データベースJOBDBを参照することにより、ジョブキューJCUEに保持されたジョブの依存関係を認識することができ、認識結果に基づいて、ジョブの投入または投入の保留を判断することができる。
管理サーバMSVは、記憶装置SSDのタイプを記憶する領域RD、WRを含むデータベースSSDDBを有する。これにより、ジョブ割り当て部ALCTは、データベースSSDDBを参照することにより、ジョブのタイプ(書き込み優位ジョブまたは読み出し優位ジョブ)にしたがって、サーバSVに接続する記憶装置SSDを選択することができる。
管理サーバMSVは、依存関係を有する後続のジョブで使用するデータが記憶装置SSDに記憶されていることを示す領域USEを含むデータベースSSDDBを有する。これにより、依存関係を有する後続のジョブで使用するデータを記憶する記憶装置SSDが、他のジョブで使用されることを抑止することができる。この結果、依存関係を有する後続のジョブで使用するデータが、記憶装置SSDから失われることを抑止することができる。
ジョブ割り当て部ALCTは、依存関係を有する後続のジョブをサーバSVにより実行可能な場合、コピー処理を実行せずに共通の記憶装置SSDを使用して、依存関係のある後続のジョブをサーバSVに実行させる。これにより、ジョブの処理効率をさらに向上することができる。
以上の実施形態において説明した発明を整理して、付記として開示する。
(付記1)
複数の計算ノードと、前記複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置と、前記情報処理装置を制御する制御装置とを有する情報処理システムにおいて、
前記制御装置は、
複数のジョブを保持する保持部と、
前記複数の計算ノードのいずれかにジョブを投入するジョブ投入部と、
前記複数の計算ノードと前記入出力装置との接続を変更する構成変更部と、
前記第2の入出力特性よりも前記第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、前記第1のジョブと依存関係があるとともに前記第1の入出力特性よりも前記第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および前記第1のジョブと前記第2のジョブのいずれとも依存関係がない第3のジョブが前記保持部に保持されている場合、前記構成変更部に前記第1の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第1のジョブを投入し、前記第1のジョブの実行の完了後、前記情報処理装置に含まれる前記複数の計算ノードの少なくともいずれかに前記ジョブ投入部を介して前記第2のジョブよりも先に前記第3のジョブを投入するとともに前記構成変更部に前記第1の入出力装置と前記第2の入出力装置とを接続させ、前記第1の入出力装置が記憶する前記第1のジョブの実行による実行結果データを前記第2の入出力装置にコピーさせ、前記第3のジョブの実行の完了後、前記構成変更部に前記第2の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第2のジョブを投入する制御部を有することを特徴とする情報処理システム。
(付記2)
前記第1の入出力特性は、読み出し性能が書き込み性能に比べて高い読み出し優位特性と、書き込み性能が読み出し性能に比べて高い書き込み優位特性とのいずれか一方であり、
前記第2の入出力特性は、前記読み出し優位特性と、前記書き込み優位特性とのいずれか他方であることを特徴とする付記1記載の情報処理システム。
(付記3)
前記制御装置は、前記読み出し優位特性または前記書き込み優位特性を前記入出力装置毎に識別する優位情報を記憶する優位情報記憶部を有することを特徴とする付記1または付記2記載の情報処理システム。
(付記4)
前記優位情報記憶部は、前記入出力装置が前記実行結果データを記憶していることを前記入出力装置毎に識別するデータ保持情報を記憶する領域を有することを特徴とする付記3記載の情報処理システム。
(付記5)
前記制御装置は、前記複数のジョブ間の依存関係を表す依存関係情報を記憶する依存関係情報記憶部を有することを特徴とする付記1ないし付記3のいずれか1項記載の情報処理システム。
(付記6)
前記制御部は、前記第1のジョブに続いて投入するジョブが、前記第2のジョブを除いて存在しない場合、前記第1のジョブの実行後、前記第1のジョブの実行結果データを記憶する前記第1の入出力装置を接続した計算ノードに、前記ジョブ投入部を介して前記第2のジョブを投入することを特徴とする付記1ないし付記5のいずれか1項記載の情報処理システム。
(付記7)
前記保持部は、前記第1のジョブ、前記第2のジョブおよび前記第3のジョブを順次保持することを特徴とする付記1ないし付記5のいずれか1項記載の情報処理システム。
(付記8)
前記制御部は、前記保持部が最初に保持したジョブを前記ジョブ投入部に出力することを特徴とする付記1ないし付記7のいずれか1項記載の情報処理システム。
(付記9)
前記情報処理装置は、前記構成変更部からの指示に基づいて、前記複数の計算ノードと前記複数の入出力装置との接続を切り替える切り替え装置を有することを特徴とする付記1ないし付記8のいずれか1項記載の情報処理システム。
(付記10)
前記第1の入出力装置および前記第2の入出力装置は、半導体メモリ素子を含むソリッドステートドライブ装置であることを特徴とする付記1ないし付記9のいずれか1項記載の情報処理システム。
(付記11)
複数の計算ノードと、前記複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置を制御する制御装置において、
前記制御装置は、
複数のジョブを保持する保持部と、
前記複数の計算ノードのいずれかにジョブを投入するジョブ投入部と、
前記複数の計算ノードと前記入出力装置との接続を変更する構成変更部と、
前記第2の入出力特性よりも前記第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、前記第1のジョブと依存関係があるとともに前記第1の入出力特性よりも前記第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および前記第1のジョブと前記第2のジョブのいずれとも依存関係がない第3のジョブが前記保持部に保持されている場合、前記構成変更部に前記第1の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第1のジョブを投入し、前記第1のジョブの実行の完了後、前記情報処理装置に含まれる前記複数の計算ノードの少なくともいずれかに前記ジョブ投入部を介して前記第2のジョブよりも先に前記第3のジョブを投入するとともに前記構成変更部に前記第1の入出力装置と前記第2の入出力装置とを接続させ、前記第1の入出力装置が記憶する前記第1のジョブの実行による実行結果データを前記第2の入出力装置にコピーさせ、前記第3のジョブの実行の完了後、前記構成変更部に前記第2の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第2のジョブを投入する制御部を有することを特徴とする制御装置。
(付記12)
複数の計算ノードと、前記複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置と、前記情報処理装置を制御する制御装置とを有する情報処理システムの制御方法において、
前記制御装置が、
前記複数の計算ノードのいずれかに保持部が保持する複数のジョブのいずれかを投入し、
前記複数の計算ノードと前記入出力装置との接続を変更し、
前記第2の入出力特性よりも前記第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、前記第1のジョブと依存関係があるとともに前記第1の入出力特性よりも前記第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および前記第1のジョブと前記第2のジョブのいずれとも依存関係がない第3のジョブが前記保持部に保持されている場合、前記構成変更部に前記第1の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第1のジョブを投入し、前記第1のジョブの実行の完了後、前記情報処理装置に含まれる前記複数の計算ノードの少なくともいずれかに前記ジョブ投入部を介して前記第2のジョブよりも先に前記第3のジョブを投入するとともに前記構成変更部に前記第1の入出力装置と前記第2の入出力装置とを接続させ、前記第1の入出力装置が記憶する前記第1のジョブの実行による実行結果データを前記第2の入出力装置にコピーさせ、前記第3のジョブの実行の完了後、前記構成変更部に前記第2の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第2のジョブを投入することを特徴とする情報処理システムの制御方法。
(付記1)
複数の計算ノードと、前記複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置と、前記情報処理装置を制御する制御装置とを有する情報処理システムにおいて、
前記制御装置は、
複数のジョブを保持する保持部と、
前記複数の計算ノードのいずれかにジョブを投入するジョブ投入部と、
前記複数の計算ノードと前記入出力装置との接続を変更する構成変更部と、
前記第2の入出力特性よりも前記第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、前記第1のジョブと依存関係があるとともに前記第1の入出力特性よりも前記第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および前記第1のジョブと前記第2のジョブのいずれとも依存関係がない第3のジョブが前記保持部に保持されている場合、前記構成変更部に前記第1の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第1のジョブを投入し、前記第1のジョブの実行の完了後、前記情報処理装置に含まれる前記複数の計算ノードの少なくともいずれかに前記ジョブ投入部を介して前記第2のジョブよりも先に前記第3のジョブを投入するとともに前記構成変更部に前記第1の入出力装置と前記第2の入出力装置とを接続させ、前記第1の入出力装置が記憶する前記第1のジョブの実行による実行結果データを前記第2の入出力装置にコピーさせ、前記第3のジョブの実行の完了後、前記構成変更部に前記第2の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第2のジョブを投入する制御部を有することを特徴とする情報処理システム。
(付記2)
前記第1の入出力特性は、読み出し性能が書き込み性能に比べて高い読み出し優位特性と、書き込み性能が読み出し性能に比べて高い書き込み優位特性とのいずれか一方であり、
前記第2の入出力特性は、前記読み出し優位特性と、前記書き込み優位特性とのいずれか他方であることを特徴とする付記1記載の情報処理システム。
(付記3)
前記制御装置は、前記読み出し優位特性または前記書き込み優位特性を前記入出力装置毎に識別する優位情報を記憶する優位情報記憶部を有することを特徴とする付記1または付記2記載の情報処理システム。
(付記4)
前記優位情報記憶部は、前記入出力装置が前記実行結果データを記憶していることを前記入出力装置毎に識別するデータ保持情報を記憶する領域を有することを特徴とする付記3記載の情報処理システム。
(付記5)
前記制御装置は、前記複数のジョブ間の依存関係を表す依存関係情報を記憶する依存関係情報記憶部を有することを特徴とする付記1ないし付記3のいずれか1項記載の情報処理システム。
(付記6)
前記制御部は、前記第1のジョブに続いて投入するジョブが、前記第2のジョブを除いて存在しない場合、前記第1のジョブの実行後、前記第1のジョブの実行結果データを記憶する前記第1の入出力装置を接続した計算ノードに、前記ジョブ投入部を介して前記第2のジョブを投入することを特徴とする付記1ないし付記5のいずれか1項記載の情報処理システム。
(付記7)
前記保持部は、前記第1のジョブ、前記第2のジョブおよび前記第3のジョブを順次保持することを特徴とする付記1ないし付記5のいずれか1項記載の情報処理システム。
(付記8)
前記制御部は、前記保持部が最初に保持したジョブを前記ジョブ投入部に出力することを特徴とする付記1ないし付記7のいずれか1項記載の情報処理システム。
(付記9)
前記情報処理装置は、前記構成変更部からの指示に基づいて、前記複数の計算ノードと前記複数の入出力装置との接続を切り替える切り替え装置を有することを特徴とする付記1ないし付記8のいずれか1項記載の情報処理システム。
(付記10)
前記第1の入出力装置および前記第2の入出力装置は、半導体メモリ素子を含むソリッドステートドライブ装置であることを特徴とする付記1ないし付記9のいずれか1項記載の情報処理システム。
(付記11)
複数の計算ノードと、前記複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置を制御する制御装置において、
前記制御装置は、
複数のジョブを保持する保持部と、
前記複数の計算ノードのいずれかにジョブを投入するジョブ投入部と、
前記複数の計算ノードと前記入出力装置との接続を変更する構成変更部と、
前記第2の入出力特性よりも前記第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、前記第1のジョブと依存関係があるとともに前記第1の入出力特性よりも前記第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および前記第1のジョブと前記第2のジョブのいずれとも依存関係がない第3のジョブが前記保持部に保持されている場合、前記構成変更部に前記第1の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第1のジョブを投入し、前記第1のジョブの実行の完了後、前記情報処理装置に含まれる前記複数の計算ノードの少なくともいずれかに前記ジョブ投入部を介して前記第2のジョブよりも先に前記第3のジョブを投入するとともに前記構成変更部に前記第1の入出力装置と前記第2の入出力装置とを接続させ、前記第1の入出力装置が記憶する前記第1のジョブの実行による実行結果データを前記第2の入出力装置にコピーさせ、前記第3のジョブの実行の完了後、前記構成変更部に前記第2の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第2のジョブを投入する制御部を有することを特徴とする制御装置。
(付記12)
複数の計算ノードと、前記複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置と、前記情報処理装置を制御する制御装置とを有する情報処理システムの制御方法において、
前記制御装置が、
前記複数の計算ノードのいずれかに保持部が保持する複数のジョブのいずれかを投入し、
前記複数の計算ノードと前記入出力装置との接続を変更し、
前記第2の入出力特性よりも前記第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、前記第1のジョブと依存関係があるとともに前記第1の入出力特性よりも前記第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および前記第1のジョブと前記第2のジョブのいずれとも依存関係がない第3のジョブが前記保持部に保持されている場合、前記構成変更部に前記第1の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第1のジョブを投入し、前記第1のジョブの実行の完了後、前記情報処理装置に含まれる前記複数の計算ノードの少なくともいずれかに前記ジョブ投入部を介して前記第2のジョブよりも先に前記第3のジョブを投入するとともに前記構成変更部に前記第1の入出力装置と前記第2の入出力装置とを接続させ、前記第1の入出力装置が記憶する前記第1のジョブの実行による実行結果データを前記第2の入出力装置にコピーさせ、前記第3のジョブの実行の完了後、前記構成変更部に前記第2の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第2のジョブを投入することを特徴とする情報処理システムの制御方法。
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
10…保持部;12…制御部;14…ジョブ投入部;16…構成変更部;20、22…計算ノード;24…切り替え装置;26(26a、26b)…入出力装置;28(28a、28b)…入出力装置;100…制御装置;200…情報処理装置;ALCT…ジョブ割り当て部;DSW…スイッチ装置;HWC…構成変更部;JCUE…ジョブキュー;JOBDB…データベース;MEM…主記憶装置;MSV…管理サーバ;NDPL…ノード配備部;NSW…ネットワークスイッチ;NW…ネットワーク;RSCPL…リソースプール;SSD…記憶装置;SSDDB…データベース;SV…サーバ;SVDB…データベース;SWC…スイッチ制御部;SYS1、SYS2…情報処理システム;TM…端末装置;USRIF…ユーザインタフェース
Claims (8)
- 複数の計算ノードと、前記複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置と、前記情報処理装置を制御する制御装置とを有する情報処理システムにおいて、
前記制御装置は、
複数のジョブを保持する保持部と、
前記複数の計算ノードのいずれかにジョブを投入するジョブ投入部と、
前記複数の計算ノードと前記入出力装置との接続を変更する構成変更部と、
前記第2の入出力特性よりも前記第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、前記第1のジョブと依存関係があるとともに前記第1の入出力特性よりも前記第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および前記第1のジョブと前記第2のジョブのいずれとも依存関係がない第3のジョブが前記保持部に保持されている場合、前記構成変更部に前記第1の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第1のジョブを投入し、前記第1のジョブの実行の完了後、前記情報処理装置に含まれる前記複数の計算ノードの少なくともいずれかに前記ジョブ投入部を介して前記第2のジョブよりも先に前記第3のジョブを投入するとともに前記構成変更部に前記第1の入出力装置と前記第2の入出力装置とを接続させ、前記第1の入出力装置が記憶する前記第1のジョブの実行による実行結果データを前記第2の入出力装置にコピーさせ、前記第3のジョブの実行の完了後、前記構成変更部に前記第2の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第2のジョブを投入する制御部を有することを特徴とする情報処理システム。 - 前記第1の入出力特性は、読み出し性能が書き込み性能に比べて高い読み出し優位特性と、書き込み性能が読み出し性能に比べて高い書き込み優位特性とのいずれか一方であり、
前記第2の入出力特性は、前記読み出し優位特性と、前記書き込み優位特性とのいずれか他方であることを特徴とする請求項1記載の情報処理システム。 - 前記制御装置は、前記読み出し優位特性または前記書き込み優位特性を前記入出力装置毎に識別する優位情報を記憶する優位情報記憶部を有することを特徴とする請求項1または請求項2記載の情報処理システム。
- 前記優位情報記憶部は、前記入出力装置が前記実行結果データを記憶していることを前記入出力装置毎に識別するデータ保持情報を記憶する領域を有することを特徴とする請求項3記載の情報処理システム。
- 前記制御装置は、前記複数のジョブ間の依存関係を表す依存関係情報を記憶する依存関係情報記憶部を有することを特徴とする請求項1ないし請求項4のいずれか1項記載の情報処理システム。
- 前記制御部は、前記第1のジョブに続いて投入するジョブが、前記第2のジョブを除いて存在しない場合、前記第1のジョブの実行後、前記第1のジョブの実行結果データを記憶する前記第1の入出力装置を接続した計算ノードに、前記ジョブ投入部を介して前記第2のジョブを投入することを特徴とする請求項1ないし請求項5のいずれか1項記載の情報処理システム。
- 複数の計算ノードと、前記複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置を制御する制御装置において、
前記制御装置は、
複数のジョブを保持する保持部と、
前記複数の計算ノードのいずれかにジョブを投入するジョブ投入部と、
前記複数の計算ノードと前記入出力装置との接続を変更する構成変更部と、
前記第2の入出力特性よりも前記第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、前記第1のジョブと依存関係があるとともに前記第1の入出力特性よりも前記第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および前記第1のジョブと前記第2のジョブのいずれとも依存関係がない第3のジョブが前記保持部に保持されている場合、前記構成変更部に前記第1の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第1のジョブを投入し、前記第1のジョブの実行の完了後、前記情報処理装置に含まれる前記複数の計算ノードの少なくともいずれかに前記ジョブ投入部を介して前記第2のジョブよりも先に前記第3のジョブを投入するとともに前記構成変更部に前記第1の入出力装置と前記第2の入出力装置とを接続させ、前記第1の入出力装置が記憶する前記第1のジョブの実行による実行結果データを前記第2の入出力装置にコピーさせ、前記第3のジョブの実行の完了後、前記構成変更部に前記第2の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第2のジョブを投入する制御部を有することを特徴とする制御装置。 - 複数の計算ノードと、前記複数の計算ノードのいずれかに接続され、第1の入出力特性を有する第1の入出力装置と第2の入出力特性を有する第2の入出力装置を含む複数の入出力装置とを備える情報処理装置と、前記情報処理装置を制御する制御装置とを有する情報処理システムの制御方法において、
前記制御装置が、
前記複数の計算ノードのいずれかに保持部が保持する複数のジョブのいずれかを投入し、
前記複数の計算ノードと前記入出力装置との接続を変更し、
前記第2の入出力特性よりも前記第1の入出力特性に適した読み出しと書き込みの割合である第1のジョブ、前記第1のジョブと依存関係があるとともに前記第1の入出力特性よりも前記第2の入出力特性に適した読み出しと書き込みの割合である第2のジョブ、および前記第1のジョブと前記第2のジョブのいずれとも依存関係がない第3のジョブが前記保持部に保持されている場合、前記構成変更部に前記第1の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第1のジョブを投入し、前記第1のジョブの実行の完了後、前記情報処理装置に含まれる前記複数の計算ノードの少なくともいずれかに前記ジョブ投入部を介して前記第2のジョブよりも先に前記第3のジョブを投入するとともに前記構成変更部に前記第1の入出力装置と前記第2の入出力装置とを接続させ、前記第1の入出力装置が記憶する前記第1のジョブの実行による実行結果データを前記第2の入出力装置にコピーさせ、前記第3のジョブの実行の完了後、前記構成変更部に前記第2の入出力装置を接続させた前記情報処理装置に含まれる計算ノードに前記ジョブ投入部を介して前記第2のジョブを投入することを特徴とする情報処理システムの制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015064488A JP2016184310A (ja) | 2015-03-26 | 2015-03-26 | 情報処理システム、制御装置および情報処理システムの制御方法 |
US15/053,175 US9811283B2 (en) | 2015-03-26 | 2016-02-25 | System, control device, and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015064488A JP2016184310A (ja) | 2015-03-26 | 2015-03-26 | 情報処理システム、制御装置および情報処理システムの制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016184310A true JP2016184310A (ja) | 2016-10-20 |
Family
ID=56976545
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015064488A Pending JP2016184310A (ja) | 2015-03-26 | 2015-03-26 | 情報処理システム、制御装置および情報処理システムの制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9811283B2 (ja) |
JP (1) | JP2016184310A (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9430290B1 (en) | 2015-03-31 | 2016-08-30 | International Business Machines Corporation | Determining storage tiers for placement of data sets during execution of tasks in a workflow |
US10078520B1 (en) * | 2017-03-16 | 2018-09-18 | Flexera Software Llc | Calculating wait time for batch scheduler jobs |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6904470B1 (en) * | 2003-03-26 | 2005-06-07 | Emc Corporation | Device selection by a disk adapter scheduler |
US7917903B2 (en) | 2003-03-27 | 2011-03-29 | Hewlett-Packard Development Company, L.P. | Quality of service controller and method for a data storage system |
US7555575B2 (en) | 2006-07-27 | 2009-06-30 | Hitachi, Ltd. | Method and apparatus for migrating data between storage volumes of different data pattern |
JP4949791B2 (ja) | 2006-09-29 | 2012-06-13 | 株式会社日立製作所 | ボリューム選択方法及び情報処理システム |
US9529624B2 (en) * | 2013-02-04 | 2016-12-27 | International Business Machines Corporation | Determining a relative priority for a job using context and environmental considerations |
-
2015
- 2015-03-26 JP JP2015064488A patent/JP2016184310A/ja active Pending
-
2016
- 2016-02-25 US US15/053,175 patent/US9811283B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20160283147A1 (en) | 2016-09-29 |
US9811283B2 (en) | 2017-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11593149B2 (en) | Unified resource management for containers and virtual machines | |
US9996401B2 (en) | Task processing method and virtual machine | |
JP4921054B2 (ja) | 負荷分散制御システム及び負荷分散制御方法 | |
JP2007041720A (ja) | ジョブステップ実行プログラムおよびジョブステップ実行方法 | |
JP6152431B2 (ja) | データベース管理システム及び方法 | |
JP6358042B2 (ja) | 情報処理システム、制御装置および情報処理システムの制御方法 | |
JPH0954754A (ja) | 疎結合並列処理環境における顧客情報制御システム及び方法 | |
JP6246923B2 (ja) | 管理サーバ、計算機システム及び方法 | |
US20170220385A1 (en) | Cross-platform workload processing | |
JP6666555B2 (ja) | 情報処理装置、ジョブ投入方法、およびジョブ投入プログラム | |
JP4813975B2 (ja) | 無共有型データベースシステムの構成変更方法、管理サーバ及び無共有型データベースシステム | |
JP2016184310A (ja) | 情報処理システム、制御装置および情報処理システムの制御方法 | |
JPH0944461A (ja) | 疎結合並列処理環境においてapiスタート及びキャンセルトランザクション機能を有する顧客情報制御システム及び方法 | |
JP2008293278A (ja) | 分散処理プログラム、分散処理装置、および分散処理方法 | |
JP4723465B2 (ja) | ジョブ割当プログラム及びジョブ割当方法 | |
JP6123487B2 (ja) | 制御装置、制御方法及び制御プログラム | |
JP6207342B2 (ja) | 情報処理システムおよび情報処理システムの制御方法 | |
JPWO2007108062A1 (ja) | サーバ管理方法、プログラム及び装置 | |
WO2016017219A1 (ja) | データ処理システム及びデータ処理方法及びプログラム | |
JP2010231295A (ja) | 解析システム | |
JP5420358B2 (ja) | バッチ処理実行方法及びバッチ処理実行システム | |
JP2015090688A (ja) | MapReduceジョブ管理システム、MapReduceジョブ管理方法 | |
JP6322968B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
JP2010026575A (ja) | スケジューリング方法およびスケジューリング装置並びにマルチプロセッサシステム | |
CN110765098B (zh) | 流程运行预测系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7426 Effective date: 20170803 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20170803 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20170804 |