(57)【要約】【課題】ファイルを分散して記憶する装置において、消費電力を抑制することが難しい、という課題を解決すること。【解決手段】ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置であって、書き込み要求に応じて、当該書き込み要求が要求するデータを当該データの書き込み先のファイル中の位置に応じて複数の前記記憶装置のいずれかに書き込む処理、又は、読み込み要求に応じて当該読込要求が要求するデータを複数の記憶装置のいずれかから読み込む処理、の少なくとも一方を実行するファイルシステム制御手段を備え、ファイルシステム制御手段は、書き込み要求が書き込みを要求する書込要求データのファイル中の位置、又は、読み込み要求が読み込みを要求する読込要求データのファイル中の位置に応じて、記憶装置の起動状態を制御する。【選択図】図２
2018147341.tif 000002
【特許請求の範囲】
【請求項１】
ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置であって、
書き込み要求に応じて、当該書き込み要求が要求するデータの書き込み先のファイル中の位置に応じて複数の前記記憶装置のいずれかにデータを書き込む処理、又は、読み込み要求に応じて当該読み込み要求が要求するデータを複数の前記記憶装置のいずれかから読み込む処理、の少なくとも一方を実行するファイルシステム制御手段を備え、
前記ファイルシステム制御手段は、前記書き込み要求が書き込みを要求する書込要求データの前記ファイル中の位置、又は、前記読み込み要求が読み込みを要求する読込要求データの前記ファイル中の位置に応じて、前記記憶装置の起動状態を制御する
ファイル分散記憶装置。
【請求項２】
請求項１に記載のファイル分散記憶装置であって、
前記ファイルシステム制御手段は、前記書込要求データ又は前記読込要求データの前記ファイル中の位置と、予め定められた閾値と、に基づいて前記記憶装置を起動させる
ファイル分散記憶装置。
【請求項３】
請求項２に記載のファイル分散記憶装置であって、
前記ファイルシステム制御手段は、前記書込要求データ又は前記読込要求データの前記ファイル中の位置が前記閾値を超える場合に、新たな前記記憶装置を起動させる
ファイル分散記憶装置。
【請求項４】
請求項２又は３に記載のファイル分散記憶装置であって、
前記書込要求データの前記ファイル中の位置と比較する前記閾値である書込閾値と、前記読込要求データの前記ファイル中の位置と比較する前記閾値である読込閾値とは、異なる値を有している
ファイル分散記憶装置。
【請求項５】
請求項４に記載のファイル分散記憶装置であって、
前記読込閾値は前記書込閾値よりも小さな値を有している
ファイル分散記憶装置。
【請求項６】
請求項１乃至５のいずれかに記載のファイル分散記憶装置であって、
前記記憶装置のうちの少なくとも一つは常に起動した状態にあり、
前記ファイルシステム制御手段は、常に起動した状態にある前記記憶装置の空き容量が予め定められた空き容量閾値よりも少なくなった場合、新たな前記記憶装置を常に起動した状態となるよう制御する
ファイル分散記憶装置。
【請求項７】
請求項１乃至６のいずれかに記載のファイル分散記憶装置であって、
前記ファイルシステム制御手段は、前記記憶装置が記憶するファイルの状況と、予め定められたファイル傾向閾値と、に基づいて、前記記憶装置の起動状態を制御する
ファイル分散記憶装置。
【請求項８】
請求項７に記載のファイル分散記憶装置であって、
前記ファイルシステム制御手段は、前記記憶装置が記憶するファイル数に占めるファイルの大きさが予め定められた比較閾値を超えるファイル数の割合が予め定められたファイル傾向閾値以上である場合、新たな前記記憶装置を常に起動した状態となるよう制御する
ファイル分散管理装置。
【請求項９】
ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置に、
書き込み要求に応じて、当該書き込み要求が要求するデータを当該データの書き込み先のファイル中の位置に応じて複数の前記記憶装置のいずれかに書き込む処理、又は、読み込み要求に応じて当該読み込み要求が要求するデータを複数の前記記憶装置のいずれかから読み込む処理、の少なくとも一方を実行するファイルシステム制御手段を実現させ、
前記ファイルシステム制御手段は、前記書き込み要求が書き込みを要求する書込要求データの前記ファイル中の位置、又は、前記読み込み要求が読み込みを要求する読込要求データの前記ファイル中の位置に応じて、前記記憶装置の起動状態を制御する
プログラム。
【請求項１０】
ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置が、
書き込み要求に応じて、当該書き込み要求が要求するデータを当該データの書き込み先のファイル中の位置に応じて複数の前記記憶装置のいずれかに書き込む処理、又は、読み込み要求に応じて当該読み込み要求が要求するデータを複数の前記記憶装置のいずれかから読み込む処理、の少なくとも一方を実行し、
前記書き込み要求が書き込みを要求する書込要求データの前記ファイル中の位置、又は、前記読み込み要求が読み込みを要求する読込要求データの前記ファイル中の位置に応じて、前記記憶装置の起動状態を制御する
ファイル分散記憶方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイル分散記憶装置、プログラム、ファイル分散管理方法に関し、特に、ファイルを分散して管理するファイル分散記憶装置、プログラム、ファイル分散管理方法に関する。
【背景技術】
【０００２】
ファイルを複数のサーバやストレージ装置に分散して記憶する分散ファイルシステムが知られている。
【０００３】
このような分散ファイルシステムの一例として、例えば、特許文献１がある。特許文献１には、１つのファイルが１つのストレージサブシステムに格納される第１ファイル格納方式、又は、１つのファイルが複数のストレージサブシステムに格納される第２ファイル格納方式、のいずれかが適用されるファイル格納方法が記載されている。特許文献１によると、ファイルの利用状況に基づいて、ファイルの格納方式が変更される。このように構成することで、ファイルをストレージサブシステムに適切に格納することが可能となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１９１９１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１などのように１つのファイルがディスク装置に分散されて記憶されている場合、小サイズのＩ／Ｏのみが行われる場合でもあっても、ファイルのデータが各ディスク装置に分散しているために全てのディスク装置が起動状態になることがあった。その結果、ディスク装置の停止による消費電力の削減を難しくしていた。
【０００６】
このように、ファイルを分散して記憶する装置において、消費電力を抑制することが難しい、という問題が生じていた。
【０００７】
そこで、本発明の目的は、ファイルを分散して記憶する装置において、消費電力を抑制することが難しい、という問題を解決するファイル分散記憶装置、プログラム、ファイル分散記憶方法を提供することにある。
【課題を解決するための手段】
【０００８】
かかる目的を達成するため本発明の一形態であるファイル分散記憶装置は、
ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置であって、
書き込み要求に応じて、当該書き込み要求が要求するデータを当該データの書き込み先のファイル中の位置に応じて複数の前記記憶装置のいずれかに書き込む処理、又は、読み込み要求に応じて当該読込要求が要求するデータを複数の前記記憶装置のいずれかから読み込む処理、の少なくとも一方を実行するファイルシステム制御手段を備え、
前記ファイルシステム制御手段は、前記書き込み要求が書き込みを要求する書込要求データの前記ファイル中の位置、又は、前記読み込み要求が読み込みを要求する読込要求データの前記ファイル中の位置に応じて、前記記憶装置の起動状態を制御する
という構成を採る。
【０００９】
また、本発明の他の形態であるプログラムは、
ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置に、
書き込み要求に応じて、当該書き込み要求が要求するデータを当該データの書き込み先のファイル中の位置に応じて複数の前記記憶装置のいずれかに書き込む処理、又は、読み込み要求に応じて当該読込要求が要求するデータを複数の前記記憶装置のいずれかから読み込む処理、の少なくとも一方を実行するファイルシステム制御手段を実現させ、
前記ファイルシステム制御手段は、前記書き込み要求が書き込みを要求する書込要求データの前記ファイル中の位置、又は、前記読み込み要求が読み込みを要求する読込要求データの前記ファイル中の位置に応じて、前記記憶装置の起動状態を制御する
プログラムである。
【００１０】
また、本発明の他の形態であるファイル分散記憶方法は、
ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置が、
書き込み要求に応じて、当該書き込み要求が要求するデータを当該データの書き込み先のファイル中の位置に応じて複数の前記記憶装置のいずれかに書き込む処理、又は、読み込み要求に応じて当該読込要求が要求するデータを複数の前記記憶装置のいずれかから読み込む処理、の少なくとも一方を実行し、
前記書き込み要求が書き込みを要求する書込要求データの前記ファイル中の位置、又は、前記読み込み要求が読み込みを要求する読込要求データの前記ファイル中の位置に応じて、前記記憶装置の起動状態を制御する
という構成を採る。
【発明の効果】
【００１１】
本発明は、以上のように構成されることにより、ファイルを分散して記憶する装置において、消費電力を抑制することが難しい、という問題を解決するファイル分散記憶装置、プログラム、ファイル分散記憶方法を提供することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１の実施形態に係る分散並列ファイルシステムの全体の構成の一例を示す図である。
【図２】図１で示すサーバ装置の構成の一例を示すブロック図である。
【図３】図２で示す閾値管理テーブルの一例を示す図である。
【図４】図２で示すディスク稼動管理テーブルの一例を示す図である。
【図５】図１で示すストレージ装置の構成の一例を示すブロック図である。
【図６】サーバ装置を起動する際の処理の一例を示すフローチャートである。
【図７】サーバ装置が実ファイルを生成する際の処理の一例を示すフローチャートである。
【図８】サーバ装置がデータを書き込む際の処理の一例を示すフローチャートである。
【図９】サーバ装置がデータを読み込む際の処理の一例を示すフローチャートである。
【図１０】高速記憶領域に記憶したデータを実ファイル記憶領域に書き出す処理の一例を示すフローチャートである。
【図１１】実ファイル記憶領域の空き容量に応じて実ファイル記憶領域の稼動状態を制御する処理の一例を示すフローチャートである。
【図１２】統計情報に応じて実ファイル記憶領域の稼動状態を制御する処理の一例を示すフローチャートである。
【図１３】ファイルのサイズに応じて変化するＩ／Ｏ対象のディスクの一例を示す図である。
【図１４】本発明の第２の実施形態に係るファイル分散記憶装置の構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１３】
［第１の実施形態］
本発明の第１の実施形態を図１乃至図１３を参照して説明する。図１は、分散並列ファイルシステム１の全体の構成の一例を示す図である。図２は、サーバ装置３０の構成の一例を示すブロック図である。図３は、閾値管理テーブル３０３の一例を示す図である。図４は、ディスク稼動管理テーブル３０６の一例を示す図である。図５は、ストレージ装置４０の構成の一例を示すブロック図である。図６は、サーバ装置３０を起動する際の処理の一例を示すフローチャートである。図７は、サーバ装置３０が実ファイルを生成する際の処理の一例を示すフローチャートである。図８は、サーバ装置３０がデータを書き込む際の処理の一例を示すフローチャートである。図９は、サーバ装置３０がデータを読み込む際の処理の一例を示すフローチャートである。図１０は、高速記憶領域４０１に記憶したデータを実ファイル記憶領域（実ファイル記憶領域Ｂ４０４、実ファイル記憶領域Ｃ４０５）に書き出す処理の一例を示すフローチャートである。図１１は、実ファイル記憶領域（実ファイル記憶領域Ａ４０３や実ファイル記憶領域Ｂ４０４）の空き容量に応じて実ファイル記憶領域（実ファイル記憶領域Ｂ４０４、実ファイル記憶領域Ｃ４０５）の稼動状態を制御する処理の一例を示すフローチャートである。図１２は、統計情報に応じて実ファイル記憶領域（実ファイル記憶領域Ｂ４０４、実ファイル記憶領域Ｃ４０５）の稼動状態を制御する処理の一例を示すフローチャートである。図１３は、ファイルのサイズに応じて変化するＩ／Ｏ対象のディスクの一例を示す図である。
【００１４】
第１の実施形態では、ストレージ装置４０が有する複数のディスクにファイルを分散して記憶させる分散並列ファイルシステム１（分散ファイルシステム）について説明する。本実施形態におけるストレージ装置４０は、実ファイル記憶領域Ａ４０３に対応するディスクと、実ファイル記憶領域Ｂ４０４に対応するディスクと、実ファイル記憶領域Ｃ４０５に対応するディスクと、の３つのディスク装置を有している。後述するように、本実施形態におけるサーバ装置３０は、データの書き込み先のファイルオフセット（ファイル中の位置）に応じて、データを書き込む実ファイル記憶領域を特定する。換言すると、サーバ装置３０は、データの書き込み先のファイルオフセットに応じたディスクにデータを書き込む。また、サーバ装置３０は、書き込むデータや読み込むデータのファイルオフセットに応じて、ディスク（実ファイル記憶領域）の起動状態を制御する。このようにファイルオフセットに応じてディスクの起動状態を制御することで、書き込むデータや読み込むデータに対応するディスクを起動させるとともに、不要なディスクを停止させたままにすることが可能となる。
【００１５】
図１を参照すると、本実施形態における分散並列ファイルシステム１は、複数のクライアント装置１０（クライアント装置１０−１、１０−２、……、１０−ｎ。特に区別しない場合は、クライアント装置１０と表記する）と、複数のサーバ装置３０（サーバ装置３０−１、３０−２、……、３０−ｍ。特に区別しない場合は、サーバ装置３０と表記する）と、複数のストレージ装置４０（ストレージ装置４０−１、４０−２、……、４０−ｌ。特に区別しない場合は、ストレージ装置４０と表記する）と、を有している。
【００１６】
図１で示すように、クライアント装置１０とサーバ装置３０とは、ネットワーク２０を介して互いに通信可能に接続されている。クライアント装置１０とサーバ装置３０の間、及び、サーバ装置３０間は、ネットワーク２０を介して通信を行うことになる。また、サーバ装置３０には、１つ、又は、複数のストレージ装置４０が、互いに通信可能に接続されている。
【００１７】
なお、本実施形態においては、分散並列ファイルシステム１が有するクライアント装置１０の数やサーバ装置３０の数、ストレージ装置４０の数は特に限定しない。分散並列ファイルシステム１は、１つ、又は、複数（任意の数で構わない）のクライアント装置１０、サーバ装置３０、ストレージ装置４０を有することが出来る。
【００１８】
クライアント装置１０は、スマートフォンやタブレット、パーソナルコンピュータなどの情報処理装置である。クライアント装置１０は、分散並列ファイルシステム１のクライアントとして動作する。クライアント装置１０は、例えば、分散並列ファイルシステム１のサーバであるサーバ装置３０に対して並列に入出力を行う。クライアント装置１０がサーバ装置３０に送信する要求としては、例えば、実ファイルの作成を要求するファイル作成要求やファイルオフセットで指定する位置にデータの書き込みを要求するデータ書き込み要求、ファイルオフセットで指定する位置からデータの読み込みを要求するデータ読み込み要求、などがある。
【００１９】
サーバ装置３０は、クライアント装置１０から受信した要求に応じた処理を行う。図２を参照すると、サーバ装置３０は、例えば、ファイルシステム制御手段３０１と、実ファイル配置管理手段３０２（ファイルシステム制御手段３０１の一部）と、閾値管理テーブル３０３と、ディスク監視タイマー手段３０４と、ストレージ通信手段３０５と、ディスク稼動管理テーブル３０６と、ディスク操作手段３０７と、高速記憶領域監視手段３０８と、を有している。
【００２０】
なお、サーバ装置３０は、例えば、図示しない記憶装置と図示しない演算装置とを有しており、図示しない記憶装置に格納されたプログラムを演算装置が実行することで、上記各手段を実現する。
【００２１】
ファイルシステム制御手段３０１は、クライアント装置１０から要求があった場合に当該要求に応じた処理を行う。そして、ファイルシステム制御手段３０１は、要求に応じた処理の結果をクライアント装置１０に返却する。なお、ファイルシステム制御手段３０１がクライアント装置１０から受信する要求としては、例えば、ファイル作成要求、データ書き込み要求、データ読み込み要求、などがある。
【００２２】
例えば、ファイルシステム制御手段３０１は、クライアント装置１０からデータ書き込み要求を受信する。すると、ファイルシステム制御手段３０１は、データの書き込み先である対応する実ファイルの配置場所を実ファイル配置管理手段３０２に問い合わせる。その後、ファイルシステム制御手段３０１は、実ファイル配置管理手段３０２から問い合わせ結果を示す情報を受信する。そして、ファイルシステム制御手段３０１は、実ファイル配置管理手段３０２から返却された情報が示す領域にデータの書き込みを実行する。なお、後述するように、ファイルシステム制御手段３０１がデータの書き込みを実行する領域としては、例えば、高速記憶領域４０１、実ファイル記憶領域Ａ４０３、実ファイル記憶領域Ｂ４０４、実ファイル記憶領域Ｃ４０５などがある。
【００２３】
また、ファイルシステム制御手段３０１は、クライアント装置１０からデータ読み込み要求を受信する。すると、ファイルシステム制御手段３０１は、メタデータ記憶領域４０２に記憶されているメタデータを参照して、読み込む対象のデータが高速記憶領域４０１に記憶されているか否か確認する。そして、読み込む対象のデータが高速記憶領域４０１に記憶されている場合、ファイルシステム制御手段３０１は、高速記憶領域４０１からデータを読み込む。一方、読み込む対象のデータが高速記憶領域４０１に記憶されていない場合、ファイルシステム制御手段３０１は、ディスク起動判断を実ファイル配置管理手段３０２に問い合わせる。これに応じて、実ファイル配置管理手段３０２は、ディスク操作手段３０７を用いて必要なディスク（実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５）を起動させる。その後、ファイルシステム制御手段３０１は、要求に応じた位置からデータを読み込む。
【００２４】
また、ファイルシステム制御手段３０１は、クライアント装置１０からファイル作成要求を受信した際やデータ書き込み要求に応じて実ファイルの作成が必要になった際、実ファイル作成先のストレージ装置４０を決定する。そして、ファイルシステム制御手段３０１は、Ｉ／Ｏ（Input/Output）対象領域を実ファイル配置管理手段３０２に問い合わせる。その後、ファイルシステム制御手段３０１は、実ファイル配置管理手段３０２から問い合わせ結果を受信する。そして、ファイルシステム制御手段３０１は、返却された情報に基づいて、実ファイルを作成する実ファイル記憶領域を決定し、実ファイル作成処理を実行する。また、ファイルシステム制御手段３０１は、実ファイル作成先の実ファイル記憶領域（実ファイルの配置場所）をメタデータとしてメタデータ記憶領域４０２に記憶させる。
【００２５】
このように、ファイルシステム制御手段３０１は、クライアント装置１０から受信した要求に応じた処理を行う。
【００２６】
また、ファイルシステム制御手段３０１は、後述する高速記憶領域監視手段３０８による監視結果に基づいて、高速記憶領域４０１に記憶されたデータの実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５への書き出しを行う。例えば、ファイルシステム制御手段３０１は、高速記憶領域監視手段３０８から高速記憶領域４０１に書きこまれたデータサイズがディスク書き出し閾値（任意の値で構わない）を越えた旨の情報を受信すると、実ファイル配置管理手段３０２に対して、必要に応じて実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５を起動させるよう指示する。その後、ファイルシステム制御手段３０１は、データのファイルオフセットに応じて、起動した実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５に、高速記憶領域４０１からデータを書き出す。
【００２７】
また、ファイルシステム制御手段３０１は、サーバ装置３０の起動時に、予め作成された設定ファイルを読み込んで、読み込んだ設定ファイルに基づく各種設定を行う。例えば、ファイルシステム制御手段３０１は、読み込んだ設定ファイルに基づいて、高速記憶領域監視手段３０８にディスク書き出し閾値を設定する。また、ファイルシステム制御手段３０１は、読み込んだ設定ファイルに基づいて、ディスク監視タイマー手段３０４に実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５（つまり、ディスク）のディスク停止時間を設定する。また、ファイルシステム制御手段３０１は、読み込んだ設定ファイルに基づいて、閾値管理テーブル３０３に各閾値を設定する。さらに、ファイルシステム制御手段３０１は、閾値管理テーブル３０３に設定したディスク起動閾値に基づいて、実ファイル記憶領域の起動や停止をディスク操作手段３０７に要求する。
【００２８】
このように、ファイルシステム制御手段３０１は、サーバ装置３０の起動時に設定ファイルを読み込んで、必要となる各種処理を行う。なお、設定ファイルは、例えば、予め作成され、サーバ装置３０が有する図示しない記憶装置などに格納されている。設定ファイルには、例えば、ディスク停止時間、ディスク書き出し閾値、実ファイル記憶領域ごとのディスク起動閾値（読込閾値）、Ｉ／Ｏ対象閾値（書込閾値）、空き容量閾値、ファイル傾向閾値、などを示す情報が含まれている。ディスク停止時間は、実ファイル記憶領域ごとに異なっていても構わないし、各実ファイル記憶領域で共通であっても構わない。
【００２９】
また、ファイルシステム制御手段３０１は、常時起動状態にある実ファイル記憶領域にデータを書き込む際に、データを書き込んだ後の当該実ファイル記憶領域の空き容量を確認する。例えば、ファイルシステム制御手段３０１は、データ書き込み要求に応じて実ファイル記憶領域Ａ４０３にデータを書き込んだ後、実ファイル記憶領域Ａ４０３の空き容量を確認する。そして、実ファイル記憶領域Ａ４０３の空き容量が実ファイル記憶領域Ａ４０３に対応する空き容量閾値を下回った場合、次の記憶領域である実ファイル記憶領域Ｂ４０４のディスク起動閾値とＩ／Ｏ対象閾値を実ファイル記憶領域Ａ４０３と同じ値に書き換える。このように、ファイルシステム制御手段３０１は、実ファイル記憶領域の空き容量に応じて、閾値管理テーブル３０３のディスク起動閾値とＩ／Ｏ対象閾値を制御する。
【００３０】
さらに、ファイルシステム制御手段３０１は、サーバ装置３０直下のストレージ装置４０が記憶しているファイルのサイズや数を示す統計情報を取得する。そして、ファイルシステム制御手段３０１は、統計情報に応じて、記憶しているファイルの状況が予め定められた条件を満たす場合にディスク起動閾値を０に設定する。これにより、ファイルシステム制御手段３０１は、実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５の起動状態（つまり、ディスクの起動状態）を制御する。
【００３１】
なお、統計情報は、例えば、予め定められたファイルサイズごとのファイル数や記憶するファイル全体に占める割合などであっても構わない。ファイルシステム制御手段３０１は、例えば、ストレージ装置４０にファイルを記憶させる際に、当該記憶させるファイルのサイズを図示しない記憶装置などで管理しておくことで、上記統計情報を取得する。ファイルシステム制御手段３０１は、図示しないファイル統計情報取得装置などの外部装置から統計情報を取得しても構わない。
【００３２】
以上のように、ファイルシステム制御手段３０１は、クライアント装置１０から受信した要求に応じた処理を行ったり、高速記憶領域４０１に記憶させたデータの書き出しを行ったり、サーバ装置３０の起動時に必要となる各種処理を行ったり、実ファイル記憶領域の空き容量に応じた閾値の制御を行ったり、統計情報に基づく閾値の制御を行ったりする。このように、ファイルシステム制御手段３０１は、データの読み出し／書き出しや初期設定などサーバ装置３０のうちの全体的な処理を行う。
【００３３】
実ファイル配置管理手段３０２は、ファイルシステム制御手段３０１から受け取った問い合わせに応じた処理を実行する。実ファイル配置管理手段３０２がファイルシステム制御手段３０１から受信する問い合わせとしては、例えば、Ｉ／Ｏ対象領域の問い合わせ、実ファイル配置場所の問い合わせ、ディスク起動判断の問い合わせなどがある。また、実ファイル配置管理手段３０２は、ファイルシステム制御手段３０１からの指示に応じて、必要に応じてディスク操作手段３０７に指示することで、実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５を起動させる。
【００３４】
例えば、実ファイル配置管理手段３０２は、ファイルシステム制御手段３０１が実ファイルの作成を行う際に、ファイルシステム制御手段３０１からＩ／Ｏ対象領域の問い合わせを受信する。すると、実ファイル配置管理手段３０２は、作成する実ファイルのファイルサイズと閾値管理テーブル３０３に格納されたＩ／Ｏ対象閾値ＡやＩ／Ｏ対象閾値Ｂとを比較する。そして、実ファイル配置管理手段３０２は、比較結果に基づいて、Ｉ／Ｏ対象領域を決定する。その後、実ファイル配置管理手段３０２は、問い合わせ結果であるＩ／Ｏ対象領域をファイルシステム制御手段３０１に返却する。
【００３５】
また、実ファイル配置管理手段３０２は、ファイルシステム制御手段３０１が書き込み要求に応じた処理を行う際に、ファイルシステム制御手段３０１から実ファイル配置場所の問い合わせを受信する。すると、実ファイル配置管理手段３０２は、データ書き込み先のファイルオフセット（書き込むデータのファイルオフセット）と閾値管理テーブルに格納されたＩ／Ｏ対象閾値ＡやＩ／Ｏ対象閾値Ｂとを比較したり、高速記憶領域４０１の空き容量を確認したりする。そして、実ファイル配置管理手段３０２は、比較結果や確認結果に基づいて、データの書き込み先である実ファイルの配置場所を特定する。また、実ファイル配置管理手段３０２は、必要に応じて、ディスク操作手段３０７に指示して停止中のディスク（実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５）を起動させる。その後、実ファイル配置管理手段３０２は、問い合わせ結果である実ファイルの配置場所（領域）を示す情報をファイルシステム制御手段３０１に返却する。
【００３６】
また、実ファイル配置管理手段３０２は、ファイルシステム制御手段３０１が読み込み要求に応じた処理を行う際に、ファイルシステム制御手段３０１からディスク起動判断の問い合わせを受信する。すると、実ファイル配置管理手段３０２は、データ読み込み先のファイルオフセット（読み込むデータのファイルオフセット）と閾値管理テーブルに格納されたディスク起動閾値Ａやディスク起動閾値Ｂとを比較する。そして、実ファイル配置管理手段３０２は、比較結果に基づいて、ディスク操作手段３０７に指示して停止中のディスク（実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５）を起動させる。その後、実ファイル配置管理手段３０２は、ディスク起動判断の問い合わせに応じた処理が終了した旨をファイルシステム制御手段３０１に返却する。
【００３７】
このように、実ファイル配置管理手段３０２は、ファイルシステム制御手段３０１から受け取った問い合わせに応じた処理を実行する。なお、実ファイル配置管理手段３０２により行われる上記各処理の詳細は後述する。
【００３８】
閾値管理テーブル３０３は、実ファイル記憶領域Ａ４０３、実ファイル記憶領域Ｂ４０４、実ファイル記憶領域Ｃ４０５、のそれぞれについて、ディスク起動閾値やＩ／Ｏ対象閾値、空き容量閾値、ファイル傾向閾値のパラメータを有する。それぞれのパラメータは、例えば、サーバ装置３０を起動する際にファイルシステム制御手段３０１によって、予め入力された設定ファイルに基づいて設定される。換言すると、閾値管理テーブル３０３は、サーバ装置３０の起動時にファイルシステム制御手段３０１によって、実ファイル記憶領域ごとに設定ファイルに基づいて初期化される。
【００３９】
図３は、閾値管理テーブル３０３に格納される各パラメータの一例である。図３を参照すると、閾値管理テーブル３０３には、例えば、実ファイル記憶領域Ａ４０３に対応する閾値として、ディスク起動閾値「０」、Ｉ／Ｏ対象閾値「０」、空き容量閾値「空き容量閾値Ａ」、ファイル傾向閾値「０」が設定されている。また、閾値管理テーブル３０３には、例えば、実ファイル記憶領域Ｂ４０４に対応する閾値として、ディスク起動閾値「ディスク起動閾値Ａ」、Ｉ／Ｏ対象閾値「Ｉ／Ｏ対象閾値Ａ」、空き容量閾値「空き容量閾値Ｂ」、ファイル傾向閾値「ファイル傾向閾値Ａ」が設定されている。また、閾値管理テーブル３０３には、例えば、実ファイル記憶領域Ｃ４０５に対応する閾値として、ディスク起動閾値「ディスク起動閾値Ｂ」、Ｉ／Ｏ対象閾値「Ｉ／Ｏ対象閾値Ｂ」、空き容量閾値「０」、ファイル傾向閾値「ファイル傾向閾値Ｂ」が設定されている。
【００４０】
ディスク起動閾値（読込閾値）は、読み込み処理時に停止中のディスクを起動するためのパラメータである。実ファイル配置管理手段３０２は、記憶領域（実ファイル記憶領域Ａ４０３、実ファイル記憶領域Ｂ４０４、実ファイル記憶領域Ｃ４０５）からのデータ読み込み時に読み込むデータのファイルオフセットがディスク起動閾値を超えていた場合に、ディスク操作手段３０７を介して対応する実ファイル記憶領域を起動させることになる。
【００４１】
なお、図３の場合、ディスク起動閾値Ａとディスク起動閾値Ｂの値は任意の値で構わないが、ディスク起動閾値Ａの方がディスク起動閾値Ｂよりも小さな値となる。また、ディスク起動閾値をＩ／Ｏ対象閾値よりも小さい値にすることで、停止中のディスクにアクセスが来るまえに、次にＩ／Ｏするディスクを起動させることができる。従って、ディスク起動閾値はＩ／Ｏ対象閾値よりも小さい値であることが望ましい（つまり、ディスク起動閾値はＩ／Ｏ対象閾値と異なっていることが望ましい）。換言すると、ディスク起動閾値ＡはＩ／Ｏ対象閾値Ａよりも小さい値であることが望ましく、ディスク起動閾値ＢはＩ／Ｏ対象閾値Ｂよりも小さい値であることが望ましい。ディスク起動閾値が０である場合、対応する実ファイル記憶領域（ディスク）は常時起動の状態となる。例えば、図３の場合、実ファイル記憶領域Ａ４０３に対応するディスク起動閾値が「０」であるため、実ファイル記憶領域Ａ４０３は常に起動していることになる。
【００４２】
Ｉ／Ｏ対象閾値（書込閾値）は、対応する記憶領域をファイルのＩ／Ｏ対象にするか否かを判断するためのパラメータである。ファイルサイズがＩ／Ｏ対象閾値を超える場合に、当該記憶領域をＩ／Ｏ対象とすることになる。例えば、図３の場合、ファイルサイズがＩ／Ｏ対象閾値Ａを超えている場合、実ファイル記憶領域Ａ４０３と実ファイル記憶領域Ｂ４０４がＩ／Ｏ対象領域となる。また、ファイルサイズがＩ／Ｏ対象閾値Ａを超え、さらに、Ｉ／Ｏ対象閾値Ｂを超えている場合、実ファイル記憶領域Ａ４０３と実ファイル記憶領域Ｂ４０４と実ファイル記憶領域Ｃ４０５がＩ／Ｏ対象領域となる。なお、Ｉ／Ｏ対象閾値Ａの方がＩ／Ｏ対象閾値Ｂよりも小さな値となる。
【００４３】
このように、上記Ｉ／Ｏ対象閾値によると、ファイルサイズが大きいファイルほど多くの記憶領域を使用して性能を確保することができる。なお、Ｉ／Ｏ対象閾値として０が設定されている実ファイル記憶領域は、常にＩ／Ｏ対象となる。例えば、図３の場合、実ファイル記憶領域Ａ４０３は常にＩ／Ｏ対象となる。
【００４４】
空き容量閾値は対応する記憶領域の空き容量に合わせて、各ファイルサイズでＩ／Ｏ対象とする記憶領域を変更するためのパラメータである。対応する記憶領域の空き容量が空き容量閾値を下回った場合、次の記憶領域のディスク起動閾値とＩ／Ｏ対象閾値を対応する記憶領域の値と同じ値に書き換えることで、偏りによる空き容量の不足を解消する。
【００４５】
例えば、図３の場合、実ファイル記憶領域Ａ４０３の空き容量が空き容量閾値Ａを下回った場合、ファイルシステム制御手段３０１は、次の記憶領域である実ファイル記憶領域Ｂ４０４のディスク起動閾値とＩ／Ｏ対象閾値を実ファイル記憶領域Ａ４０３に対応する値と同じ値に書き換える。つまり、ファイルシステム制御手段３０１は、ディスク起動閾値ＡとＩ／Ｏ対象閾値Ａを「０」に書き換えることになる。また、その後、実ファイル記憶領域Ｂ４０４の空き容量が空き容量閾値Ｂを下回った場合、ファイルシステム制御手段３０１は、次の記憶領域である実ファイル記憶領域Ｃ４０５のディスク起動閾値とＩ／Ｏ対象閾値を「０」に書き換えることになる。
【００４６】
なお、空き容量閾値Ａの値と空き容量閾値Ｂの値は、任意に設定して構わない。空き容量閾値Ａの値は、例えば空き容量閾値Ｂよりも小さくなるなど、空き容量閾値Ｂと異なる値であっても構わないし、空き容量閾値Ｂと同じ値であっても構わない。
【００４７】
ファイル傾向閾値は、サーバ装置３０（自装置）と接続されたストレージ装置４０に記憶されるファイルのファイルサイズ傾向により常時起動するディスクを動的に変更するためのパラメータである。例えば、ファイルシステム制御手段３０１は、統計情報に基づいて、ストレージ装置４０に記憶される全てのファイルのうちファイルサイズがＩ／Ｏ対象閾値を超えるファイルの割合がファイル傾向閾値以上となると判断される場合、対応する実ファイル記憶領域のディスク起動閾値を０に設定する。これにより、対象の実ファイル記憶領域が常時起動するようにし、過度のディスク起動／停止が行われないようにする。なお、ファイルシステム制御手段３０１は、ストレージ装置４０に記憶される全てのファイルのうちファイルサイズがディスク起動閾値を超えるファイルの割合がファイル傾向閾値以上となるか否かに基づいて、対応する実ファイル記憶領域のディスク起動閾値を制御するよう構成しても構わない。
【００４８】
例えば、図３の場合、ファイルサイズがＩ／Ｏ対象閾値Ａを超えるファイル数の割合がファイル傾向閾値Ａ以上となった場合、ファイルシステム制御手段３０１は、対応する実ファイル記憶領域Ｂ４０４のディスク起動閾値を０に設定する。また、ファイルシステム制御手段３０１は、ファイルサイズがＩ／Ｏ対象閾値Ｂを超えるファイル数の割合がファイル傾向閾値Ｂ以上となった場合に、対応する実ファイル記憶領域Ｃ４０５のディスク起動閾値を０に設定することになる。
【００４９】
なお、ファイル傾向閾値Ａの値とファイル傾向閾値Ｂの値は、任意に設定して構わない。ファイル傾向閾値Ａの値は、例えばファイル傾向閾値Ｂよりも小さくなるなど、ファイル傾向閾値Ｂと異なる値であっても構わないし、ファイル傾向閾値Ｂと同じ値であっても構わない。
【００５０】
ディスク監視タイマー手段３０４は、実ファイル記憶領域（ディスク）を停止させるまでの時間をカウントする。そして、ディスク監視タイマー手段３０４は、タイマーが０になった場合にディスク操作手段３０７に対して当該ディスクの停止を指示する。
【００５１】
ディスク監視タイマー手段３０４は、ディスク起動閾値が０ではない実ファイル記憶領域ごとにタイマーを持つ。例えば、ディスク監視タイマー手段３０４は、実ファイル記憶領域Ｂ４０４用のタイマーと実ファイル記憶領域Ｃ４０５用のタイマーとを持つ。そして、ディスク監視タイマー手段３０４は、ディスク操作手段３０７がディスクの起動を実行した際、およびファイルシステム制御手段３０１が対応する実ファイル記憶領域にデータの書き込み／読み込みを行った際に、タイマーを設定する。換言すると、例えば、ディスク監視タイマー手段３０４は、ディスク操作手段３０７が実ファイル記憶領域Ｂ４０４を起動した際に当該実ファイル記憶領域Ｂ４０４に対応するタイマーの残り時間を予め定められたディスク停止時間に設定する。また、例えば、ディスク監視タイマー手段３０４は、ファイルシステム制御手段３０１が実ファイル記憶領域Ｂ４０４にデータを書き込んだ際や実ファイル記憶領域Ｂ４０４からデータを読み込んだ際に、当該実ファイル記憶領域Ｂ４０４に対応するタイマーの残り時間を予め定められたディスク停止時間に設定する。なお、既にタイマー設定済みでカウント中だった場合、ディスク監視タイマー手段３０４は再度タイマーの設定をしなおす。つまり、ディスク監視タイマー手段３０４は、対応するタイマーの残り時間を予め定められたディスク停止時間に設定する。タイマーに設定する値であるディスク停止時間は、システム起動時にファイルシステム制御手段３０１によって設定ファイルを入力として設定される。
【００５２】
ストレージ通信手段３０５は、自装置であるサーバ装置３０と接続されているストレージ装置４０との通信を行う。
【００５３】
ディスク稼動管理テーブル３０６は、実ファイル記憶領域Ａ４０３、実ファイル記憶領域Ｂ４０４、実ファイル記憶領域Ｃ４０５について、ディスクの稼動状態をパラメータとして有する。ディスク操作手段３０７は、当該ディスク操作手段３０７がディスクを起動／停止した際に、ディスクの稼動状態（「起動」、「停止」）を登録する。なお、ディスク操作手段３０７は、ディスクを起動させた場合、ディスク監視タイマー手段３０４に当該起動させた実ファイル記憶領域のタイマーを設定することになる。
【００５４】
図４は、ディスク稼動管理テーブル３０６に格納されるパラメータの一例である。図４を参照すると、ディスク稼動管理テーブル３０６には、例えば、実ファイル記憶領域Ａ４０３に対応する閾値として、稼動状態「起動」が設定されている。また、ディスク稼動管理テーブル３０６には、例えば、実ファイル記憶領域Ｂ４０４に対応する閾値として、稼動状態「停止」が設定されている。また、ディスク稼動管理テーブル３０６には、例えば、実ファイル記憶領域Ｃ４０５に対応する閾値として、稼動状態「停止」が設定されている。従って、図４で示す場合、実ファイル記憶領域Ａ４０３が起動している一方で、実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５は停止していることが分かる。
【００５５】
ディスク操作手段３０７は実ファイル配置管理手段３０２から要求を受け取り、ストレージ通信手段３０５を利用して、要求に応じたディスクの起動、又は、停止を行う。また、ディスク操作手段３０７は、操作後のディスクの稼動状況をディスク稼動管理テーブル３０６に登録して反映する。
【００５６】
高速記憶領域監視手段３０８はファイルシステム制御手段３０１を介して一定時間間隔（任意の間隔で構わない）で高速記憶領域４０１に書き込まれたデータサイズを監視する。高速記憶領域監視手段３０８は、高速記憶領域４０１に書きこまれたデータサイズがディスク書き出し閾値を越えた場合、高速記憶領域４０１に書き込まれたデータを実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５に書き込むようにファイルシステム制御手段３０１に指示する。上述したように、ディスク書き出し閾値はシステム起動時にファイルシステム制御手段３０１によって設定ファイルを入力として設定される。
【００５７】
以上が、サーバ装置３０の構成の一例である。
【００５８】
ストレージ装置４０は、サーバ装置３０からの制御に基づいて、データを記憶する。図５を参照すると、ストレージ装置４０は、例えば、高速記憶領域４０１と、メタデータ記憶領域４０２と、実ファイル記憶領域Ａ４０３と、実ファイル記憶領域Ｂ４０４と、実ファイル記憶領域Ｃ４０５と、を有している。なお、上述したように、実ファイル記憶領域Ａ４０３と、実ファイル記憶領域Ｂ４０４と、実ファイル記憶領域Ｃ４０５とは、それぞれがディスクと対応している。
【００５９】
高速記憶領域４０１は、メモリなどの記憶装置である。高速記憶領域４０１は、例えば、実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５にデータを書き込む際に、ディスク起動時間を隠蔽するための一時バッファとして利用する。
【００６０】
上述したように、高速記憶領域４０１の使用量は高速記憶領域監視手段３０８により監視される。高速記憶領域４０１の使用容量がディスク書き出し閾値を超えた場合、ファイルシステム制御手段３０１は、当該高速記憶領域４０１が記憶するデータを実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５に書き出すことになる。なお、ファイルシステム制御手段３０１は、書き出しに成功した場合、高速記憶領域４０１にある対応するデータを削除する。
【００６１】
メタデータ記憶領域４０２は、ファイルシステム制御手段３０１で管理するファイルのメタデータ情報を格納する。メタデータ情報には、実ファイルがどの領域に配置されているかの情報が含まれている。
【００６２】
実ファイル記憶領域Ａ４０３は、分割された実ファイル（データ）を格納するディスク装置である。実ファイル記憶領域Ａ４０３は、サーバ起動時にディスク操作手段３０７により起動される。本実施形態の場合、実ファイル記憶領域Ａ４０３は、常時起動状態となる。
【００６３】
実ファイル記憶領域Ｂ４０４、実ファイル記憶領域Ｃ４０５は、分割された実ファイル（データ）を格納するディスク装置である。実ファイル記憶領域Ｂ４０４、実ファイル記憶領域Ｃ４０５は、ディスク操作手段３０７からの指示に基づいて、起動したり停止したりする。実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５の稼動状況は、ディスク稼動管理テーブル３０６で管理される。
【００６４】
以上が、ストレージ装置４０の構成の一例である。
【００６５】
続いて、図６乃至図１２を参照して、サーバ装置３０やストレージ装置４０で行われる処理の一例について説明する。まず、図６を参照して、サーバ装置３０を起動する際の処理（初期化処理）の一例について説明する。
【００６６】
図６を参照すると、ステップＳ１０１にてサーバ装置３０が起動されると、ファイルシステム制御手段３０１が起動する。すると、起動したファイルシステム制御手段３０１は、予め作成された設定ファイルを読み込む（ステップＳ１０２）。
【００６７】
ファイルシステム制御手段３０１は、読み込んだ設定ファイルを入力として、高速記憶領域監視手段３０８にディスク書き出し閾値を設定する（ステップＳ１０３）。また、ファイルシステム制御手段３０１は、読み込んだ設定ファイルを入力として、ディスク監視タイマー手段３０４に実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５のディスク停止時間を設定する（ステップＳ１０４）。また、ファイルシステム制御手段３０１は、読み込んだ設定ファイルを入力として、閾値管理テーブル３０３に各閾値を設定する（ステップＳ１０５）。なお、ステップＳ１０３の処理、ステップＳ１０４の処理、ステップＳ１０５の処理は、順不同である。例えば、ステップＳ１０３の処理の前にステップＳ１０４の処理やステップＳ１０５の処理が行われても構わない。
【００６８】
ステップＳ１０５の処理の後、ファイルシステム制御手段３０１は、閾値管理テーブル３０３に設定した値を確認する。そして、ファイルシステム制御手段３０１は、ディスク起動閾値が０となっている実ファイル記憶領域について、ディスク操作手段３０７にディスクの起動を要求する（ステップＳ１０６）。また、ファイルシステム制御手段３０１は、ディスク起動閾値が０となっていない実ファイル記憶領域について、ディスク操作手段３０７にディスクの停止を要求する（ステップＳ１０６）。例えば、閾値管理テーブル３０３が図３で示すような場合、ファイルシステム制御手段３０１は、実ファイル記憶領域Ａ４０３についてディスク操作手段３０７にディスクの起動を要求する一方で、実ファイル記憶領域Ｂ４０４、実ファイル記憶領域Ｃ４０５についてディスク操作手段３０７にディスクの停止を要求する。
【００６９】
以上が、サーバ装置３０の初期化処理の一例である。続いて、図７を参照して、クライアント装置１０からのファイル作成要求やデータ書き込み要求で新たに実ファイルを作成する場合の、Ｉ／Ｏ対象領域の判断処理の一例について説明する。
【００７０】
図７を参照すると、新たな実ファイルを作成する場合、ファイルシステム制御手段３０１は、実ファイル作成先のストレージ装置４０を決定する（ステップＳ２０１）。なお、本実施形態においては、実ファイル作成先のストレージ装置４０の決定方法については、特に限定しない。ファイルシステム制御手段３０１は、例えば、ストレージ装置４０の空き容量に基づいて実ファイル作成先のストレージ装置４０を決定するなど、様々な方法を用いて実ファイル作成先のストレージ装置４０を決定することが出来る。その後、ファイルシステム制御手段３０１は、実ファイル配置管理手段３０２に対して、Ｉ／Ｏ対象となる実ファイル記憶領域を問い合わせる（ステップＳ２０２）。換言すると、ファイルシステム制御手段３０１は、実ファイル配置管理手段３０２に対して、Ｉ／Ｏ対象領域を問い合わせる。
【００７１】
Ｉ／Ｏ対象領域の問い合わせを受信すると、実ファイル配置管理手段３０２は、閾値管理テーブル３０３を参照して、作成する実ファイルのファイルサイズがＩ／Ｏ対象閾値Ａを超えるか否か確認する（ステップＳ２０３）。ファイルサイズがＩ／Ｏ対象閾値Ａを超える場合（ステップＳ２０３、Ｙｅｓ）、実ファイル配置管理手段３０２は、実ファイル記憶領域Ｂ４０４をＩ／Ｏ対象とする。つまり、Ｉ／Ｏ対象領域に実ファイル記憶領域Ｂ４０４を追加する（ステップＳ２０７）。さらに、実ファイル配置管理手段３０２は、作成する実ファイルのファイルサイズがＩ／Ｏ対象閾値Ｂを超えるか否か確認する（ステップＳ２０８）。ファイルサイズがＩ／Ｏ対象閾値Ｂを超える場合（ステップＳ２０８、Ｙｅｓ）、実ファイル配置管理手段３０２は、実ファイル記憶領域Ｃ４０５をＩ／Ｏ対象とする。つまり、Ｉ／Ｏ対象領域に実ファイル記憶領域Ｃ４０５を追加する（ステップＳ２０９）。
【００７２】
ファイルサイズがＩ／Ｏ対象閾値Ａ以下である場合（ステップＳ２０３、Ｎｏ）、又は、ファイルサイズがＩ／Ｏ対象閾値Ｂ以下である場合（ステップＳ２０８、Ｎｏ）、又は、ステップＳ２０９の処理の後、実ファイル配置管理手段３０２は、Ｉ／Ｏ対象領域をファイルシステム制御手段３０１に返却する（ステップＳ２０４）。換言すると、実ファイル配置管理手段３０２は、ファイルサイズがＩ／Ｏ対象閾値Ａ以下である場合、実ファイル記憶領域Ａ４０３をＩ／Ｏ対象とする旨の情報をファイルシステム制御手段３０１に返却する。また、実ファイル配置管理手段３０２は、ファイルサイズがＩ／Ｏ対象閾値Ａを超え、かつ、Ｉ／Ｏ対象閾値Ｂ以下である場合、実ファイル記憶領域Ａ４０３、実ファイル記憶領域Ｂ４０４をＩ／Ｏ対象とする旨の情報をファイルシステム制御手段３０１に返却する。また、実ファイル配置管理手段３０２は、ファイルサイズがＩ／Ｏ対象閾値Ｂを超える場合、実ファイル記憶領域Ａ４０３、実ファイル記憶領域Ｂ４０４、実ファイル記憶領域Ｃ４０５をＩ／Ｏ対象とする旨の情報をファイルシステム制御手段３０１に返却する。
【００７３】
ファイルシステム制御手段３０１は、実ファイル配置管理手段３０２から受信した情報に基づいて、実ファイルを作成する実ファイル記憶領域を決定する（ステップＳ２０５）。例えば、ファイルシステム制御手段３０１は、実ファイル配置管理手段３０２から実ファイル記憶領域Ａ４０３をＩ／Ｏ対象とする旨の情報を受信した場合、実ファイルを作成する実ファイル記憶領域が実ファイル記憶領域Ａ４０３であることを決定する。
【００７４】
ファイルシステム制御手段３０１は、決定した実ファイル記憶領域に実ファイル作成処理を実行する（ステップＳ２０６）。その後、ファイルシステム制御手段３０１は、実ファイルを作成した作成先の実ファイル記憶領域をメタデータに登録して処理を終了する。
【００７５】
以上が、実ファイルを作成する際の処理の一例である。続いて、図８を参照して、クライアント装置１０からデータ書き込み要求を受信した際の処理の一例について説明する。
【００７６】
図８を参照すると、ファイルシステム制御手段３０１は、データの書き込み要求を受信する。すると、ファイルシステム制御手段３０１は、メタデータ記憶領域４０２が記憶するメタデータを参照して、実ファイルの作成が必要か否かを確認する（ステップＳ３０１）。実ファイルの作成が必要な場合（ステップＳ３０１、Ｙｅｓ）、ファイルシステム制御手段３０１は、実ファイル作成処理を実行する（ステップＳ３０２）。なお、実ファイル作成処理は図７を参照して既に説明したため、その詳細は省略する。
【００７７】
実ファイルの作成が必要でない場合（ステップＳ３０１、Ｎｏ）、又は、実ファイルの作成後、ファイルシステム制御手段３０１は、実ファイル配置管理手段３０２に実ファイル配置場所を問い合わせる（ステップＳ３０３）。
【００７８】
実ファイル配置場所の問い合わせを受信すると、実ファイル配置管理手段３０２は、データの書き込み先のファイルオフセットが閾値管理テーブル３０３に登録されているＩ／Ｏ対象閾値Ａを超えるかを確認する（ステップＳ３０４）。
【００７９】
データの書き込み先のファイルオフセットが閾値管理テーブル３０３に登録されているＩ／Ｏ対象閾値Ａ以下である場合（ステップＳ３０４、Ｎｏ）、実ファイル配置管理手段３０２は、データの書き込み先が実ファイル記憶領域Ａ４０３である旨を示す情報をファイルシステム制御手段３０１に返却する。これにより、ファイルシステム制御手段３０１は、実ファイル記憶領域Ａ４０３にデータを書き込み、処理を終了する（ステップＳ３０５）。
【００８０】
一方、ファイルオフセットがＩ／Ｏ対象閾値Ａを超える場合（ステップＳ３０４、Ｙｅｓ）、実ファイル配置管理手段３０２は、高速記憶領域４０１の容量に十分な空きがあるか否か確認する（ステップＳ３０６）。なお、実ファイル配置管理手段３０２は、例えば、予め定められた閾値と高速記憶領域４０１の空き容量とを比較することで、高速記憶領域４０１の容量に十分な空きがあるか否か確認する。どの程度の空き容量で十分な空き容量と判断するか（つまり、閾値の値）は、任意に設定して構わない。
【００８１】
高速記憶領域４０１の容量に十分な空きがある場合（ステップＳ３０６、Ｙｅｓ）、実ファイル配置管理手段３０２は、データの書き込み先が高速記憶領域４０１である旨を示す情報をファイルシステム制御手段３０１に返却する。これにより、ファイルシステム制御手段３０１は、高速記憶領域４０１にデータを書き込み、処理を終了する（ステップＳ３０７）。一方、高速記憶領域４０１の容量に十分な空きがない場合（ステップＳ３０６、Ｎｏ）、実ファイル配置管理手段３０２は、ファイルオフセットがＩ／Ｏ対象閾値Ｂを超えるか確認する（ステップＳ３０８）。
【００８２】
ファイルオフセットがＩ／Ｏ対象閾値Ｂ以下である場合（ステップＳ３０８、Ｎｏ）、実ファイル配置管理手段３０２は、ディスク稼動管理テーブル３０６を参照して実ファイル記憶領域Ｂ４０４が停止中か否か確認する（ステップＳ３０９）。そして、実ファイル記憶領域Ｂ４０４が停止中の場合（ステップＳ３０９、Ｙｅｓ）、実ファイル配置管理手段３０２は、実ファイル記憶領域Ｂ４０４の起動要求をディスク操作手段３０７に出す。これにより、ディスク操作手段３０７は、実ファイル記憶領域Ｂ４０４を起動させる（ステップＳ３１１）。ステップＳ３１１の処理の後、又は、実ファイル記憶領域Ｂ４０４が停止中でなかった場合（ステップＳ３０９、Ｎｏ）、実ファイル配置管理手段３０２は、データの書き込み先が実ファイル記憶領域Ｂ４０４である旨を示す情報をファイルシステム制御手段３０１に返却する。これにより、ファイルシステム制御手段３０１は、実ファイル記憶領域Ｂ４０４にデータを書き込む（ステップＳ３１０）。また、ファイルシステム制御手段３０１は、ディスク監視タイマー手段３０４に実ファイル記憶領域Ｂ４０４のタイマー設定を要求する。その後、ファイルシステム制御手段３０１は処理を終了する。
【００８３】
一方で、ファイルオフセットがＩ／Ｏ対象閾値Ｂを超える場合（ステップＳ３０８、Ｙｅｓ）、実ファイル配置管理手段３０２は、ディスク稼動管理テーブル３０６を参照して実ファイル記憶領域Ｃ４０５が停止中か否か確認する（ステップＳ３１２）。そして、実ファイル記憶領域Ｃ４０５が停止中の場合（ステップＳ３１２、Ｙｅｓ）、実ファイル配置管理手段３０２は、実ファイル記憶領域Ｃ４０５の起動要求をディスク操作手段３０７に出す。これにより、ディスク操作手段３０７は、実ファイル記憶領域Ｃ４０５を起動させる（ステップＳ３１４）。ステップＳ３１４の処理の後、又は、実ファイル記憶領域Ｃ４０５が停止中でなかった場合（ステップＳ３１２、Ｎｏ）、実ファイル配置管理手段３０２は、データの書き込み先が実ファイル記憶領域Ｃ４０５である旨を示す情報をファイルシステム制御手段３０１に返却する。これにより、ファイルシステム制御手段３０１は、実ファイル記憶領域Ｃ４０５にデータを書き込む（ステップＳ３１０）。また、ファイルシステム制御手段３０１は、ディスク監視タイマー手段３０４に実ファイル記憶領域Ｃ４０５のタイマー設定を要求する。その後、ファイルシステム制御手段３０１は処理を終了する。
【００８４】
以上が、クライアント装置１０からデータ書き込み要求を受信した際の処理の一例である。続いて、図９を参照して、クライアント装置１０からデータ読み込み要求を受信した際の処理の一例について説明する。
【００８５】
図９を参照すると、ファイルシステム制御手段３０１は、データの読み込み要求を受信する。すると、ファイルシステム制御手段３０１は、メタデータ記憶領域４０２が記憶するメタデータを参照して、読み込み対象のデータが高速記憶領域４０１に記憶されているか否かを確認する（ステップＳ４０１）。
【００８６】
読み込み対象のデータが高速記憶領域４０１に記憶されている場合（ステップＳ４０１、Ｙｅｓ）、ファイルシステム制御手段３０１は、高速記憶領域４０１からデータを読み込み、処理を終了する（ステップＳ４０２）。一方、読み込み対象のデータが高速記憶領域４０１に記憶されていない場合（ステップＳ４０１、Ｎｏ）、ファイルシステム制御手段３０１は、実ファイル配置管理手段３０２にディスク起動判断を問い合わせる（ステップＳ４０３）。
【００８７】
ディスク起動判断の問い合わせを受信すると、実ファイル配置管理手段３０２は、データの読み込み先のファイルオフセットが閾値管理テーブル３０３に登録されているディスク起動閾値Ａを超えるか否か確認する（ステップＳ４０４）。
【００８８】
ファイルオフセットがディスク起動閾値Ａを超える場合（ステップＳ４０４、Ｙｅｓ）、実ファイル配置管理手段３０２は、ディスク稼動管理テーブル３０６を参照して実ファイル記憶領域Ｂ４０４が停止中か否か確認する（ステップＳ４０６）。そして、実ファイル記憶領域Ｂ４０４が停止中の場合（ステップＳ４０６、Ｙｅｓ）、実ファイル配置管理手段３０２は、実ファイル記憶領域Ｂ４０４の起動要求をディスク操作手段３０７に出す。これにより、ディスク操作手段３０７は、実ファイル記憶領域Ｂ４０４を起動させる（ステップＳ４０８）。
【００８９】
ステップＳ４０８の処理の後、又は、実ファイル記憶領域Ｂ４０４が停止中でなかった場合（ステップＳ４０６、Ｎｏ）、実ファイル配置管理手段３０２は、データの読み込み先のファイルオフセットがディスク起動閾値Ｂを超えるか否か確認する（ステップＳ４０７）。
【００９０】
ファイルオフセットがディスク起動閾値Ｂを超える場合（ステップＳ４０７、Ｙｅｓ）、実ファイル配置管理手段３０２は、ディスク稼動管理テーブル３０６を参照して実ファイル記憶領域Ｃ４０５が停止中か否か確認する（ステップＳ４０９）。そして、実ファイル記憶領域Ｃ４０５が停止中の場合（ステップＳ４０９、Ｙｅｓ）、実ファイル配置管理手段３０２は、実ファイル記憶領域Ｃ４０５の起動要求をディスク操作手段３０７に出す。これにより、ディスク操作手段３０７は、実ファイル記憶領域Ｃ４０５を起動させる（ステップＳ４１０）。
【００９１】
ステップＳ４１０の処理の後、又は、ファイルオフセットがディスク起動閾値Ｂ以下であった場合（ステップＳ４０７、Ｎｏ）、又は、ファイルオフセットがディスク起動閾値Ａ以下であった場合（ステップＳ４０４、Ｎｏ）、実ファイル配置管理手段３０２は、ディスク起動判断の問い合わせに応じた処理が終了した旨をファイルシステム制御手段３０１に返却する。
【００９２】
ファイルシステム制御手段３０１は、読み込み要求のあったデータを、当該読み込み要求が示す記憶領域から読み込む（ステップＳ４０５）。その後、ファイルシステム制御手段３０１は、ディスク監視タイマー手段３０４にタイマー設定を要求して処理を終了する。
【００９３】
以上が、クライアント装置１０からデータ読み込み要求を受信した際の処理の一例である。続いて、図１０を参照して、高速記憶領域４０１に書き込んだデータを実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５に書き出す処理の一例について説明する。
【００９４】
図１０を参照すると、高速記憶領域監視手段３０８は、例えば予め定められた間隔で高速記憶領域４０１に書き込んだデータサイズを監視する（ステップＳ５０１）。なお、高速記憶領域監視手段３０８が高速記憶領域４０１を監視するタイミングは任意に設定して構わない。
【００９５】
高速記憶領域４０１に書き込んだデータサイズがデータ書き出し閾値（任意の値で構わない）を超過すると（ステップＳ５０１、Ｙｅｓ）、高速記憶領域監視手段３０８は、高速記憶領域４０１に書き込まれたデータを実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５に書き込むようにファイルシステム制御手段３０１に指示する。
【００９６】
上記指示を受信すると、ファイルシステム制御手段３０１は、実ファイル配置管理手段３０２に対して必要に応じて実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５を起動させるよう指示する。すると、実ファイル配置管理手段３０２は、ディスク稼動管理テーブル３０６を参照して実ファイル記憶領域Ｂ４０４が停止中か否か確認する（ステップＳ５０２）。そして、実ファイル記憶領域Ｂ４０４が停止中の場合（ステップＳ５０２、Ｙｅｓ）、実ファイル配置管理手段３０２は、実ファイル記憶領域Ｂ４０４の起動要求をディスク操作手段３０７に出す。これにより、ディスク操作手段３０７は、実ファイル記憶領域Ｂ４０４を起動させる（ステップＳ５０５）。
【００９７】
ステップＳ５０５の処理の後、又は、実ファイル記憶領域Ｂ４０４が停止中でなかった場合（ステップＳ５０２、Ｎｏ）、実ファイル配置管理手段３０２は、高速記憶領域４０１に記憶されているデータにファイルオフセットが閾値管理テーブル３０３に登録されているＩ／Ｏ対象閾値Ｂを超えるデータが存在するか否か確認する（ステップＳ５０３）。
【００９８】
ファイルオフセットがＩ／Ｏ対象閾値Ｂを超えるデータが存在する場合（ステップＳ５０３、Ｙｅｓ）、実ファイル配置管理手段３０２は、ディスク稼動管理テーブル３０６を参照して実ファイル記憶領域Ｃ４０５が停止中か否か確認する（ステップＳ５０６）。そして、実ファイル記憶領域Ｃ４０５が停止中の場合（ステップＳ５０６、Ｙｅｓ）、実ファイル配置管理手段３０２は、実ファイル記憶領域Ｃ４０５の起動要求をディスク操作手段３０７に出す。これにより、ディスク操作手段３０７は、実ファイル記憶領域Ｃ４０５を起動させる（ステップＳ５０７）。
【００９９】
ステップＳ５０７の処理の後、又は、実ファイル記憶領域Ｃ４０５が停止中でなかった場合（ステップＳ５０６、Ｎｏ）、又は、ファイルオフセットがＩ／Ｏ対象閾値Ｂを超えるデータが存在しなかった場合（ステップＳ５０３、Ｎｏ）、実ファイル配置管理手段３０２は、指示に応じた処理が終了した旨をファイルシステム制御手段３０１に返却する。
【０１００】
ファイルシステム制御手段３０１は、ファイルオフセットに応じた領域にデータを書き出す（ステップＳ５０４）。例えば、ファイルオフセットがＩ／Ｏ対象閾値Ｂを超えるデータが存在していなかった場合、ファイルシステム制御手段３０１は、高速記憶領域４０１から実ファイル記憶領域Ｂ４０４にデータを書き出す。また、ファイルシステム制御手段３０１は、ディスク監視タイマー手段３０４に実ファイル記憶領域Ｂ４０４のタイマー設定を要求する。その後、ファイルシステム制御手段３０１は処理を終了する。また、例えば、ファイルオフセットがＩ／Ｏ対象閾値Ｂを超えるデータが存在している場合、ファイルシステム制御手段３０１は、データのファイルオフセットに応じて、高速記憶領域４０１から実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５にデータを書き出す。また、ファイルシステム制御手段３０１は、ディスク監視タイマー手段３０４に実ファイル記憶領域Ｂ４０４と実ファイル記憶領域Ｃ４０５のタイマー設定を要求する。その後、ファイルシステム制御手段３０１は処理を終了する。
【０１０１】
以上が、高速記憶領域４０１に書き込んだデータを実ファイル記憶領域Ｂ４０４や実ファイル記憶領域Ｃ４０５に書き出す処理の一例である。続いて、図１１を参照して、実ファイル記憶領域の空き容量に応じてディスク起動閾値やＩ／Ｏ対象閾値を制御する処理の一例について説明する。ディスクの空き容量が減ってきた場合にファイルサイズごとのＩ／Ｏ対象領域を変更することで、ひとつの記憶領域の空きがなくなる前に領域を拡張することが出来る。
【０１０２】
図１１を参照すると、実ファイル記憶領域Ａ４０３に書き込みを行った場合、ファイルシステム制御手段３０１は、実ファイル記憶領域Ａ４０３の空き容量が閾値管理テーブル３０３に登録されている空き容量閾値Ａ以上あるか否か確認する（ステップＳ６０１）。
【０１０３】
実ファイル記憶領域Ａ４０３の空き容量が空き容量閾値Ａ以上ある場合（ステップＳ６０１、Ｙｅｓ）、ファイルシステム制御手段３０１は、処理を終了する。一方、実ファイル記憶領域Ａ４０３の空き容量が空き容量閾値Ａ未満の場合（ステップＳ６０１、Ｎｏ）、ファイルシステム制御手段３０１は、閾値管理テーブル３０３に登録されている実ファイル記憶領域Ｂ４０４に対応するディスク起動閾値を「０」に設定する。つまり、ファイルシステム制御手段３０１は、ディスク起動閾値Ａの値を「０」に設定する（ステップＳ６０２）。また、ファイルシステム制御手段３０１は、閾値管理テーブル３０３に登録されている実ファイル記憶領域Ｂ４０４に対応するＩ／Ｏ対象閾値を「０」に設定する。つまり、ファイルシステム制御手段３０１は、Ｉ／Ｏ対象閾値Ａの値を「０」に設定する（ステップＳ６０３）。
【０１０４】
ファイルシステム制御手段３０１は、実ファイル記憶領域Ｂ４０４の空き容量が閾値管理テーブル３０３に登録されている空き容量閾値Ｂ以上あるか否か確認する（ステップＳ６０４）。なお、既に実ファイル記憶領域Ｂ４０４が常時起動状態にある場合、ファイルシステム制御手段３０１は、ステップＳ６０４の処理から処理を開始しても構わない。つまり、ファイルシステム制御手段３０１は、実ファイル記憶領域Ｂ４０４に書き込みを行った際に実ファイル記憶領域Ｂ４０４の空き容量が空き容量閾値Ｂ以上あるか否か確認することが出来る。
【０１０５】
実ファイル記憶領域Ｂ４０４の空き容量が空き容量閾値Ｂ以上ある場合（ステップＳ６０４、Ｙｅｓ）、ファイルシステム制御手段３０１は、処理を終了する。一方、実ファイル記憶領域Ｂ４０４の空き容量が空き容量閾値Ｂ未満の場合（ステップＳ６０４、Ｎｏ）、ファイルシステム制御手段３０１は、閾値管理テーブル３０３に登録されている実ファイル記憶領域Ｃ４０５に対応するディスク起動閾値を「０」に設定する。つまり、ファイルシステム制御手段３０１は、ディスク起動閾値Ｂの値を「０」に設定する（ステップＳ６０５）。また、ファイルシステム制御手段３０１は、閾値管理テーブル３０３に登録されている実ファイル記憶領域Ｃ４０５に対応するＩ／Ｏ対象閾値を「０」に設定する。つまり、ファイルシステム制御手段３０１は、Ｉ／Ｏ対象閾値Ｂの値を「０」に設定する（ステップＳ６０６）。
【０１０６】
以上が、実ファイル記憶領域の空き容量に応じてディスク起動閾値やＩ／Ｏ対象閾値を制御する処理の一例である。続いて、図１２を参照して、統計情報に基づいてディスク起動閾値を制御する処理の一例について説明する。ファイルサイズの傾向に応じてディスク起動閾値を再設定することで、過度のディスクの起動、又は、停止が行われないようにすることが出来る。
【０１０７】
図１２を参照すると、ファイルシステム制御手段３０１は、例えば定期的に（任意の間隔で構わない）、統計情報に基づいてファイルの状況（傾向）を確認する。例えば、ファイルシステム制御手段３０１は、閾値管理テーブル３０３を参照して、自装置であるサーバ装置３０と接続されているストレージ装置４０に記憶されているファイル全体のうちファイルサイズがＩ／Ｏ対象閾値Ａを超えるファイル数の割合がファイル傾向閾値Ａ以上となるか否か確認する（ステップＳ７０１）。
【０１０８】
ストレージ装置４０に記憶されているファイル全体のうちファイルサイズがＩ／Ｏ対象閾値Ａを超えるファイル数の割合がファイル傾向閾値Ａ未満となる場合（ステップＳ７０１、Ｎｏ）、ファイルシステム制御手段３０１は、処理を終了する。一方、ストレージ装置４０に記憶されているファイル全体のうちファイルサイズがＩ／Ｏ対象閾値Ａを超えるファイル数の割合がファイル傾向閾値Ａ以上となる場合（ステップＳ７０１、Ｙｅｓ）、ファイルシステム制御手段３０１は、閾値管理テーブル３０３に登録されている実ファイル記憶領域Ｂ４０４に対応するディスク起動閾値を０に設定する。つまり、ファイルシステム制御手段３０１は、ディスク起動閾値Ａの値を「０」に設定する（ステップＳ７０２）。
【０１０９】
続いて、ファイルシステム制御手段３０１は、ストレージ装置４０に記憶されているファイル全体のうちファイルサイズがＩ／Ｏ対象閾値Ｂを超えるファイル数の割合がファイル傾向閾値Ｂ以上となるか否か確認する（ステップＳ７０３）。
【０１１０】
ストレージ装置４０に記憶されているファイル全体のうちファイルサイズがＩ／Ｏ対象閾値Ｂを超えるファイル数の割合がファイル傾向閾値Ｂ未満となる場合（ステップＳ７０３、Ｎｏ）、ファイルシステム制御手段３０１は、処理を終了する。一方、ストレージ装置４０に記憶されているファイル全体のうちファイルサイズがＩ／Ｏ対象閾値Ｂを超えるファイル数の割合がファイル傾向閾値Ｂ以上となる場合（ステップＳ７０３、Ｙｅｓ）、ファイルシステム制御手段３０１は、閾値管理テーブル３０３に登録されている実ファイル記憶領域Ｃ４０５に対応するディスク起動閾値を０に設定する。つまり、ファイルシステム制御手段３０１は、ディスク起動閾値Ｂの値を「０」に設定する（ステップＳ７０４）。
【０１１１】
以上が、統計情報に基づいてディスク起動閾値を制御する処理の一例である。
【０１１２】
以上、本実施形態において説明した事項をまとめると、例えば、図１３で示すようになる。図１３を参照すると、ファイルのサイズがＩ／Ｏ対象閾値Ａ以下の場合、実ファイル記憶領域Ａ４０３のみがＩ／Ｏ対象のディスクとなる。また、ファイルのサイズがＩ／Ｏ対象閾値Ａを超えていて、かつ、Ｉ／Ｏ対象閾値Ｂ以下の場合、実ファイル記憶領域Ａ４０３と実ファイル記憶領域Ｂ４０４とがＩ／Ｏ対象のディスクとなる。また、ファイルのサイズがＩ／Ｏ対象閾値Ｂを超えている場合、実ファイル記憶領域Ａ４０３と実ファイル記憶領域Ｂ４０４と実ファイル記憶領域Ｃ４０５がＩ／Ｏ対象のディスクとなる。
【０１１３】
換言すると、データ書き込み先のファイルオフセットやデータ読み込み先のファイルオフセットがＩ／Ｏ対象閾値Ａ以下の場合、データの書き込み先や読込先は実ファイル記憶領域Ａ４０３となる。また、データ書き込み先のファイルオフセットやデータ読み込み先のファイルオフセットがＩ／Ｏ対象閾値Ａを超えていて、かつ、Ｉ／Ｏ対象閾値Ｂ以下の場合、データの書き込み先や読込先は実ファイル記憶領域Ｂ４０４となる（高速記憶領域４０１を考慮しない場合）。また、データ書き込み先のファイルオフセットやデータ読み込み先のファイルオフセットがＩ／Ｏ対象閾値Ｂを超えている場合、データの書き込み先や読込先は実ファイル記憶領域Ｃ４０５となる（高速記憶領域４０１を考慮しない場合）。
【０１１４】
このように、本実施形態におけるサーバ装置３０によると、ファイルシステム制御手段３０１と実ファイル配置管理手段３０２と閾値管理テーブル３０３とを有している。このような構成により、実ファイル配置管理手段３０２は、閾値管理テーブル３０３とデータ書き込み先／読み込み先のファイルオフセットとに基づいて、データの書き込み先や読み込み先の実ファイル記憶領域を特定することが出来る。これにより、ディスクへのアクセスを一部に集中させることが可能となり、ストレージの省電力機能により停止可能なディスクを提供することが可能となる。ディスクを停止することで、従来と比較して必要な性能を維持したまま消費電力を削減することができるようになる。
【０１１５】
なお、本実施形態においては、ストレージ装置４０は、実ファイル記憶領域Ａ４０３と実ファイル記憶領域Ｂ４０４と実ファイル記憶領域Ｃ４０５の３つの実ファイル記憶領域を有するとした。しかしながら、ストレージ装置４０が有する実ファイル記憶領域の数が３つに限定されない。ストレージ装置４０は、２つの実ファイル記憶領域を有しても構わないし、４つ以上の任意の数の実ファイル記憶領域を有しても構わない。また、本実施形態においては、閾値を二段階に設定しているがより少ない閾値を設定しても、より多段階化した閾値を設定しても構わない。また、本実施形態においては、ストレージ装置４０が高速記憶領域４０１を有するとした。しかしながら、高速記憶領域４０１は、サーバ装置３０が有していても構わない。サーバ装置３０が複数の実ファイル記憶領域を有するよう構成しても構わない。
【０１１６】
また、サーバ装置３０は、実ファイルが必要になった際に都度計算をしてＩ／Ｏ対象領域を決定するよう構成しても構わないし、ファイル作成の段階で指定されているファイルサイズに応じてＩ／Ｏ対象領域を決定し実ファイルを作成してもかまわない。
【０１１７】
また、本実施形態においては、１つのファイルを１つのストレージ装置４０内の複数の実ファイル記憶領域に分散する例について説明した。しかしながら、サーバ装置３０は、１つのファイルを複数のストレージ装置内の複数の実ファイル記憶領域に分散させるよう構成しても構わない。
【０１１８】
［第２の実施形態］
次に、図１４を参照して、本発明の第２の実施形態について説明する。図１４は、ファイル分散記憶装置５の構成の一例を示している。
【０１１９】
本発明の第２の実施形態では、ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置５の構成の概要について説明する。なお、上記複数の記憶装置は、例えば、ファイル分散記憶装置５の外部に設けられている。上記複数の記憶装置は、ファイル分散記憶装置５が有していても構わない。
【０１２０】
図１４を参照すると、ファイル分散記憶装置５は、ファイルシステム制御手段５１を有している。なお、例えば、ファイル分散記憶装置５は、図示しない演算装置と図示しない記憶装置とを有しており、図示しない記憶装置に格納されたプログラムを図示しない演算装置が実行することで、ファイルシステム制御手段５１を実現する。
【０１２１】
ファイルシステム制御手段５１は、外部装置などからの書き込み要求に応じて、当該書き込み要求が要求するデータの書き込み先のファイル中の位置に応じて複数の記憶装置のいずれかにデータを書き込む処理、又は、読み込み要求に応じて当該読込要求が要求するデータを複数の記憶装置のいずれかから読み込む処理、の少なくとも一方を実行する。
【０１２２】
さらに、ファイルシステム制御手段５１は、書き込み要求が書き込みを要求する書込要求データのファイル中の位置、又は、読み込み要求が読み込みを要求する読込要求データのファイル中の位置に応じて、記憶装置の起動状態を制御する
【０１２３】
このように、本実施形態におけるファイル分散記憶装置５は、ファイルシステム制御手段５１を有している。このような構成により、ファイルシステム制御手段５１は、書き込み要求が書き込みを要求する書込要求データのファイル中の位置、又は、読み込み要求が読み込みを要求する読込要求データのファイル中の位置に応じて、記憶装置の起動状態を制御することが出来る。その結果、必要な記憶装置のみを起動させることが可能となり、ファイルを分散して記憶する装置において、消費電力を抑制することが可能となる。
【０１２４】
また、上述したファイル分散記憶装置５は、当該ファイル分散記憶装置５に所定のプログラムが組み込まれることで実現できる。具体的に、本発明の他の形態であるプログラムは、ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置５に、書き込み要求に応じて、当該書き込み要求が要求するデータを当該データの書き込み先のファイル中の位置に応じて複数の記憶装置のいずれかに書き込む処理、又は、読み込み要求に応じて当該読込要求が要求するデータを複数の記憶装置のいずれかから読み込む処理、の少なくとも一方を実行するファイルシステム制御手段５１を実現させ、ファイルシステム制御手段５１は、書き込み要求が書き込みを要求する書込要求データのファイル中の位置、又は、読み込み要求が読み込みを要求する読込要求データのファイル中の位置に応じて、記憶装置の起動状態を制御する処理を実現させるためのプログラムである。
【０１２５】
また、上述したファイル分散記憶装置５により実行されるファイル分散記憶方法は、ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置５が、書き込み要求に応じて、当該書き込み要求が要求するデータを当該データの書き込み先のファイル中の位置に応じて複数の記憶装置のいずれかに書き込む処理、又は、読み込み要求に応じて当該読込要求が要求するデータを複数の記憶装置のいずれかから読み込む処理、の少なくとも一方を実行し、書き込み要求が書き込みを要求する書込要求データのファイル中の位置、又は、読み込み要求が読み込みを要求する読込要求データのファイル中の位置に応じて、記憶装置の起動状態を制御する、という方法である。
【０１２６】
上述した構成を有する、プログラム、又は、ファイル分散記憶方法、の発明であっても、上記ファイル分散記憶装置５と同様の作用を有するために、上述した本発明の目的を達成することが出来る。
【０１２７】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明におけるファイル分散記憶装置などの概略を説明する。但し、本発明は、以下の構成に限定されない。
【０１２８】
（付記１）
ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置であって、
書き込み要求に応じて、当該書き込み要求が要求するデータの書き込み先のファイル中の位置に応じて複数の前記記憶装置のいずれかにデータを書き込む処理、又は、読み込み要求に応じて当該読込要求が要求するデータを複数の前記記憶装置のいずれかから読み込む処理、の少なくとも一方を実行するファイルシステム制御手段を備え、
前記ファイルシステム制御手段は、前記書き込み要求が書き込みを要求する書込要求データの前記ファイル中の位置、又は、前記読み込み要求が読み込みを要求する読込要求データの前記ファイル中の位置に応じて、前記記憶装置の起動状態を制御する
ファイル分散記憶装置。
（付記２）
付記１に記載のファイル分散記憶装置であって、
前記ファイルシステム制御手段は、前記書込要求データ又は前記読込要求データの前記ファイル中の位置と、予め定められた閾値と、に基づいて前記記憶装置を起動させる
ファイル分散記憶装置。
（付記３）
付記２に記載のファイル分散記憶装置であって、
前記ファイルシステム制御手段は、前記書込要求データ又は前記読込要求データの前記ファイル中の位置が前記閾値を超える場合に、新たな前記記憶装置を起動させる
ファイル分散記憶装置。
（付記４）
付記２又は３に記載のファイル分散記憶装置であって、
前記書込要求データの前記ファイル中の位置と比較する前記閾値である書込閾値と、前記読込要求データの前記ファイル中の位置と比較する前記閾値である読込閾値とは、異なる値を有している
ファイル分散記憶装置。
（付記５）
付記４に記載のファイル分散記憶装置であって、
前記読込閾値は前記書込閾値よりも小さな値を有している
ファイル分散記憶装置。
（付記６）
付記１乃至５のいずれかに記載のファイル分散記憶装置であって、
前記記憶装置のうちの少なくとも一つは常に起動した状態にあり、
前記ファイルシステム制御手段は、常に起動した状態にある前記記憶装置の空き容量が予め定められた空き容量閾値よりも少なくなった場合、新たな前記記憶装置を常に起動した状態となるよう制御する
ファイル分散記憶装置。
（付記７）
付記１乃至６のいずれかに記載のファイル分散記憶装置であって、
前記ファイルシステム制御手段は、前記記憶装置が記憶するファイルの状況と、予め定められたファイル傾向閾値と、に基づいて、前記記憶装置の起動状態を制御する
ファイル分散記憶装置。
（付記８）
付記７に記載のファイル分散記憶装置であって、
前記ファイルシステム制御手段は、前記記憶装置が記憶するファイル数に占めるファイルの大きさが予め定められた比較閾値を超えるファイル数の割合が予め定められたファイル傾向閾値以上である場合、新たな前記記憶装置を常に起動した状態となるよう制御する
ファイル分散管理装置。
（付記９）
ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置に、
書き込み要求に応じて、当該書き込み要求が要求するデータを当該データの書き込み先のファイル中の位置に応じて複数の前記記憶装置のいずれかに書き込む処理、又は、読み込み要求に応じて当該読込要求が要求するデータを複数の前記記憶装置のいずれかから読み込む処理、の少なくとも一方を実行するファイルシステム制御手段を実現させ、
前記ファイルシステム制御手段は、前記書き込み要求が書き込みを要求する書込要求データの前記ファイル中の位置、又は、前記読み込み要求が読み込みを要求する読込要求データの前記ファイル中の位置に応じて、前記記憶装置の起動状態を制御する
プログラム。
（付記９−１）
付記９に記載のプログラムであって、
前記ファイルシステム制御手段は、前記書込要求データ又は前記読込要求データの前記ファイル中の位置と、予め定められた閾値と、に基づいて前記記憶装置を起動させる
プログラム。
（付記９−２）
付記９−１に記載のプログラムであって、
前記ファイルシステム制御手段は、前記書込要求データ又は前記読込要求データの前記ファイル中の位置が前記閾値を超える場合に、新たな前記記憶装置を起動させる
プログラム。
（付記１０）
ファイルを複数の記憶装置に分散して記憶するファイル分散記憶装置が、
書き込み要求に応じて、当該書き込み要求が要求するデータを当該データの書き込み先のファイル中の位置に応じて複数の前記記憶装置のいずれかに書き込む処理、又は、読み込み要求に応じて当該読込要求が要求するデータを複数の前記記憶装置のいずれかから読み込む処理、の少なくとも一方を実行し、
前記書き込み要求が書き込みを要求する書込要求データの前記ファイル中の位置、又は、前記読み込み要求が読み込みを要求する読込要求データの前記ファイル中の位置に応じて、前記記憶装置の起動状態を制御する
ファイル分散記憶方法。
（付記１０−１）
付記１０に記載のファイル分散記憶方法であって、
前記書込要求データ又は前記読込要求データの前記ファイル中の位置と、予め定められた閾値と、に基づいて前記記憶装置を起動させる
ファイル分散記憶方法。
（付記１０−２）
付記１０−１に記載のファイル分散記憶方法であって、
前記書込要求データ又は前記読込要求データの前記ファイル中の位置が前記閾値を超える場合に、新たな前記記憶装置を起動させる
ファイル分散記憶方法。
【０１２９】
なお、上記各実施形態及び付記において記載したプログラムは、記憶装置に記憶されていたり、コンピュータが読み取り可能な記録媒体に記録されていたりする。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
【０１３０】
以上、上記各実施形態を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることが出来る。
【符号の説明】
【０１３１】
１  分散並列ファイルシステム
１０  クライアント装置
２０  ネットワーク
３０  サーバ装置
３０１  ファイルシステム制御手段
３０２  実ファイル配置管理手段
３０３  閾値管理テーブル
３０４  ディスク監視タイマー手段
３０５  ストレージ通信手段
３０６  ディスク稼動管理テーブル
３０７  ディスク操作手段
３０８  高速記憶領域監視手段
４０  ストレージ装置
４０１  高速記憶領域
４０２  メタデータ記憶領域
４０３  実ファイル記憶領域Ａ
４０４  実ファイル記憶領域Ｂ
４０５  実ファイル記憶領域Ｃ
５  ファイル分散記憶装置
５１  ファイルシステム制御手段
【図１】
2018147341.tif 000003
【図２】
2018147341.tif 000004
【図３】
2018147341.tif 000005
【図４】
2018147341.tif 000006
【図５】
2018147341.tif 000007
【図６】
2018147341.tif 000008
【図７】
2018147341.tif 000009
【図８】
2018147341.tif 000010
【図９】
2018147341.tif 000011
【図１０】
2018147341.tif 000012
【図１１】
2018147341.tif 000013
【図１２】
2018147341.tif 000014
【図１３】
2018147341.tif 000015
【図１４】
2018147341.tif 000016