(57)【要約】【課題】更新頻度の高いファイルを取り扱う場合であっても、アップロードに係るトラフィック負荷が増大することを防止できるようにする。【解決手段】オンラインストレージ３００と通信可能に構成されたＮＡＳ２００は、オンラインストレージ３００へアップロードすべきファイルをキャッシュするキャッシュ管理部２１２と、ファイルがキャッシュされてから所定の保留時間が経過するまでは、当該ファイルが更新される場合であっても、当該ファイルのアップロードを保留するよう制御する制御部２１４と、を有する。【選択図】図３
2012243108.tif 000002
【特許請求の範囲】
【請求項１】
オンラインストレージと通信可能に構成されたファイル管理装置であって、
前記オンラインストレージへアップロードすべきファイルをキャッシュするキャッシュ管理部と、
前記ファイルがキャッシュされてから所定の保留時間が経過するまでは、当該ファイルが更新される場合であっても、当該ファイルのアップロードを保留するよう制御する制御部と、
を有することを特徴とするファイル管理装置。
【請求項２】
前記制御部は、前記キャッシュされているファイルの更新頻度が高いほど、当該ファイルのアップロードを保留する時間を長くすることを特徴とする請求項１に記載のファイル管理装置。
【請求項３】
前記キャッシュ管理部は、ユーザ端末からネットワークを介して伝達される前記ファイルをキャッシュすることを特徴とする請求項１又は２に記載のファイル管理装置。
【請求項４】
前記オンラインストレージへのアップロードに失敗した場合に、当該アップロードに失敗した旨の電子メールを前記ユーザ端末に宛てて送信するメール処理部をさらに有することを特徴とする請求項３に記載のファイル管理装置。
【請求項５】
前記ファイル管理装置を示すディレクトリの下位ディレクトリとして前記オンラインストレージを示す仮想ローカルディレクトリを配置したディレクトリ構成によりファイル管理を行うファイル管理部をさらに有することを特徴とする請求項１〜４の何れか一項に記載のファイル管理装置。
【請求項６】
前記キャッシュ管理部は、前記仮想ローカルディレクトリに対するファイルの保存要求に基づいて当該ファイルをキャッシュすることを特徴とする請求項５に記載のファイル管理装置。
【請求項７】
オンラインストレージと通信可能に構成されたファイル管理装置に、
前記オンラインストレージへアップロードすべきファイルをキャッシュするキャッシュ管理工程と、
前記ファイルがキャッシュされてから所定の保留時間が経過するまでは、当該ファイルが更新される場合であっても、当該ファイルのアップロードを保留するよう制御する制御工程と、
を実行させることを特徴とする制御プログラム。
【請求項８】
前記制御工程は、前記キャッシュされているファイルの更新頻度が高いほど、当該ファイルのアップロードを保留する時間を長くすることを特徴とする請求項７に記載の制御プログラム。
【請求項９】
前記キャッシュ管理工程は、ユーザ端末からネットワークを介して伝達される前記ファイルをキャッシュすることを特徴とする請求項７又は８に記載の制御プログラム。
【請求項１０】
前記オンラインストレージへのアップロードに失敗した場合に、当該アップロードに失敗した旨の電子メールを前記ユーザ端末に宛てて送信するメール処理工程をさらに有することを特徴とする請求項９に記載の制御プログラム。
【請求項１１】
前記ファイル管理装置を示すディレクトリの下位ディレクトリとして前記オンラインストレージを示す仮想ローカルディレクトリを配置したディレクトリ構成によりファイル管理を行うファイル管理工程をさらに有することを特徴とする請求項７〜１０の何れか一項に記載の制御プログラム。
【請求項１２】
前記キャッシュ管理工程は、前記仮想ローカルディレクトリに対するファイルの保存要求に基づいて当該ファイルをキャッシュすることを特徴とする請求項１１に記載の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オンラインストレージサービスに対応したファイル管理装置及びその制御プログラムに関する。
【背景技術】
【０００２】
従来、各種のファイルを保存するために、ユーザの端末装置（以下、「ユーザ端末」と称する）に設けられる記憶装置やユーザ端末に接続される記憶装置などのローカルストレージが用いられている。
【０００３】
近年では、通信技術の発達に伴い、インターネット上に設けられるオンラインストレージにファイルを保存できるオンラインサービス（Ｗｅｂサービス）が提供されている。このようなサービスにおいて、ユーザ端末は、オンラインストレージに対してファイルのアップロードやダウンロードを行う。
【０００４】
また、オンラインストレージについての利便性を高めるために、オンラインストレージを実際には利用しているにも拘わらずその存在を感じさせない利用体験を提供するファイル管理装置が提案されている（特許文献１参照）。
【０００５】
特許文献１に記載のファイル管理装置は、自装置へ保存又は更新されたファイルを自動的にオンラインストレージにアップロードするためのアプリケーションを有する。ユーザに対しては、オンラインストレージにあるファイルが自装置にあると見せるための仮想ファイルを表示する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−２８７１０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載のファイル管理装置は、自装置へファイルが保存又は更新される度に当該ファイルをオンラインストレージへアップロードする構成である。
【０００８】
しかしながら、このような構成とすると、更新頻度の高いファイルを取り扱う場合には、ファイル管理装置からオンラインストレージへアップロードが行われる頻度が高くなり、アップロードに係るトラフィック負荷が増大するという問題がある。
【０００９】
そこで、本発明は、更新頻度の高いファイルを取り扱う場合であっても、アップロードに係るトラフィック負荷が増大することを防止できるファイル管理装置及びその制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決するために、本発明は以下のような特徴を有している。
【００１１】
まず、本発明に係るファイル管理装置の特徴は、オンラインストレージ（オンラインストレージ３００）と通信可能に構成されたファイル管理装置（例えば、ＮＡＳ２００）であって、前記オンラインストレージへアップロードすべきファイルをキャッシュするキャッシュ管理部（キャッシュ管理部２１２）と、前記ファイルがキャッシュされてから所定の保留時間が経過するまでは、当該ファイルが更新される場合であっても、当該ファイルのアップロードを保留するよう制御する制御部（制御部２１４）と、を有することを要旨とする。
【００１２】
このようなファイル管理装置によれば、ファイルが更新される度にアップロードを即座に行うのではなく、ファイルがキャッシュされてから所定の保留時間が経過するまではアップロードを保留する制御を行うことによって、更新頻度の高いファイルを取り扱う場合であっても、アップロードに係るトラフィック負荷が増大することを防止できる。
【００１３】
本発明に係るファイル管理装置の他の特徴は、上述した特徴において、前記制御部は、前記キャッシュされているファイルの更新頻度が高いほど、当該ファイルのアップロードを保留する時間を長くすることを要旨とする。
【００１４】
このようなファイル管理装置によれば、更新頻度の高いファイルに対するアップロード保留時間を長くする（延長する）ことができるため、アップロードの頻度を効果的に削減できると共に、更新頻度の高いファイルを適切なタイミングでアップロードすることができる。
【００１５】
本発明に係るファイル管理装置の他の特徴は、上述した特徴において、前記キャッシュ管理部は、ユーザ端末（例えば、ＰＣ１００）からネットワーク（例えば、ＬＡＮ１０）を介して伝達される前記ファイルをキャッシュすることを要旨とする。
【００１６】
このようなファイル管理装置は、ユーザ端末とは別体であってネットワークに対応したものであり、ＮＡＳに該当する。これにより、上述した特徴と併せて、更新頻度の高いファイルを取り扱う場合であっても、アップロードに係るトラフィック負荷が増大することを防止できる。
【００１７】
本発明に係るファイル管理装置の他の特徴は、上述した特徴において、前記オンラインストレージへのアップロードに失敗した場合に、当該アップロードに失敗した旨の電子メールを前記ユーザ端末に宛てて送信するメール処理部（メール処理部２１５）をさらに有することを要旨とする。
【００１８】
このようなファイル管理装置によれば、アップロードの失敗をユーザに通知することができる。特に、上述したようなアップロードを保留する制御を行うと、ユーザがファイルの保存操作を行ってからアップロードが実行されるまでの間に遅延が生じ、アップロードに失敗したことをユーザが気付かないため、メールによる失敗通知が効果的である。
【００１９】
本発明に係るファイル管理装置の他の特徴は、上述した特徴において、前記ファイル管理装置を示すディレクトリの下位ディレクトリとして前記オンラインストレージを示す仮想ローカルディレクトリを配置したディレクトリ構成によりファイル管理を行うファイル管理部（ファイル管理部２１１）をさらに有することを要旨とする。
【００２０】
このようなファイル管理装置によれば、ディレクトリ構成を変更することでオンラインストレージをローカルストレージと同様に取り扱うことができるため、特許文献１の構成と比較して低コストで構成できる。
【００２１】
本発明に係るファイル管理装置の他の特徴は、上述した特徴において、前記キャッシュ管理部は、前記仮想ローカルディレクトリに対するファイルの保存要求に基づいて当該ファイルをキャッシュすることを要旨とする。
【００２２】
このようなファイル管理装置によれば、仮想ローカルディレクトリに対して保存されるファイルをキャッシュした上で、当該ファイルをオンラインストレージに自動でアップロードすることができる。
【００２３】
本発明に係る制御プログラムの特徴は、オンラインストレージと通信可能に構成されたファイル管理装置に、前記オンラインストレージへアップロードすべきファイルをキャッシュするキャッシュ管理工程と、前記ファイルがキャッシュされてから所定の保留時間が経過するまでは、当該ファイルが更新される場合であっても、当該ファイルのアップロードを保留するよう制御する制御工程と、を実行させることを要旨とする。
【００２４】
本発明に係る制御プログラムの他の特徴は、上述した特徴において、前記制御工程は、前記キャッシュされているファイルの更新頻度が高いほど、当該ファイルのアップロードを保留する時間を長くすることを要旨とする。
【００２５】
本発明に係る制御プログラムの他の特徴は、上述した特徴において、前記キャッシュ管理工程は、ユーザ端末からネットワークを介して伝達される前記ファイルをキャッシュすることを要旨とする。
【００２６】
本発明に係る制御プログラムの他の特徴は、上述した特徴において、前記オンラインストレージへのアップロードに失敗した場合に、当該アップロードに失敗した旨の電子メールを前記ユーザ端末に宛てて送信するメール処理工程をさらに有することを要旨とする。
【００２７】
本発明に係る制御プログラムの他の特徴は、上述した特徴において、前記ファイル管理装置を示すディレクトリの下位ディレクトリとして前記オンラインストレージを示す仮想ローカルディレクトリを配置したディレクトリ構成によりファイル管理を行うファイル管理工程をさらに有することを要旨とする。
【００２８】
本発明に係る制御プログラムの他の特徴は、上述した特徴において、前記キャッシュ管理工程は、前記仮想ローカルディレクトリに対するファイルの保存要求に基づいて当該ファイルをキャッシュすることを要旨とする。
【発明の効果】
【００２９】
本発明によれば、更新頻度の高いファイルを取り扱う場合であっても、アップロードに係るトラフィック負荷が増大することを防止できるファイル管理装置及びその制御プログラムを提供できる。
【図面の簡単な説明】
【００３０】
【図１】本発明の実施形態に係る通信システムの全体構成図である。
【図２】本発明の実施形態に係るＮＡＳのハードウェア構成図である。
【図３】本発明の実施形態に係るＮＡＳのソフトウェア構成図である。
【図４】本発明の実施形態に係るファイル管理部が管理するディレクトリ構成の具体例を示す図である。
【図５】本発明の実施形態に係るＮＡＳの動作フローチャートである。
【図６】図５のステップＳ３００におけるアップロード処理のフローチャートである。
【図７】図５のステップＳ３００におけるダウンロード処理のフローチャートである。
【発明を実施するための形態】
【００３１】
図面を参照して本発明の実施形態を説明する。本実施形態は、ＮＡＳ（Ｎｅｔｗｏｒｋ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ）を本発明に係るファイル管理装置とするものである。以下の各実施形態における図面において、同一又は類似の部分には同一又は類似の符号を付す。
【００３２】
（システム構成）
まず、本実施形態に係る通信システムの全体構成を説明する。図１は、本実施形態に係る通信システム１の全体構成図である。
【００３３】
図１に示すように、本実施形態に係る通信システム１は、ＰＣ１００と、ＮＡＳ２００と、オンラインストレージ３００とを有する。本実施形態において、ＰＣ１００はユーザ端末に相当する。ただし、ＰＣ１００に代えて、携帯電話端末やネットワーク対応テレビ受信機などをユーザ端末としてもよい。
【００３４】
ＰＣ１００及びＮＡＳ２００は、宅内ネットワークなどのＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１０に接続されており、ＬＡＮ１０を介して相互に通信を行うことができる。ＬＡＮ１０は、図示を省略するルータなどを介してインターネット２０に接続されている。オンラインストレージ３００は、インターネット２０に接続されている。
【００３５】
ＰＣ１００は、ユーザによって操作される情報処理装置であり、ネットワーク通信を行うためのネットワーク通信機能と、ユーザＩ／Ｆ（ディスプレイや、キーボード、マウスなど）とを具備する。ＰＣ１００は、ＬＡＮ１０を介して、ＮＡＳ２００に対するファイルの保存やファイルの読み出しを行う。
【００３６】
ＮＡＳ２００は、ファイル保存・管理に特化したファイルサーバであり、ファイル管理を行うためのファイルシステムや、ネットワーク通信を行うためのネットワーク通信機能を具備する。ＮＡＳ２００は、複数のユーザ端末によって共有されてもよい。
【００３７】
オンラインストレージ３００は、ファイル保存を行うことができるＷｅｂサービスを提供するものであり、１又は複数のファイルサーバにより構成される。例えば、オンラインストレージ３００は、ＰＣ１００のユーザが当該Ｗｅｂサービスに登録することにより、当該ユーザが利用可能な記憶領域を提供する。本実施形態では、ＰＣ１００のユーザは、オンラインストレージ３００が提供するサービスに登録済みであるものとする。
【００３８】
また、オンラインストレージ３００には、サービス提供者によって利用制約が課せられている。本実施形態では、利用制約とは、単位時間内のアクセス回数に上限値が設けられること、及び／又は、単位時間内の通信データ量に上限値が設けられることである。
【００３９】
ここで単位時間とは、例えば、１分又は１時間といった所定長の時間を意味する。また、単位時間内のアクセス回数の上限値とは、例えば１時間内に３００回までという上限値であり、単位時間内の通信データ量の上限値とは、例えば、１時間内に１ＴＢまでという上限値である。なお、オンラインストレージ３００に対するアクセス回数とは、ＮＡＳ２００においてオンラインストレージ３００に対して設けられたＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）の呼び出し回数に相当する。
【００４０】
以下の実施形態の説明においては、単位時間内のアクセス回数に上限値が設けられる利用制約を主として説明する。ただし、後述する「アクセス回数」を「通信データ量」に読み替えることによって、単位時間内の通信データ量に上限値が設けられる利用制約についても同様に適用可能である。
【００４１】
（ＮＡＳの構成）
次に、ＮＡＳ２００のハードウェア構成を説明する。図２は、ＮＡＳ２００のハードウェア構成図である。
【００４２】
図２に示すように、ＮＡＳ２００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２１０と、メモリ２２０と、１又は複数のＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）２３０と、ＬＡＮ  Ｉ／Ｆ２４０とを有する。ＣＰＵ２１０、メモリ２２０、ＨＤＤ２３０、及びＬＡＮ  Ｉ／Ｆ２４０は、バスラインを介して相互に接続されている。
【００４３】
ＣＰＵ２１０は、メモリ２２０に記憶されている制御プログラム（ファームウェア）を実行することで、ＮＡＳ２００の各種機能を制御する。
【００４４】
メモリ２２０は、フラッシュメモリ及びＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）を含む。フラッシュメモリは、ＣＰＵ２１０によって実行される制御プログラムを記憶する。ＲＡＭは、フラッシュメモリから読み出された制御プログラムを一時的に記憶するとともに、ＣＰＵ２１０の作業領域として使用される。
【００４５】
本実施形態では、メモリ２２０は、オンラインストレージ３００にアップロードすべきファイルや、オンラインストレージ３００からダウンロードしたファイルをキャッシュするためのキャッシュ領域を含む。また、メモリ２２０は、オンラインストレージ３００の利用制約の内容（本実施形態では、単位時間内のアクセス回数の上限値）を記憶している。
【００４６】
ＨＤＤ２３０は、各種ファイルを記憶するものである。ＨＤＤ２３０は、ディスクアレイとして構成されてもよく、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）を構成するようにしてもよい。
【００４７】
ＬＡＮ  Ｉ／Ｆ２４０は、ＬＡＮ１０に接続され、ＬＡＮ１０を介して通信を行うように構成される。ＬＡＮ  Ｉ／Ｆ２４０は、有線によりＬＡＮ１０に接続されてもよく、無線によりＬＡＮ１０に接続されてもよい。本実施形態では、ＬＡＮ  Ｉ／Ｆ２４０は、ＰＣ１００からのファイル保存要求、保存対象ファイル、ファイル更新要求、ファイル読み出し要求などを受信する。
【００４８】
次に、ＮＡＳ２００のソフトウェア構成を説明する。図３は、ＮＡＳ２００のソフトウェア構成図である。
【００４９】
図３に示すように、ＣＰＵ２１０は、メモリ２２０が記憶している制御プログラムを実行することによって、ファイル管理部２１１、キャッシュ管理部２１２、アクセス部２１３、制御部２１４、及びメール処理部２１５の各機能部を構成する。
【００５０】
ファイル管理部２１１は、ファイルシステムに相当するものである。本実施形態では、ファイル管理部２１１は、ＮＡＳ２００を示すディレクトリの下位ディレクトリとしてオンラインストレージ３００を示す仮想ローカルディレクトリを配置したディレクトリ構成によりファイル管理を行う。ＰＣ１００は、ＮＡＳ２００にアクセスすることによって、当該ディレクトリ構成を閲覧したり、当該ディレクトリ構成に対するファイル操作を行ったりすることができる。当該ディレクトリ構成の具体例については後述する。
【００５１】
キャッシュ管理部２１２は、オンラインストレージ３００にアップロードすべきファイル（保存対象ファイル）や、オンラインストレージ３００からダウンロードしたファイルを、メモリ２２０に設けられているキャッシュ領域にキャッシュする。また、キャッシュ管理部２１２は、ＰＣ１００からのファイル更新要求に応じて、キャッシュしているファイルを更新する。
【００５２】
本実施形態では、キャッシュ管理部２１２は、仮想ローカルディレクトリに対するファイル保存要求があると、ファイル保存要求に対応する保存対象ファイルをキャッシュ領域にキャッシュする。また、キャッシュ管理部２１２は、当該キャッシュされているファイルに対するファイル更新要求があると、当該ファイルを更新する。
【００５３】
アクセス部２１３は、オンラインストレージ３００に対応して設けられたＡＰＩに相当する。アクセス部２１３は、オンラインストレージ３００へのアップロード又はオンラインストレージ３００からのダウンロードの少なくとも一方のアクセス処理を行う。アクセス部２１３は、オンラインストレージ３００へのアップロードを行うアップロード部２１３Ａと、オンラインストレージ３００からのダウンロードを行うダウンロード部２１３Ｂとを含む。なお、アクセス部２１３によるオンラインストレージ３００へのアクセス処理に必要な情報は、予めメモリ２２０に記憶されているものとする。
【００５４】
本実施形態では、アップロード部２１３Ａは、制御部２１４の制御下で、キャッシュ管理部２１２がキャッシュしているファイルをオンラインストレージ３００にアップロードする。また、ダウンロード部２１３Ｂは、制御部２１４の制御下で、ファイル読み出し要求に対応するファイルをオンラインストレージ３００からダウンロードする。
【００５５】
制御部２１４は、アクセス部２１３による単位時間内のアクセス回数（すなわち、ＡＰＩ呼び出し回数）を監視しており、当該単位時間内のアクセス回数に基づいて、メモリ２２０が記憶している利用制約を満たすように、アクセス部２１３によるアクセス処理を抑止するためのアクセス抑止制御を行う。本実施形態では、制御部２１４は、アクセス部２１３による単位時間内のアクセス回数がアクセス回数閾値を超える場合に、アクセス抑止制御を行う。なお、当該アクセス回数閾値は、利用制約としての単位時間内のアクセス回数の上限値未満に設定されており、メモリ２２０に予め記憶されているものとする。
【００５６】
制御部２１４は、アクセス抑止制御として、キャッシュ管理部２１２によりファイルがキャッシュされてから所定の保留時間（タイムアウト時間）が経過するまでは、当該ファイルが更新される場合であっても、当該ファイルのアップロードを保留する制御を行う。本実施形態では、制御部２１４は、キャッシュされているファイルの更新頻度が高いほど、当該ファイルのアップロードを保留する時間を長くする。また、制御部２１４は、アクセス抑止制御として、オンラインストレージ３００からのダウンロードを保留して、所定時間経過後に当該ダウンロードをリトライする制御を行う。
【００５７】
メール処理部２１５は、アップロード部２１３Ａによるオンラインストレージ３００へのアップロードに失敗した場合に、当該アップロードに失敗した旨の電子メールをＰＣ１００に宛てて送信する。なお、メール処理部２１５は、アップロードに対してオンラインストレージ３００から返信される終了コードに基づいてオンラインストレージ３００へのアップロード失敗を検出できる。また、ＰＣ１００の電子メールアドレスは、メモリ２２０に予め記憶されているものとする。
【００５８】
次に、ファイル管理部２１１が管理するディレクトリ構成の具体例を説明する。図４は、ファイル管理部２１１が管理するディレクトリ構成の具体例を示す図である。
【００５９】
図４に示すように、当該ディレクトリ構成は、ＮＡＳ２００を示すルートディレクトリＡ〜Ｃを有し、ルートディレクトリＣの下位ディレクトリとしてサブディレクトリＣ１及びＣ２を有し、サブディレクトリＣ２の下位ディレクトリとしてサブディレクトリＣ２１及びＣ２２を有する。
【００６０】
サブディレクトリＣ２１に含まれる各ファイル（コンテンツＣ２１−１〜Ｃ２１−３）の実体は、ＮＡＳ２００に記憶されている。これに対し、サブディレクトリＣ２２（のサブディレクトリＣ２２１）に含まれる各ファイル（コンテンツＣ２２１−１〜Ｃ２２１−３）の実体は、オンラインストレージ３００に記憶されている。
【００６１】
このように、サブディレクトリＣ２２以下のディレクトリは、ＮＡＳ２００にファイルが存在するように扱っているものの、当該ファイルの実体はオンラインストレージ３００に存在しており、仮想的なローカルディレクトリとして構成されている。
【００６２】
なお、このような仮想ローカルディレクトリは、例えばファイルシステムを構築可能なソフトウェアの一つであるＦＵＳＥ（Ｆｉｌｅｓｙｓｔｅｍ  ｉｎ  Ｕｓｅｒｓｐａｃｅ）を用いて構成することができる。
【００６３】
（ＮＡＳの動作）
次に、ＮＡＳ２００の動作を説明する。図５は、ＮＡＳ２００の動作フローチャートである。
【００６４】
図５に示すように、ステップＳ１００において、制御部２１４は、アクセス部２１３による単位時間内のアクセス回数（すなわち、ＡＰＩ呼び出し回数）を監視（カウント）する。
【００６５】
ステップＳ２００において、制御部２１４は、アクセス部２１３による単位時間内のアクセス回数がアクセス回数閾値を超えるか否かを確認する。なお、アクセス回数閾値は利用制約としての単位時間内のアクセス回数の上限値よりも小さい値であるため、アクセス部２１３による単位時間内のアクセス回数がアクセス回数閾値を超えるということは、アクセス部２１３による単位時間内のアクセス回数が上限値に近づいているということを意味する。
【００６６】
アクセス部２１３による単位時間内のアクセス回数がアクセス回数閾値を超えない場合（ステップＳ２００；ＮＯ）、制御部２１４は、処理をステップＳ１００に戻す。これに対し、アクセス部２１３による単位時間内のアクセス回数がアクセス回数閾値を超える場合（ステップＳ２００；ＹＥＳ）、制御部２１４は、処理をステップＳ３００に進める。
【００６７】
ここで、アクセス部２１３による単位時間内のアクセス回数がアクセス回数閾値を超えない場合は、アクセス部２１３による単位時間内のアクセス回数が上限値に対して余裕があるということを意味するため、キャッシュされるファイルとオンラインストレージ３００に記憶されるファイルとが同期するように頻繁にアップロードを行ってもよく、ファイル読み出し要求に対して即座にダウンロードを行ってもよい。
【００６８】
ステップＳ３００において、制御部２１４は、アクセス抑止制御を行う。以下において、ステップＳ３００の詳細について説明する。
【００６９】
図５のステップＳ３００におけるアップロード処理を説明する。図６は、図５のステップＳ３００におけるアップロード処理のフローチャートである。ここでは、仮想ローカルディレクトリを対象としたアップロード処理を説明する。
【００７０】
図６に示すように、ステップＳ３１０において、キャッシュ管理部２１２は、仮想ローカルディレクトリに対するファイル保存要求に応じて、保存対象ファイルをキャッシュ領域にキャッシュする。
【００７１】
ステップＳ３１１において、制御部２１４は、内部タイマに対してタイムアウト時間の初期値（例えば、１５秒）を設定し、当該内部タイマを起動する。
【００７２】
ステップＳ３１２において、制御部２１４は、キャッシュ管理部２１２がキャッシュしているファイルに対するファイル更新要求があったか否かを確認する。キャッシュ管理部２１２がキャッシュしているファイルに対するファイル更新要求があった場合（ステップＳ３１２；ＹＥＳ）、制御部２１４は、処理をステップＳ３１３に進める。これに対し、キャッシュ管理部２１２がキャッシュしているファイルに対するファイル更新要求がない場合（ステップＳ３１２；ＮＯ）、制御部２１４は、処理をステップＳ３１４に進める。
【００７３】
ステップＳ３１３において、制御部２１４は、現在のタイムアウト時間をＮ倍（例えば、２倍）したものを内部タイマに再設定し、その後、処理をステップＳ３１１に戻す。ステップＳ３１１においては、Ｎ倍されたタイムアウト時間が設定された内部タイマが起動される。
【００７４】
一方、ステップＳ３１４において、制御部２１４は、内部タイマが満了したか否か（タイムアウトしたか否か）を確認する。内部タイマが満了した場合（ステップＳ３１４；ＹＥＳ）、制御部２１４は、処理をステップＳ３１５に進める。これに対し、内部タイマが満了していない場合（ステップＳ３１４；ＮＯ）、制御部２１４は、処理をステップＳ３１２に戻す。ステップＳ３１２においては、ファイル更新要求の有無が再度判定される。
【００７５】
ステップＳ３１５において、制御部２１４は、キャッシュ管理部２１２がキャッシュしているファイルをアップロードするようアップロード部２１３Ａを制御する。
【００７６】
このように、本フローの例においては、ファイルのアップロードが少なくとも１５秒（所定の保留時間）は保留され、かつ、その間に当該ファイルのファイル更新を検出した場合には当該ファイルのアップロードがさらに３０秒保留される。また、３０秒保留している間に当該ファイルのファイル更新を検出した場合には当該ファイルのアップロードがさらに６０秒保留される。よって、更新頻度の高いファイルほど、アップロード保留時間を長くすることができる。
【００７７】
なお、上述した制御によってもアップロードに失敗した場合には、上述したように、メール処理部２１５は、アップロード失敗通知を電子メールにより行う。
【００７８】
次に、図５のステップＳ３００におけるダウンロード処理を説明する。図７は、図５のステップＳ３００におけるダウンロード処理のフローチャートである。ここでは、仮想ローカルディレクトリを対象としたダウンロード処理を説明する。
【００７９】
図７に示すように、ステップＳ３２０において、ファイル管理部２１１は、仮想ローカルディレクトリに対するファイル読み出し要求をＰＣ１００から受け付ける。
【００８０】
ステップＳ３２１において、制御部２１４は、ファイル管理部２１１が受け付けたファイル読み出し要求に対応する読み出し対象ファイルのダウンロードを一旦中止するよう制御する。
【００８１】
ステップＳ３２２において、制御部２１４は、読み出し対象ファイルのダウンロードを一旦中止してから、予め設定されている保留時間が経過するのを待つ。
【００８２】
ステップＳ３２３において、制御部２１４は、保留時間が経過した際に、読み出し対象ファイルをダウンロードするようにダウンロード部２１３Ｂを制御する。
【００８３】
（実施形態の効果）
以上説明したように、本実施形態に係るＮＡＳ２００は、サービス提供者によってオンラインストレージ３００に利用制約が課せられている場合であっても、ファイルの保存や読み出しを適切に行うことができる。また、ＮＡＳ２００は、ファイルが更新される度にアップロードを即座に行うのではなく、ファイルがキャッシュされてから所定の保留時間が経過するまではアップロードを保留するアクセス抑止制御を行うことによって、更新頻度の高いファイルを取り扱う場合であっても、アップロードに係るトラフィック負荷が増大することを防止できる。
【００８４】
本実施形態では、ＮＡＳ２００は、アクセス部２１３による単位時間内のアクセス回数が、利用制約としての上限値未満に設定されたアクセス回数閾値を超える場合に、アクセス抑止制御を行う。これにより、アクセス部２１３による単位時間内のアクセス回数が利用制約としての上限値を超える手前の段階でアクセス抑止制御を行うことができるため、オンラインストレージ３００へのアクセスが不能になることによりファイルの保存や読み出しが不能になるという問題を解決できる。
【００８５】
本実施形態では、ＮＡＳ２００は、キャッシュされているファイルの更新頻度が高いほど、当該ファイルのアップロードを保留する時間を長くする。これにより、更新頻度の高いファイルに対するアップロード保留時間を長くする（延長する）ことができるため、アップロードの頻度を効果的に削減できると共に、更新頻度の高いファイルを適切なタイミングでアップロードすることができる。
【００８６】
本実施形態では、ＮＡＳ２００は、アクセス抑止制御として、オンラインストレージ３００からのダウンロードを保留して、所定時間経過後に当該ダウンロードをリトライする制御を行うことによって、オンラインストレージ３００の利用制約を満たしつつダウンロードを行うことができる。
【００８７】
本実施形態では、ＮＡＳ２００は、オンラインストレージ３００へのアップロードに失敗した場合に、当該アップロードに失敗した旨の電子メールをＰＣ１００に宛てて送信することによって、アップロードの失敗をユーザに通知することができる。特に、上述したようなアップロードを保留する制御を行う場合には、ユーザがファイルの保存操作を行ってからアップロードが実行されるまでの間に遅延が生じ、アップロードに失敗したことをユーザが気付かないため、メールによる失敗通知が効果的である。
【００８８】
本実施形態では、ＮＡＳ２００は、ＮＡＳ２００を示すディレクトリの下位ディレクトリとしてオンラインストレージ３００を示す仮想ローカルディレクトリを配置したディレクトリ構成によりファイル管理を行う。これにより、ディレクトリ構成を変更することでオンラインストレージ３００をローカルストレージと同様に取り扱うことができる。
【００８９】
本実施形態では、ＮＡＳ２００は、仮想ローカルディレクトリに対するファイルの保存又は更新要求に基づいて、当該ファイルをオンラインストレージ３００にアップロードする。これにより、仮想ローカルディレクトリに対して保存又は更新されるファイルをオンラインストレージ３００に自動でアップロードすることができる。
【００９０】
（その他の実施形態）
上記のように、本発明は実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなる。
【００９１】
例えば、上述した実施形態では、ＮＡＳ２００を本発明に係るファイル管理装置としていたが、ＮＡＳ２００に代えてＰＣ１００を本発明に係るファイル管理装置としてもよい。この場合、ＰＣ１００は、図２に示すハードウェア構成及び図３に示すソフトウェア構成と同様の構成を有し、図５〜図７に示す各フローを実行する。
【００９２】
このように本発明は、ここでは記載していない様々な実施形態等を包含するということを理解すべきである。
【符号の説明】
【００９３】
１…通信システム、１０…ＬＡＮ、２０…インターネット、１００…ＰＣ、２００…ＮＡＳ、２１０…ＣＰＵ、２１１…ファイル管理部、２１２…キャッシュ管理部、２１３…アクセス部、２１３Ａ…アップロード部、２１３Ｂ…ダウンロード部、２１４…制御部、２１５…メール処理部、２２０…メモリ、２３０…ＨＤＤ、２４０…ＬＡＮ  Ｉ／Ｆ、３００…オンラインストレージ
【図１】
2012243108.tif 000003
【図２】
2012243108.tif 000004
【図３】
2012243108.tif 000005
【図４】
2012243108.tif 000006
【図５】
2012243108.tif 000007
【図６】
2012243108.tif 000008
【図７】
2012243108.tif 000009