(57)【要約】      （修正有）【課題】記憶装置におけるフラグメンテーションを抑制する情報処理システムを提供する。【解決手段】データの書き込みを要求された場合、第１の記憶装置５０６に対して要求された書き込み対象のデータのうち、書き込み対象のデータのサイズを第１の記憶装置５０６において読み書き処理が行われる第１の処理単位データのサイズで割った余りのデータを除いたデータの書き込みを行う第１の書き込み処理部５０４と、第１の書き込み処理部５０４が書き込まなかった余りのデータを、第１の処理単位データのサイズよりも小さい第２の処理単位データのサイズが設定された第２の記憶装置５０７に書き込みを行う第２の書き込み処理部５０５と、を備える。【選択図】図１Ｂ
2015194922.tif 000002
【特許請求の範囲】
【請求項１】
データの書き込みを要求された場合、第１の記憶装置に対して要求された書き込み対象のデータのうち、前記書き込み対象のデータのサイズを前記第１の記憶装置において読み書き処理が行われる第１の処理単位データのサイズで割った余りのデータを除いたデータの書き込みを行う第１の書き込み処理部と、
前記第１の書き込み処理部が書き込まなかった余りのデータを、前記第１の処理単位データのサイズよりも小さい第２の処理単位データのサイズが設定された第２の記憶装置に書き込みを行う第２の書き込み処理部と、を備える、
情報処理システム。
【請求項２】
異なる処理単位データのサイズが設定されている複数の記憶装置から、前記処理単位データのサイズが前記書き込み対象のデータのサイズ以下である記憶装置を前記第１の記憶装置として特定する制御部をさらに備える、
請求項１に記載の情報処理システム。
【請求項３】
前記制御部は、前記第１の記憶装置および前記第２の記憶装置の負荷が基準値よりも高いと判断される場合、前記書き込み対象のデータを一時的記憶領域であるキャッシュ部に記憶する処理をさらに実行する、
請求項２に記載の情報処理システム。
【請求項４】
前記制御部は、前記書き込み対象のデータのサイズの単位時間当たりの増加量である増加率が基準値より高い場合、前記書き込み対象のデータを一時的記憶領域であるキャッシュ部に記憶する処理をさらに実行する、
請求項２または請求項３に記載の情報処理システム。
【請求項５】
前記データの書き込み要求が既に前記第１の記憶装置、前記第２の記憶装置あるいは前記キャッシュ部に記憶されたデータに対する追記要求である場合、前記記憶されたデータを前記第１の記憶装置、前記第２の記憶装置および前記キャッシュ部から読み出し、前記追記要求されたデータと合わせて前記第１の書き込み処理部および前記第２の書き込み処理部に処理をさせる追記処理部をさらに備える、
請求項１から請求項４のいずれか一項に記載の情報処理システム。
【請求項６】
コンピュータが、
データの書き込みを要求された場合、第１の記憶装置に対して要求された書き込み対象のデータのうち、前記書き込み対象のデータのサイズを前記第１の記憶装置において読み書き処理が行われる第１の処理単位データのサイズで割った余りのデータを除いたデータの書き込みを行う第１の書き込み処理ステップと、
前記第１の書き込み処理ステップが書き込まなかった余りのデータを、前記第１の処理単位データのサイズよりも小さい第２の処理単位データのサイズが設定された第２の記憶装置に書き込みを行う第２の書き込み処理ステップと、を実行する、
情報処理システムの制御方法。
【請求項７】
コンピュータに、
データの書き込みを要求された場合、第１の記憶装置に対して要求された書き込み対象のデータのうち、前記書き込み対象のデータのサイズを前記第１の記憶装置において読み書き処理が行われる第１の処理単位データのサイズで割った余りのデータを除いたデータの書き込みを行う第１の書き込み処理ステップと、
前記第１の書き込み処理ステップが書き込まなかった余りのデータを、前記第１の処理単位データのサイズよりも小さい第２の処理単位データのサイズが設定された第２の記憶
装置に書き込みを行う第２の書き込み処理ステップと、を実行させる、
情報処理装置の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願で開示する技術は、情報処理システム、情報処理システムの制御方法および情報処理装置の制御プログラムに関する。
【背景技術】
【０００２】
近年、情報処理装置分野において分散ファイルシステムが利用されている。分散ファイルシステムは、複数の情報処理装置がコンピュータネットワーク等を通じて共有する記憶装置を含む。分散ファイルシステムでは、性能面（特に書き込み速度）の低下を低減するために記憶装置のブロックサイズが固定されることが多い。ブロックは、例えば、オペレーティングシステム（ＯＳ）がＨａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ（ＨＤＤ）あるいはＳｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ（ＳＳＤ）等の記憶装置に対して行う読み書き処理の処理単位を含む。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−０５２７３０号公報
【特許文献２】特開２００３−１５０４１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ブロックサイズが大きい記憶装置にデータが記憶されると内部フラグメンテーションが発生しやすい。内部フラグメンテーションとは、ブロック内に余り領域が発生することを含む。そのため、記憶装置の記憶領域が有効に利用されない虞がある。一方、ブロックサイズが小さい記憶装置に対してデータの読み書きを繰り返し実行すると、外部フラグメンテーションが発生しやすい。外部フラグメンテーションとは、ひとつのデータを記憶するブロックが連続して配置されず、データの断片化が発生することを含む。そのため、記憶装置のＩｎｐｕｔ／Ｏｕｔｐｕｔ（ＩＯ）アクセスの効率が低下する虞がある。ブロックサイズが固定された記憶装置に対してデータの読み書き処理を実行するシステムでは、内部および外部フラグメンテーション（以下、本明細書において、フラグメンテーションと称する）が発生し、記憶装置を効率的に使用することが難しい。そこで、本願で開示する技術は、記憶装置におけるフラグメンテーションを抑制する。
【課題を解決するための手段】
【０００５】
本願は、次のような情報処理システムを開示する。
データの書き込みを要求された場合、第１の記憶装置に対して要求された書き込み対象のデータのうち、前記書き込み対象のデータのサイズを前記第１の記憶装置において読み書き処理が行われる第１の処理単位データのサイズで割った余りのデータを除いたデータの書き込みを行う第１の書き込み処理部と、
前記第１の書き込み処理部が書き込まなかった余りのデータを、前記第１の処理単位データのサイズよりも小さい第２の処理単位データのサイズが設定された第２の記憶装置に書き込みを行う第２の書き込み処理部と、を備える、
情報処理システム。
【発明の効果】
【０００６】
本願で開示する技術によれば、記憶装置におけるフラグメンテーションを抑制できる。
【図面の簡単な説明】
【０００７】
【図１Ａ】実施形態のシステム構成を例示する図である。
【図１Ｂ】メタデータボリューム群およびデータボリューム群の機能ブロックを例示する図である。
【図２】情報処理装置のハードウェア構成を例示する図である。
【図３】クライアント群のノードで実行されるソフトウェアの処理フローを例示する図である。
【図４】メタデータボリューム群のノードで実行されるソフトウェアの処理フローを例示する図である。
【図５】データボリューム群のノードで実行されるソフトウェアの処理フローを例示する図である。
【図６】メタデータボリューム群のノードで実行されるソフトウェアの処理フローの詳細を例示する図である。
【図７】ユーザの要求に応じてデフラグが実行される場合の処理フローを例示する図である。
【図８】実施形態のシステムを初期構築する手順を例示する図である。
【発明を実施するための形態】
【０００８】
以下、図面を参照して、本願で開示する実施形態について説明する。以下に示す実施形態の構成は例示であり、本願で開示する技術的範囲を以下の態様に限定するものではない。
【０００９】
＜実施形態＞
図１Ａから図７を参照して実施形態について説明する。実施形態では複数のクライアント端末がコンピュータネットワークを介して記憶装置に接続されている。
【００１０】
＜実施形態の構成＞
図１Ａは、実施形態のシステム構成を例示する図である。図１Ａでは、クライアント群１、サーバ群２およびネットワーク環境５が例示されている。クライアント群１およびサーバ群２は、それぞれ複数のノードを含む。ノードは情報処理装置を含む。クライアント群１およびサーバ群２は相互にネットワーク環境５によって接続されている。
【００１１】
クライアント群１は１台または２台以上のノード１ａを含む。ノード１ａは、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）、メモリおよびＮｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ（ＮＩＣ）を有する情報処理装置である。さらに、ノード１ａは、ユーザの操作要求を解析してサーバ群２へデータの読み書き処理の要求をするソフトウェア１ｂを有する。データはファイルを含む。ノード１ａは、ネットワーク環境５を介してノード３にデータの読み書き処理を要求する。
【００１２】
サーバ群２は、クライアント群１からの要求に応じてデータを記憶装置に記憶する。サーバ群２はメタデータボリューム群３およびデータボリューム群４を含む。
【００１３】
メタデータボリューム群３は、データとデータが保存されている記憶装置との対応関係を記憶する。メタデータボリューム群３は、ノード３ａ、ソフトウェア３ｂおよび記憶装置３ｃを含む。
【００１４】
ノード３ａは、演算処理装置としてのＣｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）、メモリおよび通信装置としてのＮｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ（ＮＩＣ）を有する情報処理装置である。ノード３ａは、記憶装置３ｃに接続される。ノード３ａは、ソフトウェア３ｂを含む。なお、図１Ａでは、ノード３ａが１台記載
されている。しかしながら、ノード３ａは１台である場合に限定されない。ノード３ａは２台以上設けられてもよい。
【００１５】
記憶装置３ｃは、データとデータが記憶されている記憶装置との対応関係を記憶する。記憶装置３ｃはノード３ａに接続されている記憶装置である。ノード１ａからデータの書き込み要求があると、ノード３ａはデータボリューム群４に対してデータの書き込みを要求する。また、ノード３ａは、データとデータが書き込まれる記憶装置との対応関係を記憶装置３ｃに記憶する。ノード１ａからデータボリューム群４に記憶されたデータへのアクセス要求があると、ノード３ａは記憶装置３ｃを参照する。ノード３ａは、記憶装置３ｃに記憶された情報に基づいて、要求されたデータが保存されている記憶装置を特定する。記憶装置３ｃとノード３ａとの接続は様々な接続方式を適用可能である。記憶装置３ｃとノード３ａとの接続に用いられる接続方式は、例えば、Ｉｎｔｅｇｒａｔｅｄ  Ｄｒｉｖｅ  Ｅｌｅｃｔｒｏｎｉｃｓ（ＩＤＥ）、Ｅｎｈａｎｃｅｄ  Ｉｎｔｅｇｒａｔｅｄ  Ｄｒｉｖｅ  Ｅｌｅｃｔｒｏｎｉｃｓ（ＥＩＤＥ）、Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ（ＳＡＴＡ）、Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ（ＳＣＳＩ）、Ｓｅｒｉａｌ  Ａｔｔａｃｈｅｄ  ＳＣＳＩ（ＳＡＳ）あるいはＦｉｂｒｅ  Ｃｈａｎｎｅｌ（ＦＣ）を適用可能である。
【００１６】
ソフトウェア３ｂはノード３ａ上で動作する。ソフトウェア３ｂを実行するノード３ａは、「制御部」の一例である。制御部は、ノード１ａからの要求を解析してデータの書き込み処理を行う記憶装置を決定する。制御部は、データのサイズ、データサイズの増加率およびシステム負荷を基に書き込み先の記憶装置を決定する。
【００１７】
制御部はデータのサイズによってデータの書き込み先となる記憶装置を決定する際に、基準のブロックサイズを設定してもよい。基準のブロックサイズはデータを書き込む先の記憶装置を決定する際に用いられる。基準のブロックサイズは、書き込み対象となるデータのデータサイズと比較される。基準のブロックサイズは、記憶装置のデバイスの種類および素性能ごとに作成されたテーブルあるいは計算式から決定されればよい。素性能とは、例えば、記憶装置の連続したブロックに対するデータ読み出しあるいは書き込み処理の速度を含む。素性能とは、シーケンシャルリードあるいはシーケンシャルライトの処理の速度を含む。
【００１８】
制御部はデータサイズの増加率によってデータの書き込み先となる記憶装置を決定する際に、増加率の基準値を設定してもよい。増加率の基準値は、書き込み対象となるデータのデータサイズの増加率と比較される。増加率の基準値は、データを書き込む先の記憶装置を決定する際に用いられる。増加率の基準値は、運用試験等で決定されればよい。
【００１９】
制御部は、システム負荷の基準値よりも現在のシステム負荷が高い場合、データの書き込み先となる記憶装置の決定を保留してもよい。システム負荷は、記憶装置のＩＯ負荷を含む。制御部は、記憶装置の決定を保留する場合、データを一時的に保存するキャッシュ部にデータをキャッシュとして書き込んでもよい。システム負荷の基準値は、運用試験等で決定されればよい。
【００２０】
データボリューム群４は、ノード４ａ、ソフトウェア４ｂ、記憶装置４ｃ、ノード１４ａおよび記憶装置１４ｃを含む。データボリューム群４は、ノード１ａから書き込み要求のあったデータを記憶する処理を行う。
【００２１】
ノード４ａは、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）、メモリおよびＮｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ（ＮＩＣ）を有する情報処理装置
である。ノード４ａは記憶装置４ｃに接続される。ノード４ａはソフトウェア４ｂを含む。
【００２２】
ノード１４ａは、記憶装置として記憶装置１４ｃが接続されることを除いてノード４ａと同一の構成である。そのため、ノード４ａと同一の構成要素については同一の符号を付し、詳細な説明は省略される。
【００２３】
図１Ａでは、データボリューム群４はノード４ａおよびノード１４ａの２台のノードを含む。しかしながら、データボリューム群４に含まれるノードは２台である場合に限定されない。データボリューム群４のノードは、例えば、１台であってもよい。データボリューム群４のノードは、例えば、３台以上であってもよい。
【００２４】
記憶装置４ｃおよび記憶装置１４ｃは、ノード１ａから送信されたデータを記憶する。記憶装置４ｃはノード４ａに接続されている記憶装置である。記憶装置１４ｃはノード１４ａに接続されている記憶装置である。記憶装置４ｃは、記憶装置１４ｃよりも大きなブロックサイズが設定されている。ブロックサイズは、「第１の処理単位データのサイズ」および「第２の処理単位データのサイズ」の一例である。記憶装置４ｃとノード４ａおよび記憶装置１４ｃとノード１４ａとの接続は、記憶装置４ｃとノード４ａとの接続方式と同様に様々な接続方式を適用可能である。
【００２５】
ソフトウェア４ｂは、ノード４ａおよびノード１４ａ上で動作する。ノード４ａは、「第１の記憶装置」の一例として、ソフトウェア４ｂを実行し記憶装置４ｃと連携する。ノード１４ａは、「第２の記憶装置」の一例として、ソフトウェア４ｂを実行し記憶装置１４ｃと連携する。ノード４ａおよびノード１４ａは、ノード３ａから要求されたデータの読み出しあるいは書き込み処理を行う。
【００２６】
ネットワーク環境５は、クライアント群１およびサーバ群２を相互に接続するコンピュータネットワークである。ネットワーク環境５は、有線あるいは無線のネットワークである。ネットワーク環境５は、例えば、インターネット、Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＬＡＮ）、Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ（ＶＰＮ）、無線ＬＡＮあるいは携帯電話の電話回線等である。
【００２７】
＜実施形態の機能ブロック＞
図１Ｂは、メタデータボリューム群３およびデータボリューム群４の機能ブロックを例示する図である。図１Ｂでは、制御部５０１、追記部５０１ａ、キャッシュ部５０２、管理部５０３、第１書き込み処理部５０４、第２書き込み処理部５０５、第１記憶部５０６および第２記憶部５０７が例示されている。
【００２８】
制御部５０１は、ノード１ａからの要求を解析してデータの読み書き処理を行う記憶装置を決定する。制御部５０１は追記部５０１ａを含む。制御部５０１は、要求のあったデータのデータサイズ、データサイズの増加率およびシステム負荷を基に書き込み先の記憶装置を特定する。制御部５０１は、要求のあったデータと特定した記憶装置との対応関係を管理部５０３に記憶する。データへのアクセス要求があった場合、制御部５０１は、管理部５０３に記憶された情報に基づいて、要求されたデータが保存されている記憶装置を特定する。制御部５０１は、例えば、ノード３ａがソフトウェア３ｂを実行することで提供される。
【００２９】
追記部５０１ａは、既に第１記憶部５０６、第２記憶部５０７あるいはキャッシュ部５０２に記憶されたデータに対するデータの追記を行う。追記部５０１ａは、「追記処理部」の一例である。
【００３０】
キャッシュ部５０２は、ノード４ａの要求に応じてデータを一時的に記憶する。図１Ｂでは、キャッシュ部５０２はノード３ａによって提供されている。しかしながら、キャッシュ部５０２は、ノード３ａによって提供される場合に限定されない。キャッシュ部５０２は、例えば、ノード４ａあるいはノード１４ａによって提供されてもよい。キャッシュ部５０２は、例えば、ノード３ａ、ノード４ａおよびノード１４ａの少なくとも２以上からアクセスできる共有メモリ領域を設け、共有メモリにキャッシュ部５０２を提供させてもよい。
【００３１】
管理部５０３は、データとデータが記憶されている記憶装置との対応関係を記憶する。データの書き込み要求があると、制御部５０１はデータとデータが書き込まれる記憶装置の対応を管理部５０３に記憶する。データ読み出し要求があると、制御部５０１は管理部５０３に記憶された情報を基にデータが記憶されている記憶部を特定する。
【００３２】
第１書き込み処理部５０４は、書き込み要求のあったデータのうち書き込みを要求されたデータのサイズを第１記憶部５０６に設定されたブロックサイズで割った余り部分のデータを除いたデータの書き込みを第１記憶部５０６に行う。第１書き込み処理部５０４は、例えば、ノード３ａがソフトウェア３ｂを実行することで提供される。第１書き込み処理部は、「第１の書き込み処理部」の一例である。
【００３３】
第２書き込み処理部５０５は、書き込み要求のあったデータのうち第１書き込み処理部５０４によって書き込みを要求されなかった余り部分のデータの書き込みを第２記憶部５０７に行う。第２書き込み処理部５０５は、例えば、ノード３ａがソフトウェア３ｂを実行することで提供される。第２書き込み処理部は、「第２の書き込み処理部」の一例である。
【００３４】
第１記憶部５０６は、第１書き込み処理部５０４によってデータが書き込まれる。第１記憶部５０６は、例えば、ノード４ａおよび記憶装置４ｃによって提供される。第１記憶部は、「第１の記憶装置」の一例である。
【００３５】
第２記憶部５０７は、第２書き込み処理部５０５によってデータが書き込まれる。第２記憶部５０７は、例えば、ノード１４ａおよび記憶装置１４ｃによって提供される。第２記憶部は、「第２の記憶装置」の一例である。
【００３６】
＜情報処理装置のハードウェア構成＞
図２は、情報処理装置１００のハードウェア構成を例示する図である。情報処理装置１００は、プロセッサ１０１、主記憶部１０２、補助記憶部１０３、通信部１０４および接続バスＢ１を含む。プロセッサ１０１はＣＰＵを含む。プロセッサ１０１、主記憶部１０２、補助記憶部１０３および通信部１０４は、接続バスＢ１によって相互に接続されている。情報処理装置１００は、ノード１ａ、ノード３ａ、ノード４ａあるいはノード１４ａとして使用できる。
【００３７】
情報処理装置１００は、プロセッサ１０１が補助記憶部１０３に記憶されたプログラムを主記憶部１０２の作業領域に実行可能に展開し、プログラムの実行を通じて周辺装置の制御を行う。これにより、情報処理装置１００は、所定の目的に合致した機能手段を実現することができる。主記憶部１０２及び補助記憶部１０３は、情報処理装置１００が読み取り可能な記憶媒体である。
【００３８】
主記憶部１０２は、プロセッサから直接アクセスされる記憶部として例示される。主記憶部１０２は、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）およびＲｅａｄ  
Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）を含む。
【００３９】
補助記憶部１０３は、各種のプログラム及び各種のデータを読み書き自在に記録媒体に格納する。補助記憶部１０３は外部記憶装置とも呼ばれる。補助記憶部１０３には、ＯＳ、各種プログラムあるいは各種テーブル等が格納される。ＯＳは、通信部１０４を介して接続される外部の装置等とのデータの受け渡しを行う通信インターフェースプログラムを含む。外部の装置等には、例えば、ネットワーク等で接続された、他の映像処理装置および外部記憶装置が含まれる。なお、補助記憶部１０３は、例えば、ネットワーク上のコンピュータ群であるクラウドシステムによって提供されてもよい。補助記憶部１０３は、記憶装置３ｃ、記憶装置４ｃあるいは記憶装置１４ｃとして使用できる。
【００４０】
補助記憶部１０３は、例えば、Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ（ＥＰＲＯＭ）、ソリッドステートディスク（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ、ＳＳＤ）、ハードディスクドライブ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ、ＨＤＤ）等である。また、補助記憶部１０３は、例えば、Ｃｏｍｐａｃｔ  Ｄｉｓｋ（ＣＤ）ドライブ装置、Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ（ＤＶＤ）ドライブ装置、Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ（ＢＤ）ドライブ装置等である。また、補助記憶部１０３は、Ｎｅｔｗｏｒｋ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ（ＮＡＳ）あるいはＳｔｏｒａｇｅ
Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＳＡＮ）によって提供されてもよい。記録媒体としては、例えば、不揮発性半導体メモリ（フラッシュメモリ）を含むシリコンディスク、ハードディスク、ＣＤ、ＤＶＤ、ＢＤ、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ（ＵＳＢ）メモリ等である。
【００４１】
通信部１０４は、例えば、ネットワーク環境５とのインターフェースである。通信部１０４はＮＩＣを含む。通信部１０４は、ネットワーク環境５を介して外部の装置と通信を行う。
【００４２】
情報処理装置１００は、例えば、ユーザ等からの操作指示等を受け付ける入力部をさらに備えてもよい。このような入力部として、キーボード、ポインティングデバイス、タッチパネル、加速度センサーあるいは音声入力装置といった入力デバイスを例示できる。
【００４３】
情報処理装置１００は、例えば、プロセッサ１０１で処理されるデータや主記憶部１０２に記憶されるデータを出力する出力部を備えるものとしてもよい。このような、出力部として、Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ（ＣＲＴ）ディスプレイ、Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ（ＬＣＤ）、Ｐｌａｓｍａ  Ｄｉｓｐｌａｙ  Ｐａｎｅｌ（ＰＤＰ）、Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ（ＥＬ）パネル、有機ＥＬパネルあるいはプリンタといった出力デバイスを例示できる。
【００４４】
＜ソフトウェア処理の概略＞
図３は、クライアント群１のノード１ａで実行されるソフトウェア１ｂの処理フローを例示する図である。以下、図３を参照してソフトウェア１ｂの処理フローを説明する。
【００４５】
ノード１ａは、キーボード等からユーザの要求を受け付ける。ノード１ａは、受け付けたユーザの要求の内容を解析する。ユーザの要求とは、例えば、データの書き込みあるいは読み出し処理である（Ｓ１０１）。ノード１ａは、受け付けたユーザの要求をサーバ群２へ送信する（Ｓ１０２）。以上で、ノード１ａからサーバ群２へのデータの書き込みあるいは読み出し処理の要求は完了する（Ｓ１０３）。
【００４６】
図４は、メタデータボリューム群３のノード３ａで実行されるソフトウェア３ｂの処理フローを例示する図である。以下、図４を参照してソフトウェア３ｂの処理フローを説明
する。
【００４７】
ノード３ａは、ノード１ａからの要求を受け付ける。ノード３ａは、受け付けたノード１ａからの要求を解析する。ノード３ａは、ノード１ａから処理を要求されたデータのサイズを特定する。ノード３ａは、ノード１ａからの処理がデータの書き込み処理であるか読み出し処理であるかを特定してもよい（Ｓ２０１）。ノード３ａは、Ｓ２０１で特定されたデータのサイズに応じてデータの書き込み先となるデータボリュームが接続されているノードを決定する（Ｓ２０２）。
【００４８】
図５は、データボリューム群４のノード４ａあるいはノード１４ａで実行されるソフトウェア４ｂの処理フローを例示する図である。以下、図５を参照してソフトウェア４ｂの処理フローを説明する。
【００４９】
ノード４ａあるいはノード１４ａは、ノード１ａから受信した要求を解析する（Ｓ３０１）。ノード４ａあるいはノード１４ａ、ノード１ａから受信したデータをノード３ａによって特定された記憶装置４ｃあるいは記憶装置１４ｃに対して書き込む（Ｓ３０２）。
【００５０】
＜ファイルの書き込み処理＞
図６は、メタデータボリューム群３のノード３ａで実行されるソフトウェア３ｂの処理フローの詳細を例示する図である。図６は、図４で概略を説明した処理の詳細を例示する。以下、図６を参照してソフトウェア３ｂの処理フローを説明する。なお、図６の説明において、書き込み対象となるファイルのファイルサイズを５ＭＢ、記憶装置４ｃのブロックサイズを２ＭＢ、記憶装置１４ｃのブロックサイズを１ＭＢと仮定する。
【００５１】
まず、Ｓ４０１〜Ｓ４０５およびＳ４０９を参照してファイルが新規に作成される場合の処理を説明する。ノード３ａはノード１ａからの書き込み要求を受け付ける（Ｓ４０１）。ノード３ａは、ノード１ａからの要求がファイルを新規に作成するものであるか判定する（Ｓ４０２）。ファイルを新規に作成する場合（Ｓ４０２でＹＥＳ）、ノード３ａは、ＩＯサイズと基準のブロックサイズを比較する。ＩＯサイズは、例えば、記憶装置に入出力されるデータのサイズである。ファイルを新規作成する場合、ＩＯサイズは、例えば、新規作成されるファイルのファイルサイズである（Ｓ４０３）。基準のブロックサイズよりＩＯサイズが大きい場合（Ｓ４０３でＹＥＳ）、ノード３ａは、ＩＯサイズ以下の範囲で最大のブロックサイズが設定された記憶装置をデータボリューム群４から特定する。この特定する処理は、「制御ステップ」の一例である。また、ノード３ａのＣＰＵは、「制御部」の一例として、この特定する処理を実行する。ここでは、記憶装置４ｃが特定されるものとする。ノード３ａは、記憶装置４ｃが接続されているノード４ａに対してファイルの書き込み処理を要求する。ノード４ａは、ノード３ａからの要求に応じてファイルを記憶装置４ｃに記憶する。なお、ノード３ａはファイルのすべてのデータをノード４ａに対して書き込み要求しなくともよい。ノード３ａは、ファイルの一部分のデータをノード４ａに対して書き込み要求してもよい。ファイルの一部分のデータとは、書き込み対象となるファイルのファイルサイズを記憶装置４ｃに設定されたブロックサイズで割った余り部分のデータを除いたデータを含む。ここでは、書き込み対象となる５ＭＢのファイルのうち、４ＭＢ（２ＭＢ×２ブロック分）分のデータの書き込み要求をノード３ａがノード４ａに対して行う。ノード３ａがノード４ａにファイルの書き込みを要求する処理は、「第１の書き込み処理ステップ」の一例である。ノード３ａのＣＰＵは、「第１の書き込み処理部」の一例として、ノード４ａにファイルの書き込みを要求する処理を実行する（Ｓ４０４）。ノード３ａは、Ｓ４０４の処理で書き込みを要求しなかった書き込み対象となるファイルの余り部分のデータを基準のブロックサイズより小さいブロックサイズが設定された記憶装置が接続されているノードに書き込み処理を要求する。ここでは、書き込み対象となる５ＭＢのファイルのうち、１ＭＢ分のデータの書き込み要求をノード３ａが
ノード１４ａに対して行う。ノード１４ａは、ノード３ａの要求に応じて記憶装置１４ｃに要求された１ＭＢ分のデータを記憶する。ノード３ａがノード１４ａに対してファイルのデータの書き込みを要求する処理は、「第２の書き込み処理ステップ」の一例である。ノード３ａは、「第２の書き込み処理部」の一例として、ノード１４ａに対してファイルのデータの書き込みを要求する処理を実行する（Ｓ４０５）。ＩＯサイズが基準のブロックサイズ以下の場合（Ｓ４０３でＮＯ）、ノード３ａはファイルの書き込み先となる記憶装置の特定を保留する。ノード３ａは、書き込み要求のあったファイルをキャッシュ部５０２にキャッシュとして記憶する。キャッシュ部５０２に記憶する処理は、「制御ステップ」の一例である。また、ノード３ａのＣＰＵは、「制御部」の一例としてＳ４０９の処理を実行する。Ｓ４０９の処理は、「書き込みを要求されたデータを一時的記憶領域であるキャッシュ部に記憶する処理」の一例である（Ｓ４０９）。
【００５２】
次に、Ｓ４０６以降を参照して、既存のファイルに追記する場合の処理を説明する。既存のファイルに追記する場合（Ｓ４０２でＮＯ）、ノード３ａは書き込み対象となるファイルのファイルサイズと基準のブロックサイズを比較する。ここで、基準のブロックサイズと比較対象となるファイルのファイルサイズは追記後のファイルのファイルサイズである（Ｓ４０６）。追記後のファイルのファイルサイズが基準のブロックサイズ以下の場合（Ｓ４０６でＮＯ）、ノード３ａは、ファイルの増加率と増加率の基準値を比較する。ファイルの増加率は時間当たりのファイルの増加量の比である。ファイルの増加率は、例えば、以下の式（１）で決定される。
（ファイルの増加率）＝（ｄ１−ｄ０）÷（ｔ１−ｔ０）・・・式（１）
式（１）のｄ１は今回書き込み要求時のファイルサイズである。式（１）のｄ０は前回書き込み要求時のファイルサイズである。式（１）のｄ１およびｄ０の単位は、例えば、「バイト」である。式（１）のｔ１は今回書き込み要求時の時間である。式（１）のｔ０は前回書き込み要求時の時間である。式（１）のｔ１およびｔ０の単位は、例えば、「秒」である。つまり、式（１）は、単位時間あたりのファイルサイズの増加量を示している。増加率の基準値は、運用試験等で決定されればよい（Ｓ４０７）。ファイルの増加率が増加率の基準値以下の場合（Ｓ４０７でＮＯ）、ノード３ａは、基準のブロックサイズより小さいブロックサイズが設定された記憶装置に接続されたノードに対し、ファイルの追記部分の書き込み要求を行う。ここでは、ノード３ａはノード１４ａに対してファイルの書き込み要求を行う。ノード３ａは、既にキャッシュ部５０２に記憶されているデータがある場合は、キャッシュ５０２に記憶されているデータを合わせて書き込み要求を行う。ノード１４ａは、ノード３ａからの要求に応じて記憶装置１４ｃにファイルの書き込み処理を行う（Ｓ４０８）。基準のブロックサイズより追記後のファイルのファイルサイズが大きい場合（Ｓ４０６でＹＥＳ）、ノード３ａは、データボリューム群４のシステム負荷を判定する。システム負荷は、記憶装置４ｃおよび記憶装置１４ｃのＩＯ負荷を含む。システム負荷の判定は、システム負荷の基準値と比較することで行われる（Ｓ４１０）。システム負荷がシステム負荷の基準値未満の場合（Ｓ４１０でＹＥＳ）、ノード３ａは、記憶装置４ｃ、記憶装置１４ｃおよびキャッシュ部５０２のいずれかひとつ以上に記憶されている既存ファイルのデータを読み込むようノード４ａおよびノード１４ａに対して要求する。ノード４ａおよびノード１４ａは、ノード３ａからの要求に応じて記憶されているデータを読み込む。読み込まれたデータは、Ｓ４０４以降の処理で記憶装置に書き込まれる。Ｓ４１１からＳ４０４およびＳ４０５への処理は、「追記処理ステップ」の一例である。また、ノード３ａのＣＰＵは、「追記処理部」の一例としてＳ４１１からＳ４０４およびＳ４０５への処理を実行する（Ｓ４１１）。ファイルの増加率が増加率の基準値より高い場合（Ｓ４０７でＹＥＳ）あるいはシステム負荷がシステム負荷の基準値以上の場合（Ｓ４１０でＮＯ）、ノード３ａは、ファイルの書き込み先となる記憶装置の特定を保留する。ノード３ａは、書き込み要求のあったファイルの追記部分をキャッシュ部５０２に記憶する。キャッシュ部５０２に記憶する処理は、「制御ステップ」の一例である。また、ノード３ａのＣＰＵは、「制御部」の一例としてＳ４０９の処理を実行する。Ｓ４０９の
処理は、「書き込みを要求されたデータを一時的記憶領域であるキャッシュ部に記憶する処理」の一例である（Ｓ４０９）。
【００５３】
以上で説明したとおり、ファイルの書き込み処理を要求されると、ノード３ａは異なるブロックサイズが設定された複数の記憶装置からＩＯサイズ以下の範囲で最大のブロックサイズが設定された記憶装置を特定する。ノード３ａは、特定された記憶装置が接続されたノードに対してファイルの書き込みを要求する。そのため、記憶装置のブロック内に生じる空き領域が低減される。その結果、記憶装置の記憶容量が効率的に使用される。
【００５４】
実施形態のファイルの書き込み要求は、上記Ｓ４０４、Ｓ４０５、Ｓ４０７およびＳ４０８の処理のようにファイルの再配置処理を含む。このファイルの再配置処理は自動デフラグメンテーション処理（以下、本明細書においてデフラグと称する）ということもできる。その結果、ユーザが明示的にデフラグを要求しなくとも、記憶装置におけるフラグメンテーションの発生が抑制される。
【００５５】
実施形態のファイル追記処理では、システム負荷がシステム負荷の基準値より高い場合、記憶装置４ｃあるいは記憶装置１４ｃにファイルを書き込まない。その結果、実施形態のファイル追記処理は記憶装置４ｃおよび記憶装置１４ｃのシステム負荷を低減することができる。
【００５６】
実施形態のファイル追記処理は、Ｓ４１１、Ｓ４０４およびＳ４０５によって記憶装置４ｃ等に既に記憶されているデータを読み込んで実行されるファイルの再配置処理を含む。その結果、実施形態のファイル追記処理は、記憶装置におけるフラグメンテーションの発生を抑制できる。
【００５７】
＜ユーザの要求によるデフラグの実行＞
図７は、ユーザの要求に応じてデフラグが実行される場合の処理フローを例示する図である。以下、図７を参照してユーザの要求に応じてデフラグが実行される場合の処理について説明する。
【００５８】
ノード１ａはユーザからデフラグの要求を受け付ける。ノード１ａは、受け付けたデフラグの要求をノード３ａに送信する（Ｓ５０１）。ノード３ａは、デフラグを行っていないファイルが記憶装置４ｃあるいは記憶装置１４ｃに存在するか確認する。デフラグを行っていないファイルとは、そのファイルのファイルサイズ以下の範囲で最大のブロックサイズが設定された記憶装置に記憶されていないファイルを含む（Ｓ５０２）。デフラグを行っていないファイルが存在する場合（Ｓ５０２でＹＥＳ）、ノード３ａは、デフラグの対象となるファイルのファイルサイズと基準のブロックサイズを比較する。デフラグの対象となるファイルのファイルサイズが基準のブロックサイズ以下の場合、ノード３ａは処理をＳ５０２に戻す（Ｓ５０３）。基準のブロックサイズよりデフラグの対象となるファイルのファイルサイズが大きい場合（Ｓ５０３でＹＥＳ）、ノード３ａは、デフラグの対象となるファイルを読み出す。デフラグの対象となるファイルが複数の記憶装置に分かれて記憶されている場合、ノード３ａはすべての記憶装置からファイルを読み出す（Ｓ５０４）。ノード３ａは、デフラグ対象のファイルのファイルサイズ以下の範囲で最大のブロックサイズが設定された記憶装置をデータボリューム群４から特定する。ここでは、記憶装置４ｃが特定されるものと仮定する。ノード３ａは、記憶装置４ｃが接続されているノード４ａに対してファイルの書き込み処理を要求する。なお、ノード３ａはファイルのすべてのデータをノード４ａに対して書き込みを要求しなくともよい。ノード３ａは、例えば、デフラグ対象となるファイルのファイルサイズをノード４ａに接続された記憶装置４ｃのブロックサイズで割った余り部分のデータを除いたデータを書き込んでもよい（Ｓ５０５）。ノード３ａは、Ｓ４０４の処理で書き込み処理を要求しなかった余り部分のデー
タを基準のブロックサイズより小さいブロックサイズが設定されたノード４ａあるいはノード１４ａに書き込み処理を要求する（Ｓ５０６）。すべてのファイルのデフラグが完了した場合（Ｓ５０２でＮＯ）、デフラグ処理は完了する（Ｓ５０７）。
【００５９】
以上で説明したとおり、実施形態のデフラグでは、異なるブロックサイズが設定された複数の記憶装置からファイルサイズ以下の範囲で最大のブロックサイズが設定された記憶装置を特定する。ノード３ａは、特定された記憶装置が接続されたノードに対してファイルの書き込み処理を行う。その結果、記憶装置におけるフラグメンテーションが抑制される。
【００６０】
実施形態は、異なるブロックサイズが設定された複数の記憶装置を有する。ファイルの書き込み処理実行時あるいはデフラグ時にファイルサイズ以下の範囲で最大のブロックサイズが設定された記憶装置を特定する。ノード３ａは、特定された記憶装置が接続されたノードに対してファイルの書き込み要求を行う。その結果、記憶装置におけるフラグメンテーションが抑制される。
【００６１】
＜第１実施例＞
第１実施例では、記憶装置４ｃおよび記憶装置１４ｃとしてＳＳＤを用いる場合について説明する。ＳＳＤのランダムアクセスによる読み出し性能はＨＤＤと比較して高い。そのため、データの追記処理の際に既に記憶装置等に記憶されているデータを読み込む処理の頻度をＨＤＤと比較して高くしてもよい。そこで、図６のＳ４０３およびＳ４０６で用いられる「基準のブロックサイズ」の値が記憶装置としてＨＤＤを用いる場合よりも小さい値に設定される。「基準のブロックサイズ」の値が小さく設定されると、例えば、図６のＳ４０４、Ｓ４０５およびＳ４１１の処理が実行される頻度が高くなる。つまり、基準のブロックサイズを基に決定された記憶装置に対してファイルの書き込み処理が実行される頻度が高くなる。そのため、記憶装置におけるフラグメンテーションが抑制される。その結果、記憶装置４ｃおよび記憶装置１４ｃのＩＯ性能が向上する。
【００６２】
＜第２実施例＞
第２実施例では、記憶装置４ｃおよび記憶装置１４ｃとして、素性能の高いＨＤＤを用いる場合について説明する。素性能が高いＨＤＤは素性能が低いＨＤＤと比較して同一ブロック内あるいは連続したブロックに対する読み出しあるいは書き込み性能が高くなる。そのため、データを追記する際に、より大きなブロックサイズの設定された記憶装置に書き込み処理を行う方が好ましい。そこで、図６のＳ４０３およびＳ４０６で用いられる「基準のブロックサイズ」の値が記憶装置として素性能の低いＨＤＤを用いる場合よりも大きい値に設定される。例えば、同種類のデバイスについて素性能が２倍になると「基準のブロックサイズ」は２倍に設定されればよい。「基準のブロックサイズ」の値が大きく設定されると、例えば、図６のＳ４０９の処理が実行される頻度が高くなる。そのため、書き込み要求のされたデータがある程度キャッシュ部５０２に蓄積され、その後キャッシュ部５０２に蓄積されたデータをまとめて記憶装置に書き込む頻度が高くなる。その結果、キャッシュ部５０２に蓄積しない場合と比較して、より大きなブロックサイズが設定された記憶装置にデータが記憶されやすくなる。その結果、第２実施例では、記憶装置におけるフラグメンテーションが抑制される。
【００６３】
＜第３実施例＞
第３実施例では、同じブロックサイズが設定された記憶装置を複数用意するシステムについて説明する。同じブロックサイズが設定された記憶装置が複数用意されることで、特定の記憶装置へのＩＯアクセスの集中を低減できる。そのため、記憶装置１台あたりのＩＯ負荷が低減される。そこで、第３実施例では、システム負荷の基準値が高く設定される。その結果、例えば、図６のＳ４１１、Ｓ４０４およびＳ４０５の処理が実行される頻度
が高くなる。つまり、基準のブロックサイズを基に決定された記憶装置にファイルの書き込み処理が実行される頻度が高くなる。そのため、記憶装置におけるフラグメンテーションが抑制される。その結果、データボリューム群４ａのＩＯ性能が向上する。
【００６４】
＜第４実施例＞
第４実施例では、ブロックサイズの基準値より大きいあるいは小さいブロックサイズが設定された記憶装置が複数用意される。複数用意されたそれぞれの記憶装置のブロックサイズは、ブロックサイズの基準値より段階的に大きくあるいは小さく設定される。そのため、図６のＳ４０４において、ファイルサイズの大きなファイルはより大きなブロックサイズが設定された記憶装置に記憶される。また、図６のＳ４０５およびＳ４０８において、ファイルサイズの小さなファイルはより小さなブロックサイズが設定された記憶装置に記憶される。なお、第４実施例では、ブロックサイズの基準値より大きいあるいは小さいブロックサイズが設定された記憶装置のいずれか一方が複数用意されてもよい。
【００６５】
第４実施例では、ファイルサイズの大きなファイルはより大きなブロックサイズが設定された記憶装置に記憶される。また、第４実施例では、ファイルサイズの小さなファイルはより小さなブロックサイズが設定された記憶装置に記憶される。その結果、第４実施例では、記憶装置におけるフラグメンテーションが抑制される。また、第４実施例では複数の記憶装置を有することで、第３実施例と同様に特定の記憶装置へのＩＯアクセスの集中を低減できる。そのため、記憶装置１台あたりのＩＯ負荷が低減される。
【００６６】
＜初期構築手順＞
以上で説明した実施形態のシステムは、例えば、以下に説明する手順で構築される。図８は、実施形態のシステムの初期設定手順を例示する図である。以下、図８を参照して実施形態のシステムを初期設定する手順について説明する。
【００６７】
クライアント群１、サーバ群２およびネットワーク環境５に含まれるハードウェアのハードウェアセットアップが行われる。クライアント群１、サーバ群２がネットワーク環境５で相互に接続される。ノード１ａにソフトウェア１ｂがインストールされる。ノード３ａにソフトウェア３ｂがインストールされる。ノード４ａおよびノード１４ａにソフトウェア４ｂがインストールされる（Ｓ６０１）。ノード１ａ、ノード３ａ、ノード４ａおよびノード１４ａにおいて、ソフトウェアが起動される（Ｓ６０２）。記憶装置４ｃおよび記憶装置１４ｃのデバイス種別および素性能を確認する。デバイス種別は、例えば、ＳＳＤあるいはＨＤＤの区別を含む（Ｓ６０３）。記憶装置４ｃおよび記憶装置１４ｃに含まれる記憶装置の数がデバイスの種別毎および素性能毎に集計される（Ｓ６０４）。デバイス種別、素性能および記憶装置の数を基に各基準値の表が作成される。各基準値は、基準のブロックサイズ、ファイル増加率の基準値およびシステム負荷の基準値を含む。例えば、記憶装置のデバイスがＳＳＤの場合、ＨＤＤの場合よりも基準のブロックサイズとして小さい値が設定される。また、例えば、素性能の高いＨＤＤは素性能の低いＨＤＤよりも基準のブロックサイズとして大きい値が設定される（Ｓ６０５）。
【００６８】
以上で開示した実施形態や実施例はそれぞれ組み合わせる事ができる。
【００６９】
＜コンピュータが読み取り可能な記録媒体＞
コンピュータその他の機械、装置（以下、コンピュータ等）に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。そして、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
【００７０】
ここで、コンピュータ等が読み取り可能な記録媒体とは、データあるいはプログラム等
の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、ＣＤＲＯＭ、ＣＤ−Ｒ／Ｗ、ＤＶＤ、ブルーレイディスク、ＤＡＴ、８ｍｍテープ、フラッシュメモリなどのメモリカード等がある。また、コンピュータ等に固定された記録媒体としてハードディスクあるいはＲＯＭ（リードオンリーメモリ）等がある。
【００７１】
＜その他＞
以上の第１実施例〜第４実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
データの書き込みを要求された場合、第１の記憶装置に対して要求された書き込み対象のデータのうち、前記書き込み対象のデータのサイズを前記第１の記憶装置において読み書き処理が行われる第１の処理単位データのサイズで割った余りのデータを除いたデータの書き込みを行う第１の書き込み処理部と、
前記第１の書き込み処理部が書き込まなかった余りのデータを、前記第１の処理単位データのサイズよりも小さい第２の処理単位データのサイズが設定された第２の記憶装置に書き込みを行う第２の書き込み処理部と、を備える、
情報処理システム。
（付記２）
異なる処理単位データのサイズが設定されている複数の記憶装置から、前記処理単位データのサイズが前記書き込み対象のデータのサイズ以下である記憶装置を前記第１の記憶装置として特定する制御部をさらに備える、
付記１に記載の情報処理システム。
（付記３）
前記制御部は、前記第１の記憶装置および前記第２の記憶装置の負荷が基準値よりも高いと判断される場合、前記書き込み対象のデータを一時的記憶領域であるキャッシュ部に記憶する処理をさらに実行する、
付記２に記載の情報処理システム。
（付記４）
前記制御部は、前記書き込み対象のデータのサイズの単位時間当たりの増加量である増加率が基準値より高い場合、前記書き込み対象のデータを一時的記憶領域であるキャッシュ部に記憶する処理をさらに実行する、
付記２または付記３に記載の情報処理システム。
（付記５）
前記データの書き込み要求が既に前記第１の記憶装置、前記第２の記憶装置あるいは前記キャッシュ部に記憶されたデータに対する追記要求である場合、前記記憶されたデータを前記第１の記憶装置、前記第２の記憶装置および前記キャッシュ部から読み出し、前記追記要求されたデータと合わせて前記第１の書き込み処理部および前記第２の書き込み処理部に処理をさせる追記処理部をさらに備える、
付記１から付記４のいずれか一項に記載の情報処理システム。
（付記６）
コンピュータが、
データの書き込みを要求された場合、第１の記憶装置に対して要求された書き込み対象のデータのうち、前記書き込み対象のデータのサイズを前記第１の記憶装置において読み書き処理が行われる第１の処理単位データのサイズで割った余りのデータを除いたデータの書き込みを行う第１の書き込み処理ステップと、
前記第１の書き込み処理ステップが書き込まなかった余りのデータを、前記第１の処理単位データのサイズよりも小さい第２の処理単位データのサイズが設定された第２の記憶装置に書き込みを行う第２の書き込み処理ステップと、を実行する、
情報処理システムの制御方法。
（付記７）
異なる処理単位データのサイズが設定されている複数の記憶装置から、前記処理単位データのサイズが前記書き込み対象のデータのサイズ以下である記憶装置を前記第１の記憶装置として特定する制御ステップをさらに実行する、
付記６に記載の情報処理システムの制御方法。
（付記８）
前記制御ステップは、前記第１の記憶装置および前記第２の記憶装置の負荷が基準値よりも高いと判断される場合、前記書き込み対象のデータを一時的記憶領域であるキャッシュ部に記憶する処理をさらに含む、
付記７に記載の情報処理システムの制御方法。
（付記９）
前記制御ステップは、前記書き込み対象のデータのサイズの単位時間当たりの増加量である増加率が基準値より高い場合、前記書き込み対象のデータを一時的記憶領域であるキャッシュ部に記憶する処理をさらに含む、
付記７または付記８に記載の情報処理システムの制御方法。
（付記１０）
前記データの書き込み要求が既に前記第１の記憶装置、前記第２の記憶装置あるいは前記キャッシュ部に記憶されたデータに対する追記要求である場合、前記記憶されたデータを前記第１の記憶装置、前記第２の記憶装置および前記キャッシュ部から読み出し、前記追記要求されたデータと合わせて前記第１の書き込み処理ステップおよび前記第２の書き込み処理ステップに処理をさせる追記処理ステップをさらに備える、
付記６から付記９のいずれか一項に記載の情報処理システムの制御方法。
（付記１１）
コンピュータに、
データの書き込みを要求された場合、第１の記憶装置に対して要求された書き込み対象のデータのうち、前記書き込み対象のデータのサイズを前記第１の記憶装置において読み書き処理が行われる第１の処理単位データのサイズで割った余りのデータを除いたデータの書き込みを行う第１の書き込み処理ステップと、
前記第１の書き込み処理ステップが書き込まなかった余りのデータを、前記第１の処理単位データのサイズよりも小さい第２の処理単位データのサイズが設定された第２の記憶装置に書き込みを行う第２の書き込み処理ステップと、を実行させる、
情報処理装置の制御プログラム。
（付記１２）
異なる処理単位データのサイズが設定されている複数の記憶装置から、前記処理単位データのサイズが前記書き込み対象のデータのサイズ以下である記憶装置を前記第１の記憶装置として特定する制御ステップをさらに実行させる、
付記１１に記載の情報処理装置の制御プログラム。
（付記１３）
前記制御ステップは、前記第１の記憶装置および前記第２の記憶装置の負荷が基準値よりも高いと判断される場合、前記書き込み対象のデータを一時的記憶領域であるキャッシュ部に記憶する処理をさらに含む、
付記１２に記載の情報処理装置の制御プログラム。
（付記１４）
前記制御ステップは、前記書き込み対象のデータのサイズの単位時間当たりの増加量である増加率が基準値より高い場合、前記書き込み対象のデータを一時的記憶領域であるキャッシュ部に記憶する処理をさらに含む、
付記１２または付記１３に記載の情報処理装置の制御プログラム。
（付記１５）
前記データの書き込み要求が既に前記第１の記憶装置、前記第２の記憶装置あるいは前記キャッシュ部に記憶されたデータに対する追記要求である場合、前記記憶されたデータ
を前記第１の記憶装置、前記第２の記憶装置および前記キャッシュ部から読み出し、前記追記要求されたデータと合わせて前記第１の書き込み処理ステップおよび前記第２の書き込み処理ステップに処理をさせる追記処理ステップをさらに備える、
付記１３または付記１４に記載の情報処理装置の制御プログラム。
【符号の説明】
【００７２】
１・・・クライアント群
１ａ、３ａ、４ａ、１４ａ・・・ノード
１ｂ、３ｂ、４ｂ・・・ソフトウェア
２・・・サーバ群
３・・・メタデータボリューム群
３ｃ、４ｃ、１４ｃ・・・記憶装置
４・・・データボリューム群
５・・・ネットワーク環境
５０１・・・制御部
５０１ａ・・・追記部
５０２・・・キャッシュ部
５０３・・・管理部
５０４・・・第１書き込み処理部
５０５・・・第２書き込み処理部
５０６・・・第１記憶部
５０７・・・第２記憶部
【図１Ａ】
2015194922.tif 000003
【図１Ｂ】
2015194922.tif 000004
【図２】
2015194922.tif 000005
【図３】
2015194922.tif 000006
【図４】
2015194922.tif 000007
【図５】
2015194922.tif 000008
【図６】
2015194922.tif 000009
【図７】
2015194922.tif 000010
【図８】
2015194922.tif 000011