(57)【要約】【課題】コンテンツを配信したい人が、配信先のユーザーがアクセス可能な格納先を知らなくても、該ユーザーがアクセス可能な、複数の格納先のいずれかに当該コンテンツを格納することができる情報処理装置を提供する。【解決手段】情報処理装置の記憶手段は、複数の格納先のそれぞれについて、ユーザーがアクセス可能であったか否かを少なくとも示す履歴を記憶し、受付手段は、前記ユーザーからのコンテンツについての取得要求を受け付け、格納手段は、前記取得要求を受け付けたことに応じて、前記記憶手段に記憶されている履歴に基づいて、前記ユーザーがアクセス可能であった格納先に前記コンテンツを格納し、送信手段は、前記格納手段が前記コンテンツを格納した格納先にアクセスするための情報を、前記ユーザーに送信する。【選択図】図１
2017016445.tif 000002
【特許請求の範囲】
【請求項１】
複数の格納先のそれぞれについて、ユーザーがアクセス可能であったか否かを少なくとも示す履歴を記憶する記憶手段と、
前記ユーザーからのコンテンツについての取得要求を受け付ける受付手段と、
前記取得要求を受け付けたことに応じて、前記記憶手段に記憶されている履歴に基づいて、前記ユーザーがアクセス可能であった格納先に前記コンテンツを格納する格納手段と、
前記格納手段が前記コンテンツを格納した格納先にアクセスするための情報を、前記ユーザーに送信する送信手段と、
を有する情報処理装置。
【請求項２】
前記ユーザーに、前記コンテンツを格納し得る格納先にアクセスするためのモジュールを送信する第２の送信手段
をさらに有し、
前記記憶手段は、前記モジュールにより行われたアクセスの結果を履歴として記憶する、
請求項１に記載の情報処理装置。
【請求項３】
前記格納手段は、前記コンテンツを変換して、前記格納先に格納する、
請求項１又は２に記載の情報処理装置。
【請求項４】
前記複数の格納先のアクセシビリティの度合いを示す情報を少なくとも含む属性を記憶する第２の記憶手段
をさらに有し、
前記第２の記憶手段に記憶される属性は、前記格納手段によって格納されたコンテンツに対するアクセスの履歴に基づいて更新される、
請求項１から３のいずれか一項に記載の情報処理装置。
【請求項５】
前記コンテンツの格納要求を受け付ける第２の受付手段
をさらに有し、
前記格納手段は、前記格納要求を受け付けたことに応じて、前記コンテンツを前記複数の格納先の中のデフォルトの格納先に格納する、
請求項１から４のいずれか一項に記載の情報処理装置。
【請求項６】
前記デフォルトの格納先は、前記格納手段によって格納されたコンテンツに対するアクセスの履歴に基づいて更新される、
請求項５に記載の情報処理装置。
【請求項７】
コンピュータを、
複数の格納先のそれぞれについて、ユーザーがアクセス可能であったか否かを少なくとも示す履歴を記憶する記憶手段と、
前記ユーザーからのコンテンツについての取得要求を受け付ける受付手段と、
前記取得要求を受け付けたことに応じて、前記記憶手段に記憶されている履歴に基づいて、前記ユーザーがアクセス可能であった格納先に前記コンテンツを格納する格納手段と、
前記格納手段が前記コンテンツを格納した格納先にアクセスするための情報を、前記ユーザーに送信する送信手段
として機能させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、ストレージ・クラウドの利用者が意識することなく、複数のストレージ・クラウドを安全にかつ操作性を犠牲にせずに利用することを可能にすることを課題とし、クラウド利用端末内に格納されうる実体ファイルを格納するための少なくとも１つのストレージ・クラウドを当該利用端末にネットワークを介して接続される複数のストレージ・クラウドから選択する技法を提供し、当該技法は、当該利用端末上の仮想フォルダ中に実体ファイルが生成又は保存されることに応じて、当該実体ファイルが持つ属性若しくはコンテキスト又は上記仮想フォルダが持つ属性と上記複数のストレージ・クラウドが持つ各属性とを参照し、所定のルールを満たすように、上記実体ファイルを格納するための１つのストレージ・クラウドを上記複数のストレージ・クラウドから選択することを含むことが開示されている。
【０００３】
特許文献２には、プロバイダにより運営されるインターネット・インフラストラクチャである、配信プラットフォームにより、特定の第三者に対する大規模なＨＴＴＰベースのサービスを可能とし、プラットフォームはこのサービスを１つ以上のクラウド・プロバイダに提供し、このアプローチによれば、ＣＤＮプラットフォーム・プロバイダ（第一者）がクラウド・プロバイダ（第二者）に代わって第三者トラフィックに対してサービスすることが可能になり、動作時に、エッジ・サーバー処理機構はＤＮＳを利用して、未知のホスト・ヘッダを含むリクエストに対してサービスするべきか否かを判断し、応答を出す前に、ホスト・ヘッダに含まれる名前が認識されないと仮定して、エッジ・サーバーはホスト・ヘッダを解決し、中間応答、典型的にはエイリアス（例えばＤＮＳ  ＣＮＡＭＥ）のリストを取得し、エッジ・サーバーは返ってきたＣＮＡＭＥリストをチェックし、オリジナル・リクエストへの応答の仕方を決定し、たった１つのエッジ構成を使用することで、ＣＤＮサービス・プロバイダはクラウド・プロバイダの特定第三者のトラフィックに対する即時プロビジョニングをサポートできることが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−０１０４６５号公報
【特許文献２】特表２０１５−５０１４９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来技術においては、格納を要求されたコンテンツは予めいずれかの格納先に格納され、そのコンテンツにアクセスしたいユーザーはその格納先へ要求を行う。しかし、格納先はそれぞれに特性を持ち、またユーザーはさまざまな場所（さまざまな設定を施された環境）からアクセスしてくるため、当該格納先にユーザーがアクセスできない場合がある。
本発明は、コンテンツを配信したい人が、配信先のユーザーがアクセス可能な格納先を知らなくても、該ユーザーがアクセス可能な、複数の格納先のいずれかに当該コンテンツを格納することができる情報処理装置及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
【０００７】
請求項１の発明は、複数の格納先のそれぞれについて、ユーザーがアクセス可能であったか否かを少なくとも示す履歴を記憶する記憶手段と、前記ユーザーからのコンテンツについての取得要求を受け付ける受付手段と、前記取得要求を受け付けたことに応じて、前記記憶手段に記憶されている履歴に基づいて、前記ユーザーがアクセス可能であった格納先に前記コンテンツを格納する格納手段と、前記格納手段が前記コンテンツを格納した格納先にアクセスするための情報を、前記ユーザーに送信する送信手段と、を有する情報処理装置である。
【０００８】
請求項２の発明は、前記ユーザーに、前記コンテンツを格納し得る格納先にアクセスするためのモジュールを送信する第２の送信手段をさらに有し、前記記憶手段は、前記モジュールにより行われたアクセスの結果を履歴として記憶する、請求項１に記載の情報処理装置である。
【０００９】
請求項３の発明は、前記格納手段は、前記コンテンツを変換して、前記格納先に格納する、請求項１又は２に記載の情報処理装置である。
【００１０】
請求項４の発明は、前記複数の格納先のアクセシビリティの度合いを示す情報を少なくとも含む属性を記憶する第２の記憶手段をさらに有し、前記第２の記憶手段に記憶される属性は、前記格納手段によって格納されたコンテンツに対するアクセスの履歴に基づいて更新される、請求項１から３のいずれか一項に記載の情報処理装置である。
【００１１】
請求項５の発明は、前記コンテンツの格納要求を受け付ける第２の受付手段をさらに有し、前記格納手段は、前記格納要求を受け付けたことに応じて、前記コンテンツを前記複数の格納先の中のデフォルトの格納先に格納する、請求項１から４のいずれか一項に記載の情報処理装置である。
【００１２】
請求項６の発明は、前記デフォルトの格納先は、前記格納手段によって格納されたコンテンツに対するアクセスの履歴に基づいて更新される、請求項５に記載の情報処理装置である。
【００１３】
請求項７の発明は、コンピュータを、複数の格納先のそれぞれについて、ユーザーがアクセス可能であったか否かを少なくとも示す履歴を記憶する記憶手段と、前記ユーザーからのコンテンツについての取得要求を受け付ける受付手段と、前記取得要求を受け付けたことに応じて、前記記憶手段に記憶されている履歴に基づいて、前記ユーザーがアクセス可能であった格納先に前記コンテンツを格納する格納手段と、前記格納手段が前記コンテンツを格納した格納先にアクセスするための情報を、前記ユーザーに送信する送信手段として機能させるための情報処理プログラムである。
【発明の効果】
【００１４】
請求項１の情報処理装置によれば、コンテンツを配信したい人が、配信先のユーザーがアクセス可能な格納先を知らなくても、該ユーザーがアクセス可能な、複数の格納先のいずれかに当該コンテンツを格納することができる。
【００１５】
請求項２の情報処理装置によれば、複数の格納先のそれぞれについて、ユーザーによるアクセス操作なしに、そのユーザーがアクセス可能か否かの履歴を取得することができる。
【００１６】
請求項３の情報処理装置によれば、コンテンツを変換して、格納先に格納することができる。
【００１７】
請求項４の情報処理装置によれば、アクセシビリティの度合いを示す情報を用いて格納先を決定することができる。
【００１８】
請求項５の情報処理装置によれば、取得要求を受け付けたときに、コンテンツを他の格納先に格納させることを減少させることができる。
【００１９】
請求項６の情報処理装置によれば、デフォルトの格納先を、記憶手段に記憶されている履歴に基づいて更新することができる。
【００２０】
請求項７の情報処理プログラムによれば、コンテンツを配信したい人が、配信先のユーザーがアクセス可能な格納先を知らなくても、該ユーザーがアクセス可能な、複数の格納先のいずれかに当該コンテンツを格納することができる。
【図面の簡単な説明】
【００２１】
【図１】第１の実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態を利用したシステム構成例を示す説明図である。
【図３】第１の実施の形態による処理例を示すフローチャートである。
【図４】第１の実施の形態による処理例を示す説明図である。
【図５】第１の実施の形態による処理例を示す説明図である。
【図６】第１の実施の形態による処理例を示すフローチャートである。
【図７】ファイル配置先評価テーブルのデータ構造例を示す説明図である。
【図８】ファイル属性テーブルのデータ構造例を示す説明図である。
【図９】アクセス履歴テーブルのデータ構造例を示す説明図である。
【図１０】第１の実施の形態による処理例を示す説明図である。
【図１１】第２の実施の形態の構成例についての概念的なモジュール構成図である。
【図１２】第３の実施の形態の構成例についての概念的なモジュール構成図である。
【図１３】ＵＲＬ発行履歴テーブルのデータ構造例を示す説明図である。
【図１４】第４の実施の形態の構成例についての概念的なモジュール構成図である。
【図１５】第５の実施の形態の構成例についての概念的なモジュール構成図である。
【図１６】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００２２】
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
＜＜第１の実施の形態＞＞
図１は、第１の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するという意味である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、２以上の値（もちろんのことながら、全ての値も含む）が同じであってもよい。また、「Ａである場合、Ｂをする」という意味を有する記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００２３】
第１の実施の形態である情報処理装置１００は、コンテンツ（以下、ファイルともいう）を他のユーザーにアクセス可能にするものであって、図１の例に示すように、アクセスチェックモジュール１１０、ファイル取得ＵＲＬ生成モジュール１２０、ファイル配置先決定モジュール１３０、ファイル配置先変更モジュール１４０、ファイル配置先評価記憶モジュール１５０、ファイル属性記憶モジュール１６０、アクセス履歴記憶モジュール１７０を有している。コンテンツの格納先として、図１の例では、４つのストレージ（レポジトリともいわれる）を示しているが、２以上の複数であればいくつであってもよい。また、全てのストレージが、ユーザー（又はユーザー端末１９５）からアクセス可能である必要はない。ストレージとして、例えば、クラウドサーバー等が含まれる。また、コンテンツとは、テキストデータ、図形データ、画像データ、動画データ、音声データ等の電子データ（ファイルとも言われる）、又はこれらの組み合わせであり、記憶、編集及び検索等の対象となり、システム又は利用者間で個別の単位として交換できるものをいい、これらに類似するものを含む。具体的には、文書作成プログラムによって作成された文書等がある。
【００２４】
アクセスチェックモジュール１１０は、ファイル配置先評価記憶モジュール１５０、アクセス履歴記憶モジュール１７０、ウェブサーバー１９０、ユーザー端末１９５と接続されている。アクセスチェックモジュール１１０は、各ストレージに対するアクセス権を確認する。例えば、アクセスチェックモジュール１１０は、ユーザーがコンテンツを格納し得る格納先にアクセスするためのモジュールをそのユーザーに送信する。なお、ここでの「ユーザーに送信する」とは、モジュールをユーザーが使用しているユーザー端末に対して送信することである。モジュールは、例えば、トークン付きコードである。例えば、ウェブページ内にそのトークン付きコードを埋め込んでおき、ユーザー端末にそのウェブページを送信し、ユーザー端末でそのウェブページが開かれた場合に、トークン付きコードが実行され、格納先へのアクセスが行われる。ここで、ユーザーによる操作として、そのウェブページを開くための操作は必要であるが、格納先へアクセスするための操作は不要である。つまり、格納先へアクセスすることを目的としたユーザーによる意識的な操作は不要である。
【００２５】
ファイル取得ＵＲＬ生成モジュール１２０は、ファイル配置先決定モジュール１３０、ユーザー端末１９５と接続されている。ファイル取得ＵＲＬ生成モジュール１２０は、アクセスのエンドポイントを決定する。例えば、ユーザーからのコンテンツについての取得要求を受け付ける。
【００２６】
ファイル配置先決定モジュール１３０は、ファイル取得ＵＲＬ生成モジュール１２０、ファイル配置先変更モジュール１４０、ファイル配置先評価記憶モジュール１５０、ファイル属性記憶モジュール１６０、アクセス履歴記憶モジュール１７０と接続されている。ファイル配置先決定モジュール１３０は、コンテンツを配置するストレージを決定する。取得要求を受け付けたことに応じて、アクセス履歴記憶モジュール１７０に記憶されている履歴に基づいて、ユーザーがアクセス可能であった格納先にコンテンツを格納するように、ファイル配置先変更モジュール１４０を制御する。
そして、ファイル配置先決定モジュール１３０は、ファイル配置先変更モジュール１４０がコンテンツを格納した格納先にアクセスするための情報を、ユーザーに送信する。例えば、ユーザーが使用しているユーザー端末に、コンテンツを格納した格納先のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）が記載されたウェブページを送信すること等がある。
【００２７】
ファイル配置先変更モジュール１４０は、ファイル配置先決定モジュール１３０、サーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８と接続されている。ファイル配置先変更モジュール１４０は、コンテンツを配置するストレージを変更する。例えば、ファイル配置先決定モジュール１３０の制御にしたがって、ユーザーがアクセス可能であった格納先にコンテンツを格納する。
【００２８】
ファイル配置先評価記憶モジュール１５０は、アクセスチェックモジュール１１０、ファイル配置先決定モジュール１３０と接続されている。ファイル配置先評価記憶モジュール１５０は、ストレージの評価を管理する。例えば、複数の格納先のアクセシビリティの度合いを示す情報を少なくとも含む属性を記憶する。また、アクセシビリティの度合いを示す情報を、ユーザー毎に記憶するようにしてもよい。例えば、後述する図７の例に示すファイル配置先評価テーブル７００等を記憶している。
ファイル属性記憶モジュール１６０は、ファイル配置先決定モジュール１３０と接続されている。ファイル属性記憶モジュール１６０は、コンテンツの属性を管理する。例えば、後述する図８の例に示すファイル属性テーブル８００等を記憶している。
アクセス履歴記憶モジュール１７０は、アクセスチェックモジュール１１０、ファイル配置先決定モジュール１３０と接続されている。アクセス履歴記憶モジュール１７０は、コンテンツへのアクセス履歴を管理する。例えば、複数の格納先のそれぞれについて、ユーザーがアクセス可能であったか否かを少なくとも示す履歴を記憶する。例えば、後述する図９の例に示すアクセス履歴テーブル９００等を記憶している。
また、アクセス履歴記憶モジュール１７０は、アクセスチェックモジュール１１０によってユーザーに送信されたモジュールにより行われたアクセスの結果を履歴として記憶するようにしてもよい。
【００２９】
サーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８は、ファイル配置先変更モジュール１４０、ユーザー端末１９５と接続されている。サーバーストレージ１８２等は、コンテンツを記憶する。例えば、サーバーストレージ１８２は、速度、コスト、セキュリティリスク、アクセシビリティ等において他のストレージと比較して優れているが、容量が少ないものであり、メインストレージ１８４は、速度、容量、アクセシビリティ等において他のストレージと比較して優れているが、コスト、セキュリティリスクの面で劣っているものであり、サブストレージ１８６は、速度、コスト、容量等において他のストレージと比較して優れているが、セキュリティリスク、アクセシビリティの面で劣っているものであり、バックアップストレージ１８８は、コスト、容量等において他のストレージと比較して優れているが、速度、セキュリティリスク、アクセシビリティの面で劣っているものである。このように、ストレージの種類によって、種々の特徴があり、特に、ユーザー（又はユーザー端末１９５）によってアクセス可能であったり、アクセス不可能（ログイン不可等を含む）であったりする。
【００３０】
ウェブサーバー１９０は、アクセスチェックモジュール１１０、ユーザー端末１９５と接続されている。ウェブサーバー１９０は、ユーザー端末１９５からアクセスされ、ウェブページ等を送信する。また、そのウェブページ内の一部を情報処理装置１００によって作成される。そして、そのウェブページ内には、サーバーストレージ１８２等に格納されているコンテンツにアクセスするための情報が埋め込まれていたりする。
ユーザー端末１９５は、アクセスチェックモジュール１１０、ファイル取得ＵＲＬ生成モジュール１２０、サーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８、ウェブサーバー１９０と接続されている。ユーザー端末１９５は、ユーザーによって操作される端末であって、ウェブサーバー１９０、情報処理装置１００、サーバーストレージ１８２等と通信可能であり、ブラウザーを搭載している。例えば、ＰＣ（パーソナルコンピュータ）、携帯端末（携帯電話、スマートフォン等を含む）等である。
情報処理装置１００とウェブサーバー１９０を一体として構成してもよい。つまり、ウェブサーバー１９０内に情報処理装置１００を含めて構成してもよい。
【００３１】
図２は、本実施の形態を利用したシステム構成例を示す説明図である。
情報処理装置１００、サーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８、ウェブサーバー１９０Ａ、ウェブサーバー１９０Ｂ、ユーザー端末１９５Ａ、ユーザー端末１９５Ｂは、通信回線２９０を介してそれぞれ接続されている。通信回線２９０は、無線、有線、これらの組み合わせであってもよく、例えば、通信インフラとしてのインターネット、イントラネット等であってもよい。
ユーザーＢ（ユーザー端末１９５Ｂの操作者）が、ユーザーＡ（ユーザー端末１９５Ａの操作者）に対してコンテンツを渡す場合について説明する。ユーザーＢがアクセス可能なストレージＢにコンテンツを記憶させる。しかし、ユーザーＡはストレージＢにアクセスできないが、ストレージＡにアクセス可能である。この場合に、情報処理装置１００は、ユーザーＡによるアクセス履歴（ユーザーＡの意思によるアクセス操作によって発生するアクセス履歴でなくてもよい）を用いて、アクセス可能なストレージＡを抽出し、ストレージＢに格納されているコンテンツをストレージＡに複製し、そのストレージＡ内のコンテンツにアクセスするための情報（ＵＲＬ等）を、ユーザーＡに送信する。
【００３２】
図３は、第１の実施の形態による処理例を示すフローチャートである。なお、ここでストレージ３８０には、サーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８が含まれる。
ステップＳ３０２では、ユーザー端末１９５は、ユーザーの操作に応じて、ウェブサーバー１９０に対して、画面表示の取得処理を行う。具体的には、ウェブページの表示要求が該当する。
ステップＳ３０４では、ウェブサーバー１９０は、アクセスチェックモジュール１１０に対して、アクセスチェック用コードの生成を依頼する。具体的には、このユーザーによるサーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８へのアクセスを自動的に確認するためのコード生成を依頼する。
ステップＳ３０６では、アクセスチェックモジュール１１０は、ファイル配置先評価記憶モジュール１５０に対して、ストレージ情報取得を行う。
ステップＳ３０８では、ファイル配置先評価記憶モジュール１５０は、アクセスチェックモジュール１１０に対して、ストレージ情報を返却する。
ステップＳ３１０では、アクセスチェックモジュール１１０は、ウェブサーバー１９０に対して、ストレージ情報を利用して、アクセスチェック用コードの生成処理を行う。
ステップＳ３１２では、ウェブサーバー１９０は、ユーザー端末１９５に対して、画面表示を行う。具体的には、アクセスチェック用コードが埋め込まれたウェブページの表示を行う。
【００３３】
ステップＳ３１４では、ユーザー端末１９５は、ストレージ３８０に対して、アクセスチェック用コードを用いて、各ストレージ（サーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８）に対するアクセスを行う。
ステップＳ３１６では、ストレージ３８０は、ユーザー端末１９５に対して、アクセス結果（アクセス可能、アクセス不可能）を送信する。
ステップＳ３１８では、ユーザー端末１９５は、アクセスチェックモジュール１１０に対して、アクセス結果を送信する。
ステップＳ３２０では、アクセスチェックモジュール１１０は、アクセス履歴記憶モジュール１７０に対して、アクセス結果の登録を行う。例えば、後述する図９の例に示すアクセス履歴テーブル９００に登録する。
処理Ａ３００（ステップＳ３０２〜ステップＳ３２０）は、１〜Ｎ回繰り返し行う。詳細については、図４、５、１０を用いて後述する。
【００３４】
ステップＳ３５２では、ユーザー端末１９５は、ウェブサーバー１９０に対して、対象とするコンテンツ（ユーザー端末１９５のユーザーがダウンロードしようとしているコンテンツ）をダウンロードするためのＵＲＬの取得依頼を行う。
ステップＳ３５４では、ウェブサーバー１９０は、ファイル取得ＵＲＬ生成モジュール１２０に対して、ＵＲＬ生成依頼を行う。
ステップＳ３５６では、ファイル取得ＵＲＬ生成モジュール１２０は、ファイル配置先決定モジュール１３０に対して、コンテンツの配置先（ストレージ）の最適化を行う。ここでの最適化とは、少なくともユーザー端末１９５からアクセス可能なストレージであって、そのコンテンツを格納するのに適したストレージを選択することである。
ステップＳ３５８では、ファイル配置先決定モジュール１３０は、ファイル属性記憶モジュール１６０に対して、コンテンツの配置先を決定するための情報の取得を行う。
ステップＳ３６０では、ファイル属性記憶モジュール１６０は、ファイル配置先決定モジュール１３０に対して、結果を通知する。
ステップＳ３６２では、ファイル配置先決定モジュール１３０は、アクセス履歴記憶モジュール１７０に対して、ユーザー端末１９５からストレージ３８０へのアクセス履歴（処理Ａ３００によってアクセス履歴記憶モジュール１７０に記憶された履歴）の取得を行う。
ステップＳ３６４では、アクセス履歴記憶モジュール１７０は、ファイル配置先決定モジュール１３０に対して、結果を通知する。この結果によって、ステップＳ３６６又はステップＳ３６８のいずれかに処理を移す。
【００３５】
ステップＳ３６６では、ファイル配置先決定モジュール１３０は、ファイル取得ＵＲＬ生成モジュール１２０に対して、コンテンツの格納先がユーザー端末１９５からアクセス可能である場合（配置先アクセス可）、現在のコンテンツの配置先（具体的には、そのコンテンツにアクセスするためのＵＲＬ）を返却する。
ステップＳ３６８では、ファイル配置先決定モジュール１３０は、コンテンツの格納先がユーザー端末１９５からアクセス不可能である場合（配置先アクセス不可）、ファイル配置先の最適化を行う。つまり、対象としているコンテンツをユーザー端末１９５がアクセス可能なストレージへ格納する。この処理として、ステップＳ３７０からステップＳ３７６の処理を行う。
ステップＳ３７０では、ファイル配置先決定モジュール１３０は、ファイル配置先評価記憶モジュール１５０に対して、ストレージ情報の取得依頼を行う。
ステップＳ３７２では、ファイル配置先評価記憶モジュール１５０は、ファイル配置先決定モジュール１３０に対して、結果（ストレージ情報）を通知する。
ステップＳ３７４では、ファイル配置先決定モジュール１３０は、ストレージ３８０に対して、コンテンツを別ストレージへ複製する。具体的には、ステップＳ３７２で取得したストレージ情報を用いて、ユーザー端末１９５が少なくともアクセス可能なストレージを抽出し、そのストレージへ対象としているコンテンツを格納する。
ステップＳ３７６では、ストレージ３８０は、ファイル配置先決定モジュール１３０に対して、結果（そのストレージに格納できたか否かを示す情報）を通知する。
ステップＳ３７８では、ファイル配置先決定モジュール１３０は、ファイル取得ＵＲＬ生成モジュール１２０に対して、変更したコンテンツ配置先（具体的には、そのコンテンツにアクセスするためのＵＲＬ）を返却する。
【００３６】
ステップＳ３８０では、ファイル取得ＵＲＬ生成モジュール１２０は、ウェブサーバー１９０に対して、ＵＲＬ生成結果を送信する。ステップＳ３６６又はステップＳ３７８の処理結果を利用して、コンテンツが格納されたＵＲＬを生成して、ウェブサーバー１９０に送信する。
ステップＳ３８２では、ウェブサーバー１９０は、ユーザー端末１９５に対して、ダウンロードＵＲＬを送信する。具体的には、対象としているコンテンツをダウンロードするためのＵＲＬをウェブページ内に埋め込んで送信する。
ステップＳ３８４では、ユーザー端末１９５は、ストレージ３８０に対して、ダウンロードＵＲＬを用いてコンテンツの取得を行う。
ステップＳ３８６では、ストレージ３８０は、ユーザー端末１９５に対して、コンテンツを返却する。
処理Ｂ３５０（ステップＳ３５２〜ステップＳ３８６）は、処理Ａ３００の後に行われる。詳細については、図６、１０を用いて後述する。
【００３７】
図４、図５は、第１の実施の形態による処理例（アクセス履歴を生成する処理例）を示す説明図である。この処理は、ウェブページのレンダリングをトリガに（ここではウェブページ４２０を表示することを契機として）、クライアント（ユーザー端末１９５内のブラウザー）とウェブサーバー１９０の間で自動的、バックグラウンド処理として行われる。
そのため、ストレージアクセス（ステップＳ４１０）や、アクセス結果の記録（ステップＳ４１２）を、ユーザー端末１９５のユーザーが意識して実行する必要はない。
実施形態の一例としては、図４、５に記載のようなｊａｖａｓｃｒｉｐｔ、特にｏｎｌｏａｄ処理で行わせることが考えられる。この場合、ブラウザーがページを表示し終わったタイミングで、自動的に当該コードがロードされ、実行される。
図４は、第１の実施の形態による処理例を示す説明図である。
ユーザー端末１９５の液晶ディスプレイ等の表示装置に、ブラウザー画面４１０を表示する。
ステップＳ４０２では、ユーザー端末１９５は、ウェブサーバー１９０に対して、ユーザーの操作に応じて、ウェブページ情報リクエストを行う。
ステップＳ４０４では、ウェブサーバー１９０は、アクセスチェックモジュール１１０に対して、トークン付きコードリクエストを行う。
ステップＳ４０６では、アクセスチェックモジュール１１０は、ファイル配置先評価記憶モジュール１５０、アクセス履歴記憶モジュール１７０内の情報を用いてトークン付きコードを生成し、ウェブサーバー１９０に対して、そのトークン付きコードを返却する。
ステップＳ４０８では、ウェブサーバー１９０は、ユーザー端末１９５に対して、トークン付きコードを埋め込んだウェブページを返却する。
【００３８】
図５は、第１の実施の形態による処理例を示す説明図である。図４の例に示した処理によって、ブラウザー画面４１０には、ウェブページ４２０が表示されている。そして、ウェブページ４２０は、例えば、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記載されたウェブページであり、トークン付コードとして、
<script>
http://ServerStorage/check.js?token=XXX
http://SubExternalStorage/check.js?token=XXX
</script>
が埋め込まれている（ウェブページ４２０内にトークン付コードが記載されている）。
ステップＳ４１０では、ユーザー端末１９５は、ウェブページ４２０の表示をトリガとして、サーバーストレージ１８２及びメインストレージ１８４に対して、トークン付きコードを用いてストレージアクセスを行う。
ステップＳ４１２では、ユーザー端末１９５は、アクセスチェックモジュール１１０に対して、アクセス結果の書き込みを行う。
図４、５の例に記載したようなｊａｖａｓｃｒｉｐｔ、特にｏｎｌｏａｄ処理で行わせた場合、ブラウザーがウェブページ４２０を表示し終わったタイミングで、自動的にトークン付きコードがロードされ、実行されることとなる。
【００３９】
図６は、第１の実施の形態による処理例を示すフローチャートである。この処理は、ファイル配置先決定モジュール１３０によって行われる。図４、図５の処理が行われた後に、行われる処理である。
ステップＳ６０２では、ファイル属性記憶モジュール１６０よりファイル情報、アクセス履歴記憶モジュール１７０よりストレージへのアクセス履歴を取得する。例えば、ファイル属性記憶モジュール１６０にはファイル属性テーブル８００が記憶されており、アクセス履歴記憶モジュール１７０にはアクセス履歴テーブル９００が記憶されている。
【００４０】
図８は、ファイル属性テーブル８００のデータ構造例を示す説明図である。ファイル属性テーブル８００は、ファイル欄８１０、ポジション欄８２０、パス欄８３０、セキュリティ欄８４０を有している。ファイル欄８１０は、ファイル（ファイルを本実施の形態で一意に識別するための情報、ファイル名等）を記憶している。ポジション欄８２０は、そのファイルが格納されているポジション（ストレージ）を記憶している。パス欄８３０は、そのファイルが格納されているパス（ストレージ内におけるパス）を記憶している。セキュリティ欄８４０は、そのファイルが要求されているセキュリティを記憶している。例えば、「Ｈｉｇｈ」である場合は、そのファイルを格納するストレージに対しても高いセキュリティが確保されている必要がある。ストレージを変更する場合（他のストレージに複製する場合）、変更先のストレージに対しても現在のポジション欄８２０のセキュリティ欄８４０と同程度のセキュリティが確保されていることを条件として、ストレージを選択するようにしてもよい。
【００４１】
図９は、アクセス履歴テーブル９００のデータ構造例を示す説明図である。アクセス履歴テーブル９００は、トークン欄９１０、ストレージ欄９２０、結果欄９３０を有している。トークン欄９１０は、トークン付きコードを記憶している。ストレージ欄９２０は、ストレージを記憶している。結果欄９３０は、そのトークン付きコードによって、そのストレージへアクセスした結果を記憶している。図５の例を用いて前述した処理によって、アクセス履歴テーブル９００が生成される。
【００４２】
ステップＳ６０４では、ユーザーがアクセス可能な場所にファイルが存在するか否かを確認し、アクセス可能な場合（ステップＳ６０４でＹＥＳ）は、ファイル配置先情報に記録されている格納パス（ＵＲＬ）をファイルＵＲＬとして決定し、処理をステップＳ６１２に移す。アクセス不可能な場合（ステップＳ６０４でＮＯ）は、配置先変更処理（ステップＳ６０６以降の処理）へ処理を移す。具体的には、ファイル属性テーブル８００のポジション欄８２０を用いて、対象となっているファイルが格納されているストレージは、ユーザーがアクセス可能なストレージであるかをアクセス履歴テーブル９００を用いて確認することとなる。
【００４３】
ステップＳ６０６では、ファイル配置先評価記憶モジュール１５０より、利用可能なストレージ情報を取得する。例えば、ファイル配置先評価記憶モジュール１５０にはファイル配置先評価テーブル７００が記憶されている。
図７は、ファイル配置先評価テーブル７００のデータ構造例を示す説明図である。ファイル配置先評価テーブル７００は、ストレージ種別欄７１０、速度欄７２０、コスト欄７３０、容量欄７４０、セキュリティリスク欄７５０、アクセシビリティ欄７６０を有している。ストレージ種別欄７１０は、ストレージ種別（サーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８の別）を記憶している。速度欄７２０は、そのストレージにおける速度を記憶している。コスト欄７３０は、そのストレージにおけるコストを記憶している。容量欄７４０は、そのストレージにおける容量を記憶している。セキュリティリスク欄７５０は、そのストレージにおけるセキュリティリスクを記憶している。アクセシビリティ欄７６０は、そのストレージにおけるアクセシビリティを記憶している。なお、ファイル配置先評価テーブル７００内の情報は、ストレージの管理者等によって予め設定されている。
【００４４】
ステップＳ６０８では、格納先を再決定する。ステップＳ６０２、ステップＳ６０４、ステップＳ６０６にて取得した情報を利用し、予め定められた規則（ロジック）に基づき決定する。例えば、『「ユーザーがアクセス可能」かつ「ファイルセキュリティを満たす」上で、「コストが安い」ストレージを優先する』等の規則にしたがう。この規則は、例えば、ユーザー毎、コンテンツ種別毎、ユーザーとコンテンツ種別の組み合わせ毎に予め定めるようにしてもよい。
ステップＳ６１０では、ファイル配置先変更モジュール１４０を利用し、ファイルを別ストレージ（前述の規則に適合するストレージ）に複製する。つまり、ファイルの配置先を変更することとなる。
ステップＳ６１２では、変更されたファイル配置先を示すＵＲＬを返却する。
この後、ユーザーは、そのＵＲＬを用いてストレージ内のコンテンツにアクセスする。前述の規則に適合しているストレージなので、アクセス可能である。また、ユーザー毎の規則にしたがっている場合は、ユーザーにとって、適したストレージが用いられていることになる。
【００４５】
図１０は、第１の実施の形態による処理例を示す説明図である。この例では、ユーザーの操作に応じて、ユーザー端末１９５内の表示装置に、順に、ログイン画面１００２、トップ画面１００４、ダウンロード画面１００６が表示され、ファイルダウンロード操作１００８が行われるまでを示している。
【００４６】
ステップＳ１０１２では、ユーザー端末１９５は、Ｗｅｂページ（トップ画面１００４、ダウンロード画面１００６）の表示を行った場合に、アクセスチェックモジュール１１０へのリクエストを発行する。
ステップＳ１０１４Ａ、ステップＳ１０１４Ｂでは、アクセスチェックモジュール１１０は、ユーザーを特定可能なトークンが付与されたファイル配置先候補へのトークン付コード（アクセスチェック用コード）を発行し、そのトークン付コードを含むウェブページ（トップページ１００４Ｐ、ダウンロードページ１００６Ｐ）をユーザー端末１９５へ配信する。
なお、トップページ１００４Ｐは、例えば、ＨＴＭＬで記載されたウェブページであり、トークン付コードとして、
<script>
http://ServerStorage/check.js?token=XXX
http://SubExternalStorage/check.js?token=XXX
</script>
が埋め込まれている（トップページ１００４Ｐ内にトークン付コードが記載されている）。
そして、ダウンロードページ１００６Ｐは、例えば、ＨＴＭＬで記載されたウェブページであり、トークン付コードとして、
<script>
http://SubExternalStorage/check.js?token=XXX
http://BackupStorage/check.js?token=XXX
</script>
が埋め込まれている（ダウンロードページ１００６Ｐ内にトークン付コードが記載されている）。
【００４７】
ステップＳ１０１６Ａ、ステップＳ１０１６Ｂでは、ユーザー端末１９５は、トークン付コードによって各ストレージに対してアクセスする。この例では、トップページ１００４Ｐでは、サーバーストレージ１８２、メインストレージ１８４へのアクセスが発生し、ダウンロードページ１００６Ｐでは、サブストレージ１８６、バックアップストレージ１８８へのアクセスが発生する。
ステップＳ１０１８では、トークン付コードより各ストレージに対するアクセスが成功した場合、アクセス履歴記憶モジュール１７０へ成功レコードを、失敗の場合は失敗レコードを発行する。この例の場合、そのアクセス結果は、メインストレージ１８４へはアクセス不可であり、その他のストレージ（サーバーストレージ１８２、サブストレージ１８６、バックアップストレージ１８８）へはアクセス可能であって、これらの結果をアクセス履歴記憶モジュール１７０内のアクセス履歴テーブル９００に記憶させる。
ステップＳ１０１８に関し、本実施の形態ではアクセスチェックモジュール１１０がアクセスログ登録を代行するように記載しているが、ユーザー端末１９５自らアクセス履歴を登録してもよい。つまり、アクセス成功／失敗の判定結果をアクセス履歴記憶モジュール１７０に記憶させればよい。
【００４８】
ステップＳ１０２０では、ファイル取得時には、ユーザー端末１９５はファイルダウンロード操作１００８によりファイル取得ＵＲＬ生成モジュール１２０を呼び出す。
ステップＳ１０２２では、ファイル取得ＵＲＬ生成モジュール１２０は、ファイル配置先決定モジュール１３０を呼び出す。ファイル配置先決定モジュール１３０は、以下のステップにより決定された配置先ＵＲＬを返却する。
１．ファイル配置先評価記憶モジュール１５０より当該ファイルの配置先を取得する。
２．アクセス履歴記憶モジュール１７０より、ユーザーの各ストレージに対するアクセシビリティ（アクセス可能か否か）を判断する。
３．当該ファイルがユーザーのアクセス可能な領域に存在しない場合は、ステップＳ１０２４にて、ファイル配置先変更モジュール１４０を利用し、アクセス可能な領域へファイルを複製する。複製先は、ファイル配置先評価記憶モジュール１５０内のファイル配置先評価テーブル７００、ファイル属性記憶モジュール１６０内のファイル属性テーブル８００を考慮した評価（規則）に基づき、決定する。例えば、ファイル属性テーブル８００のセキュリティ欄８４０よりセキュリティを高く保つべきファイルは、ファイル配置先評価テーブル７００のセキュリティリスク欄７５０よりセキュリティリスクの低いレポジトリを選択する等の規則にしたがう。
【００４９】
なお、アクセス可能、アクセス不可の情報を得るのに、ログインしてからファイルダウンロード操作開始までの間に、各ストレージへのアクセスを試みているが、過去（今回のログイン前）における各ストレージへのアクセス結果を利用するようにしてもよい。ただし、最新のアクセス結果を利用した処理を行うために、ログインしてからファイルダウンロード操作開始までの間に、各ストレージへのアクセスを試みるようにした方がよい。
【００５０】
＜＜第２の実施の形態＞＞
図１１は、第２の実施の形態の構成例についての概念的なモジュール構成図である。
情報処理装置１１００は、アクセスチェックモジュール１１０、ファイル取得ＵＲＬ生成モジュール１２０、ファイル配置先決定モジュール１３０、ファイル配置先変更モジュール１４０、ファイル形式変更モジュール１１４０、ファイル配置先評価記憶モジュール１５０、ファイル属性記憶モジュール１６０、アクセス履歴記憶モジュール１７０を有しており、図１に例示の情報処理装置１００のファイル配置先変更モジュール１４０内に、ファイル形式変更モジュール１１４０を追加したものである。なお、前述の実施の形態と同種の部位には同一符号を付し重複した説明を省略する（以下、同様）。
ファイル形式変更モジュール１１４０は、ファイル配置先変更モジュール１４０がコンテンツを他のストレージに格納するにあたって、そのコンテンツを変換して、格納先に格納する。
【００５１】
ファイル配置先変更モジュール１４０は、配置先の変更（図１０の例におけるステップＳ１０２４に相当）だけでなく、ファイル形式変更モジュール１１４０によってコンテンツの形式を変更してから、格納する。例えば、セキュリティを高く保つ必要のあるコンテンツを、セキュリティリスクの高いストレージに対して配置する場合（コンテンツが要求するセキュリティレベルを満たしていないストレージに格納する場合）は、そのコンテンツに暗号化を行い、複製する。コンテンツが要求するセキュリティレベルを、ストレージが満たしているか否かを判断するのに、ファイル属性テーブル８００のセキュリティ欄８４０とファイル配置先評価テーブル７００のセキュリティリスク欄７５０とを比較すればよい。また、ストレージの容量（ファイル配置先評価テーブル７００の容量欄７４０）が少ない場合は、コンテンツを圧縮するようにしてもよい。
【００５２】
＜＜第３の実施の形態＞＞
図１２は、第３の実施の形態の構成例についての概念的なモジュール構成図である。
情報処理装置１２００は、アクセスチェックモジュール１１０、ファイル取得ＵＲＬ生成モジュール１２０、ファイル配置先決定モジュール１３０、ファイル配置先変更モジュール１４０、ファイル配置先評価記憶モジュール１５０、ファイル属性記憶モジュール１６０、アクセス履歴記憶モジュール１７０、評価補正モジュール１２１０、ＵＲＬ発行履歴記憶モジュール１２２０を有しており、図１に例示の情報処理装置１００に、評価補正モジュール１２１０、ＵＲＬ発行履歴記憶モジュール１２２０を追加したものである。
ファイル取得ＵＲＬ生成モジュール１２０は、ファイル配置先決定モジュール１３０、ユーザー端末１９５、ＵＲＬ発行履歴記憶モジュール１２２０と接続されている。
ファイル配置先変更モジュール１４０は、ファイル配置先決定モジュール１３０、サーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８、ＵＲＬ発行履歴記憶モジュール１２２０と接続されている。
ファイル配置先評価記憶モジュール１５０は、アクセスチェックモジュール１１０、ファイル配置先決定モジュール１３０、評価補正モジュール１２１０と接続されている。
【００５３】
評価補正モジュール１２１０は、ファイル配置先評価記憶モジュール１５０と接続されている。評価補正モジュール１２１０は、ファイル配置先評価記憶モジュール１５０に記憶される属性（アクセシビリティの度合いを示す情報）を、ＵＲＬ発行履歴記憶モジュール１２２０に記憶されている履歴に基づいて更新する。
ＵＲＬ発行履歴記憶モジュール１２２０は、ファイル取得ＵＲＬ生成モジュール１２０、ファイル配置先変更モジュール１４０と接続されている。ＵＲＬ発行履歴記憶モジュール１２２０は、ファイル配置先変更モジュール１４０によって格納されたコンテンツ（つまり、格納先が変更されたコンテンツ）に対するアクセスの履歴を記憶している。例えば、ＵＲＬ発行履歴テーブル１３００を記憶している。図１３は、ＵＲＬ発行履歴テーブル１３００のデータ構造例を示す説明図である。ＵＲＬ発行履歴テーブル１３００は、ＵＲＬ発行日時欄１３１０、ファイル欄１３２０、ダウンロードストレージ欄１３３０を有している。ＵＲＬ発行日時欄１３１０は、コンテンツへアクセスするためのＵＲＬの発行日時を記憶している。ファイル欄１３２０は、コンテンツを記憶している。ダウンロードストレージ欄１３３０は、そのコンテンツがダウンロードされたストレージを記憶している。
図１０の例に示したステップＳ１０２４にて格納先が変更されたことを示す情報と実際にその格納先が変更されたコンテンツに対してアクセスされたことを示す情報（ＵＲＬ発行履歴テーブル１３００）を用いて、次回以降の評価精度を向上させるために、ファイル配置先評価記憶モジュール１５０のアクセシビリティを補正する。例えば、実際にアクセスが行われた回数が予め定められた閾値より多い又は以上である場合は、アクセシビリティを高い値としてもよい。
【００５４】
＜＜第４の実施の形態＞＞
図１４は、第４の実施の形態の構成例についての概念的なモジュール構成図である。
情報処理装置１４００は、アクセスチェックモジュール１１０、ファイル取得ＵＲＬ生成モジュール１２０、ファイル配置先決定モジュール１３０、ファイル配置先変更モジュール１４０、ファイル配置先評価記憶モジュール１５０、ファイル属性記憶モジュール１６０、アクセス履歴記憶モジュール１７０、全体最適化モジュール１４１０、ＵＲＬ発行履歴記憶モジュール１２２０を有しており、図１に例示の情報処理装置１００に、全体最適化モジュール１４１０、ＵＲＬ発行履歴記憶モジュール１２２０を追加したものである。
ファイル配置先変更モジュール１４０は、ファイル配置先決定モジュール１３０、サーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８、ＵＲＬ発行履歴記憶モジュール１２２０、全体最適化モジュール１４１０と接続されている。
ファイル属性記憶モジュール１６０は、ファイル配置先決定モジュール１３０、全体最適化モジュール１４１０と接続されている。
【００５５】
全体最適化モジュール１４１０は、ファイル配置先変更モジュール１４０、ファイル属性記憶モジュール１６０と接続されている。全体最適化モジュール１４１０は、コンテンツの格納要求を受け付ける。そして、格納要求を受け付けたことに応じて、格納要求のあったコンテンツを複数の格納先の中のデフォルトの格納先に格納する。このデフォルトの格納先は、ＵＲＬ発行履歴記憶モジュール１２２０内の情報（ファイル配置先変更モジュール１４０によって格納されたコンテンツに対するアクセスの履歴）に基づいて更新する。
例えば、図１０の例に示したステップＳ１０２４にて格納先が変更された回数と、そのコンテンツに対して実際にアクセスされた回数を取得する。
そして、格納先を変更した回数が予め定められた閾値より多い又は以上の場合、コンテンツの複製ではなく（ユーザーからのアクセス要求があった場合ではなく）、コンテンツの最初の格納が行われる場合に、そのコンテンツを変更した格納先へ格納してしまう。これによって、以後、コンテンツの格納先の変更を行う処理回数が減少することとなり、ユーザーがアクセスするまでの処理が減少することとなる。
また、予め定められた期間内において、コンテンツに対して実際にアクセスされた回数が予め定められた閾値より少ない又は以下である場合は、アクセシビリティを重要視する必要はないため、より低コストのストレージへコンテンツを移動するようにしてもよい。
【００５６】
＜＜第５の実施の形態＞＞
なお、前述の各種の実施の形態を組み合わせてもよく（例えば、ある実施の形態内のモジュールを他の実施の形態内に追加する、入れ替えをする等も含む）、また、各モジュールの処理内容として背景技術で説明した技術を採用してもよい。
図１５は、第５の実施の形態の構成例についての概念的なモジュール構成図である。
情報処理装置１５００は、アクセスチェックモジュール１１０、ファイル取得ＵＲＬ生成モジュール１２０、ファイル配置先決定モジュール１３０、ファイル配置先変更モジュール１４０、ファイル形式変更モジュール１１４０、ファイル配置先評価記憶モジュール１５０、ファイル属性記憶モジュール１６０、アクセス履歴記憶モジュール１７０、評価補正モジュール１２１０、ＵＲＬ発行履歴記憶モジュール１２２０、全体最適化モジュール１４１０を有しており、図１に例示の情報処理装置１００に、ファイル形式変更モジュール１１４０、評価補正モジュール１２１０、ＵＲＬ発行履歴記憶モジュール１２２０、全体最適化モジュール１４１０を追加したものである。
全体最適化モジュール１４１０は、ファイル属性記憶モジュール１６０、ＵＲＬ発行履歴記憶モジュール１２２０、ファイル配置先変更モジュール１４０に接続されている。
【００５７】
なお、本実施の形態としてのプログラムが実行されるコンピュータ（情報処理装置１００、ウェブサーバー１９０、ユーザー端末１９５、サーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８）のハードウェア構成は、図１６に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。つまり、具体例として、処理部（演算部）としてＣＰＵ１６０１を用い、記憶装置としてＲＡＭ１６０２、ＲＯＭ１６０３、ＨＤ１６０４を用いている。ＨＤ１６０４として、例えばハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）を用いてもよい。アクセスチェックモジュール１１０、ファイル取得ＵＲＬ生成モジュール１２０、ファイル配置先決定モジュール１３０、ファイル配置先変更モジュール１４０、ファイル形式変更モジュール１１４０、評価補正モジュール１２１０、全体最適化モジュール１４１０等のプログラムを実行するＣＰＵ１６０１と、そのプログラムやデータを記憶するＲＡＭ１６０２と、本コンピュータを起動するためのプログラム等が格納されているＲＯＭ１６０３と、補助記憶装置（フラッシュメモリ等であってもよい）であるＨＤ１６０４（ファイル配置先評価記憶モジュール１５０、ファイル属性記憶モジュール１６０、アクセス履歴記憶モジュール１７０、ＵＲＬ発行履歴記憶モジュール１２２０、サーバーストレージ１８２、メインストレージ１８４、サブストレージ１８６、バックアップストレージ１８８等の機能を有する）と、キーボード、マウス、タッチパネル、マイク等に対する利用者の操作に基づいてデータを受け付ける受付装置１６０６と、ＣＲＴ、液晶ディスプレイ、スピーカー等の出力装置１６０５と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース１６０７、そして、それらをつないでデータのやりとりをするためのバス１６０８により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【００５８】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図１６に示すハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１６に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１６に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、携帯情報通信機器（携帯電話、スマートフォン、モバイル機器、ウェアラブルコンピュータ等を含む）、情報家電、ロボット、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００５９】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通等のために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ）、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、又は無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、又は別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して記録されていてもよい。また、圧縮や暗号化等、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００６０】
１００…情報処理装置
１１０…アクセスチェックモジュール
１２０…ファイル取得ＵＲＬ生成モジュール
１３０…ファイル配置先決定モジュール
１４０…ファイル配置先変更モジュール
１５０…ファイル配置先評価記憶モジュール
１６０…ファイル属性記憶モジュール
１７０…アクセス履歴記憶モジュール
１８２…サーバーストレージ
１８４…メインストレージ
１８６…サブストレージ
１８８…バックアップストレージ
１９０…ウェブサーバー
１９５…ユーザー端末
２９０…通信回線
１１００…情報処理装置
１１４０…ファイル形式変更モジュール
１２００…情報処理装置
１２１０…評価補正モジュール
１２２０…ＵＲＬ発行履歴記憶モジュール
１４００…情報処理装置
１４１０…全体最適化モジュール
１５００…情報処理装置
【図１】
2017016445.tif 000003
【図２】
2017016445.tif 000004
【図３】
2017016445.tif 000005
【図４】
2017016445.tif 000006
【図５】
2017016445.tif 000007
【図６】
2017016445.tif 000008
【図７】
2017016445.tif 000009
【図８】
2017016445.tif 000010
【図９】
2017016445.tif 000011
【図１０】
2017016445.tif 000012
【図１１】
2017016445.tif 000013
【図１２】
2017016445.tif 000014
【図１３】
2017016445.tif 000015
【図１４】
2017016445.tif 000016
【図１５】
2017016445.tif 000017
【図１６】
2017016445.tif 000018