(57)【要約】データオブジェクトの内容に基づくアクセスビヘイビアを反映することで、充分なヒット率および公平性を達成するキャッシュ装置を提供する。  データキャッシュ装置は、複数の第１データ項目を記憶する蓄積手段と、複数の第１データ項目の各々の内容に基づいて、各第１データ項目対応に当該第１データ項目を蓄積手段から棄却する優先度を決定する優先度決定手段を備える。
2012032921.tif 000002
【特許請求の範囲】
【請求項１】
複数の第１データ項目を記憶する蓄積手段と、
前記複数の第１データ項目の各々の内容に基づいて、各第１データ項目対応に当該第１データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定手段を備える、データキャッシュ装置。
【請求項２】
前記優先度決定手段は、第２データ項目の内容と、前記複数の第１データ項目の各々の内容に基づいて、第２データ項目と、前記複数の第１データ項目の各々との距離を求め、前記距離が長いほど、前記優先度を高くする、請求項１のデータキャッシュ装置。
【請求項３】
前記第１及び第２データ項目の内容は、位置に依存したデータであり、
前記優先度決定手段は、前記第２データ項目の位置と前記複数の第１データ項目の各々の位置とに基づいて前記距離を求める、請求項２のデータキャッシュ装置。
【請求項４】
前記複数の第１データ項目の内容の各々は、前記第２データ項目の内容から直接、または他の第１データ項目の内容を経由してリンクされているデータであり、
前記優先度決定手段は、前記第２データ項目から前記複数の第１データ項目の各々に到達する迄に経由するリンク数を前記距離として求める、請求項２のデータキャッシュ装置。
【請求項５】
前記複数の第１データ項目のおのおのは１以上の情報単位を包含し、
前記優先度決定手段は、前記複数の第１データ項目が包含する情報単位の数が少ないほど、前記優先度を高くする、請求項１乃至４のいずれかのデータキャッシュ装置。
【請求項６】
前記複数の第１データ項目のおのおのは地図データであり、
前記優先度決定手段は、縮尺が大きいほど第１データ項目の前記優先度を高くする、請求項５のデータキャッシュ装置。
【請求項７】
前記優先度決定手段は、前記複数の第１データ項目のおのおのの内容の消費速度が高いほど、前記優先度を高くする、請求項１乃至６の何れかのデータキャッシュ装置。
【請求項８】
前記優先度決定手段は、前記複数の第１データ項目のおのおのの内容の種別及び文字数に基づいて、前記優先度を決定する、請求項８のデータキャッシュ装置。
【請求項９】
コンピュータに、前記コンピュータが備える蓄積手段に、複数の第１データ項目を記憶する蓄積処理と、
前記複数の第１データ項目の各々の内容に基づいて、各第１データ項目対応に当該第１データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定処理を実行させる、プログラム。
【請求項１０】
蓄積手段に複数の第１データ項目を記憶し、
前記複数の第１データ項目の各々の内容に基づいて、各第１データ項目対応に当該第１データ項目を前記蓄積手段から棄却する優先度を決定するキャッシュ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データキャッシュ装置、データキャッシュ方法およびプログラムに関し、特に、新たなデータ項目の追加等に伴う、棄却するデータ項目の選択に関する。
【背景技術】
【０００２】
遠隔にあるサーバシステム等から、ネットワーク経由で取得したデータオブジェクトを後の利用のために保持しておくデータキャッシュを用いることが一般的である。例えば、ＷＥＢブラウザの殆どは、取得したデータオブジェクトをローカルファイルとして一定期間保持し、同じデータオブジェクトをリクエストされた際にキャッシュから再利用することで、ブラウザの応答性を改善している。
また、別の例としては、近年、安価に実現するために、地図データを装置内に格納せず、Ｇｏｏｇｌｅ（登録商標）マップのようなサービスからネットワーク経由で必要な地図データだけを取得するカーナビ装置が現れている。この場合も表示の応答性をよくするために地図データをキャッシュに保持することが一般的である。
一方、機器は、データキャッシュを保持するために有限の領域（メモリ、ディスクなど）しか持ち合わせていないので、将来に渡って利用されないことが予想されるデータオブジェクトを棄却し、新たにキャッシュとして利用できる領域を確保する。
棄却に於いては、まず、将来のアクセスが予測されるデータオブジェクトをキャッシュに積極的に残すようにすることが必要である（ヒット率の向上）。さらに、特定のデータオブジェクトのみによりキャッシュの多くの領域が消費され、他のデータキャッシュがキャッシュに収容できないような状況を避けるようにすることが必要である（公平性の実現）。
ヒット率の向上を実現する方法として、アクセス頻度が小さく、最もアクセス時刻が古いもの（ＬＲＵ：Ｌｅａｓｔ  Ｒｅｃｅｎｔｌｙ  Ｕｓｅｄ）を棄却候補とする方法がある（特許文献１）。
一方、特許文献２の技術は、ネットワーク経由で取得しキャッシュしたデータオブジェクトを大きさで分類して異なる破棄ストラテジを適用する。同技術は、小規模から中規模ファイルに対してはＬＲＵを基本として、キャッシュ内に他のデータオブジェクトが存在するときに、単一データオブジェクトが占有し得るキャッシュの割合を制限する方法を用いる。キャッシュ全体よりも大きいデータオブジェクトに対しては、同技術は、小さいけれどもＬＲＵ評価の対象外となる専用の領域を設定する方法を用いる。
なお、特許文献３は、ＷＥＢページの内容と収集対象との関連度にもとづいて、情報収集すべきＷＥＢページを決定する装置を開示する。特許文献４は、自動車位置が目的地に近づくと、狭い領域を要約表示する地図表示方法が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−３３０７９２号公報
【特許文献２】特開平０８−１１５２４１号公報
【特許文献３】特開２００６−２３５７２９号公報
【特許文献４】ＷＯ２００５／０２０１８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１及び２に開示されている技術は、データオブジェクトの過去の外部状態（アクセス頻度、アクセス時刻、等）によってのみキャッシュからの棄却を判断している。この為、この技術は、データオブジェクトの内容に基づくアクセスビヘイビアを反映できず、充分なヒット率および公平性を達成できない。特許文献３及び４に開示されている技術は、キャッシュと関係しない技術であり、この課題を解決しない。
本発明の目的は、上記課題を解決する、データキャッシュ装置、データキャッシュ方法およびプログラムを提供することである。
【課題を解決するための手段】
【０００５】
本発明の一実施形態のデータキャッシュ装置は、複数の第１データ項目を記憶する蓄積手段と、
前記複数の第１データ項目の各々の内容に基づいて、各第１データ項目対応に当該第１データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定手段を備える。
本発明の一実施形態のデータキャッシュ方法は、蓄積手段に複数の第１データ項目を記憶し、
前記複数の第１データ項目の各々の内容に基づいて、各第１データ項目対応に当該第１データ項目を前記蓄積手段から棄却する優先度を決定する。
本発明の一実施形態のプログラムは、コンピュータに、前記コンピュータが備える蓄積手段に、複数の第１データ項目を記憶する蓄積処理と、
前記複数の第１データ項目の各々の内容に基づいて、各第１データ項目対応に当該第１データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定処理を実行させる。
【発明の効果】
【０００６】
本発明は、データキャッシュ装置等に於いて、キャッシュされるデータのヒット率および公平性を向上させることが出来る。
【図面の簡単な説明】
【０００７】
【図１】第１の実施形態のデータキャッシュ装置２０の構成を示す。
【図２】第１の実施形態の蓄積部１４が記憶する情報を示す。
【図３】データキャッシュ装置２０のデータアクセスの動作フローチャートである。
【図４】優先度計算部１６の動作フローチャートである。
【図５】第２の実施形態のデータキャッシュ装置２０の構成を示す。
【図６】第２の実施形態の蓄積部１４が記憶する情報を示す。
【図７】第３の実施形態のデータキャッシュ装置２０の構成を示す。
【発明を実施するための形態】
【０００８】
＜第１の実施形態＞
図１は、本実施形態のデータキャッシュ装置２０の構成を示す。本実施形態のデータキャッシュ装置２０は、例えば、自動車等に積載されて地図を表示する、カーナビ装置等の車載地図表示装置である。
データキャッシュ装置２０は、データ項目４０を一時的に記憶しておく蓄積部１４と蓄積部１４に記憶されているデータ項目４０棄却（削除）の優先度４３を決定する優先度計算部１６を備える。
優先度４３は、データ項目４０の内容（データ内容４１）に基づいて取得される、データ項目４０の距離Ｎ、要約度Ｍ、消費速度Ｖの内の少なくとも１つに基づいて決定される。
優先度計算部１６は、距離所得部１７、要約度取得部１８、消費速度取得部１９の内の少なくとも何れか１つを備える。距離所得部１７、要約度取得部１８、消費速度取得部１９のおのおのは、蓄積部１４に記憶されているデータ項目４０の距離Ｎ、要約度Ｍ、消費速度Ｖのおのおのを取得する。
距離Ｎは、データ項目４０のデータ内容４１をユーザに提供する上で、始点となるデータ項目４０（例えば、現在使用中のデータ項目４０）と当該データ項目４０の間に何個のデータ項目４０のデータ内容４１を提供することになるかを表す。データキャッシュ装置２０は、距離Ｎが小さなデータ項目４０は、近い将来必要になる可能性が高い等として、蓄積部１４から棄却されにくくする。
要約度Ｍは、当該データ項目４０のデータ内容４１が含む情報単位数（例えば、ニュースページ等における記事数、パンフレットに於ける掲載商品）の大きさを表す。データキャッシュ装置２０は、要約度Ｍが大きなデータ項目４０は、多くの情報へのインデックス、目次、ポータル的な用途が想定される等として、蓄積部１４から棄却されにくくする。
消費速度Ｖは、データ項目４０が保持するデータ内容４１がユーザによって消費される速度を表す。データキャッシュ装置２０は、消費速度Ｖが小さなデータ項目４０は、ユーザが再度必要とする可能性が高いとして、蓄積部１４から棄却されにくくする。
優先度４３、距離Ｎ、要約度Ｍ、消費速度Ｖのおのおの具体例や計算方法は、後述される。
データキャッシュ装置２０は、入力部１０、出力部１１、制御部１２、取得部１３、棄却部１５を備えていても良い。
入力部１０は、ユーザからの指示を入力するキーパッド、データキャッシュ装置２０を搭載する自動車等の位置を測定するＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）装置等である。出力部１１は表示装置等である。タッチセンサパネルが、入力部１０および出力部１１として機能しても良い。
制御部１２は、例えば、入力部１０から入力された情報により、表示する地図の位置、縮尺を決定し、取得部１３から地図データを取得して出力部１１に出力する。この時、制御部１２は現在出力されているデータ項目４０の識別情報を記憶する。
取得部１３は、制御部１２から指示された位置、縮尺の地図データをデータ供給装置３０から入力し、制御部１２に出力すると共に、蓄積部１４に保存（キャッシュ）して再利用に備える。データ供給装置３０は、例えば、地図データを格納したＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の読み込み装置である。データ供給装置３０は、ネットワーク経由で接続された地図データ提供サービスサーバでも良い。
棄却部１５は、蓄積部１４に空きが無くなったとき等に、優先度４３の高い順にデータ項目４０を蓄積部１４から棄却する。
ここで、蓄積部１４は半導体メモリ等である。優先度計算部１６、制御部１２、取得部１３、棄却部１５は、論理回路等のハードウェアで構成される。優先度計算部１６、制御部１２、取得部１３、棄却部１５の全てまたは一部は、コンピュータであるデータキャッシュ装置２０のプロセッサが、図示されないメモリ上のプログラムを実行することで実現されても良い。
図２は、蓄積部１４が記憶する情報を示す。蓄積部１４は、複数のデータ項目４０を記憶できる。各データ項目４０の大きさは、一定であっても、可変であっても良い。蓄積部１４が格納できるデータ項目４０の数は、蓄積部１４の記憶容量によって決まる。
各データ項目４０は、データ内容４１、付帯情報４２、優先度４３、アクセス時間４４を包含する。
データ内容４１は、例えば、データ供給装置３０から読み込まれた地図データである。データ内容４１の大きさは、データ格納装置３０の仕様や、入力部１０から入力された情報により決定される。
付帯情報４２は、データ内容４１に関する情報である。付帯情報４２は、例えば、データ内容４１の地図データの緯度経度の範囲、縮尺である。距離所得部１７、要約度取得部１８、消費速度取得部１９は、例えば、この情報に基づいて、このデータ項目４０の距離Ｎ、要約度Ｍ、消費速度Ｖを取得する。
アクセス時刻４４は、データ取得手段１３が、このデータ項目４０を最後にアクセスした時刻を格納する。
なお、付帯情報４２、優先度４３、アクセス時間４４は、蓄積部１４以外の記憶装置に、データ内容４１と対応付けられて記憶されていても良い。
図３は、データキャッシュ装置２０のデータアクセスの動作フローチャートである。
先ず、制御部１２は、入力部１０からデータ要求を受け付け、位置と縮尺を特定して取得部１３に地図データを要求する（Ｓ１）。
データ要求は、例えば、ユーザがキーパッドから明示的に入力した位置と縮尺を包含する。データ要求は、例えば、ＧＰＳ装置から入力した現在位置と過去にキーパッドから入力された縮尺を包含していても良い。データキャッシュ装置２０がカーナビ装置である場合、制御部１２は、現在位置だけ入力して、目的地との距離を計算して、距離に応じて縮尺を算出しても良い。
取得部１３は、要求された位置と縮尺のデータ内容４１が蓄積部１４に既に格納されているかをチェックする（Ｓ２）。チェックは、付帯情報４２を使用しても良いし、既存の他のデータキャッシュ技術を用いても良い。
既に格納されている場合（Ｓ２でＹ）、取得部１３は、データ内容４１を制御部１２経由で、出力部１１に出力し（Ｓ９）、当該データ項目４０の優先度４３及びアクセス時刻４４を更新して（Ｓ１０）、動作を終了する。優先度４３は、例えば、最低優先度に更新される。優先度４３は、更新されなくても良い。
要求された位置と縮尺のデータ内容４１が蓄積部１４に格納されていない場合（Ｓ２でＮ）、取得部１３は、要求された位置を含む位置範囲と縮尺を指定して、地図データをデータ供給装置３０から入力して（Ｓ３）、制御部１２経由で出力部１１に出力する（Ｓ４）。位置範囲の大きさは、例えば、データキャッシュ装置２０に与えられたシステムパラメータで指定される。
蓄積部１４に空き容量がある場合（Ｓ５でＹ）、取得部１３は、読み込んだデータ内容４１を蓄積部１４に格納し、優先度４３及びアクセス時刻４４を設定する（Ｓ７）。優先度４３は、初期値として、例えば、最低優先度に設定される。
その後、取得部１３は、データ供給装置３０に出力した、位置範囲と縮尺を付帯情報４２に格納して（Ｓ８）、動作を終了する。
蓄積部１４に空き容量が無い場合（Ｓ５でＮ）、取得部１３から依頼を受けた棄却部１５が、優先度４３が最も低いデータ項目４０を蓄積部１４から棄却する（Ｓ６）。
図４は、優先度計算部１６の動作フローチャートである。本動作は、例えば、図３のデータアクセスと並行して行われる。本動作は、データ棄却（図３のＳ６）の前段の処理として行われても良い。
優先度計算部１６は、蓄積部１４に蓄積されているデータ項目４０の中から、アクセス時刻４４が最も古いものから所定数のデータ項目４０を選択する（Ａ１）。この時、優先度計算部１６は、選択されたデータ項目４０群によるデータ量が棄却すべきデータ量（所定値または追加されるデータ）よりも大きくなるようにデータ項目４０を選択する。
優先度計算部１６は、選択されたデータ項目４０の１つ１つに対して、ステップＡ３からステップＡ６までの処理を行う（Ａ２）。
優先度計算部１６は、まず、距離取得部１７を用いて、現在、出力部１１に出力されているデータ項目４０と当該データ項目４０の間の距離Ｎを求める（Ａ３）。距離取得部１７は、現在、出力部１１に出力されているデータ項目４０を制御部１２から得る。
地図データが一定距離の長方形のメッシュで分割されている場合、距離取得部１７は、２つのデータ項目４０の付帯情報４２に格納されている緯度経度の範囲から、一方から他方へ到達するまでに経由するメッシュの個数を求め、その個数を距離Ｎとして出力する。
距離取得部１７は、距離Ｎを、次のように近似的に計算しても良い。距離取得部１７は、例えば、２つのデータ項目４０の付帯情報４２に格納されている緯度経度の範囲の中心点間の距離、または、２つの範囲の近接する２点間の距離を計算する。距離取得部１７は、計算した距離を縮尺に応じた所定の単位距離で割った数を距離Ｎとして出力する。
即ち、距離Ｎは、２つのデータ項目４０の付帯情報４２に格納されている緯度経度の範囲が離れるほど、大きくなる値である。
次に、優先度計算部１６は、要約度取得部１８を用いて、当該データ項目４０の要約度Ｍを求める（Ａ４）。要約度取得部１８は、例えば、当該データ項目４０の付帯情報４２に格納されている縮尺から算出する。
要約度取得部１８は、データ供給装置３０に格納されている最も縮尺の大きい地図データの要約度Ｍを１として、それよりも縮尺の小さい地図データの要約度Ｍはその倍数とする。例えば、１／１０００の地図の要約度Ｍを１とした場合、１／１００００の地図の要約度は１０とする。
即ち、要約度Ｍは、データ項目４０の付帯情報４２に格納されている縮尺が小さくなる（包含される行政単位等の数が大きくなる）ほど、大きくなる値である。
次に、優先度計算部１６は、消費速度取得部１９を用いて、当該データ項目４０の消費速度Ｖを求める（Ａ５）。消費速度取得部１９は、例えば、当該データ項目４０の付帯情報４２に格納されている縮尺と、データキャッシュ装置２０が搭載されている自動車等の速度から算出する。
消費速度取得部１９は、当該自動車等の速度を、当該自動車等の速度計測器から得ても良いし、制御部１２から得ても良い。制御部１２は、例えば、入力部１０であるＧＰＳ装置から位置情報を継続的に入力し、データキャッシュ装置２０が搭載されている自動車等の速度を測定し、消費速度取得部１９に出力する。
消費速度取得部１９は、例えば、要約度Ｍが１の地図データの全幅を自動車が移動する速度を１０００秒とする場合には１／１０００＝０．００１を消費速度Ｖとする。
即ち、消費速度Ｖは、ユーザがデータ項目４０のデータ内容４１を必要とする時間が短いほど、大きくなる値である。
優先度計算部１６は、求めた距離Ｎ、要約度Ｍ、消費速度Ｖを元に当該データ項目４０の優先度４３を決定し、蓄積部１４に格納する（Ａ６）。重要度４３は、距離Ｎがより大きく、要約度Ｍがより小さく、消費速度Ｖがより大きいほど、高く（棄却され易く）なるような算出を行う。
優先度計算部１６は、例えば、優先度４３＝距離Ｎ×消費速度Ｖ÷要約度Ｍとする。この場合、優先度４３は、値が大きいほど高くなる。優先度計算部１６は、値が小さいほど高くなるような算出方法を採用しても良い。
なお、優先度４３は、距離Ｎ、要約度Ｍ、消費速度Ｖのいずれかのみ、または、何れか２つの組み合わせに基づいて決定しても良い。
本実施形態のデータキャッシュ装置２０は、キャッシュされる地図データのヒット率および公平性を向上させることが出来る。
その理由は、優先度計算部１６が、各地図データの位置や縮尺に基づいて、蓄積部１４から棄却する優先度４３を算出するからである。
＜第２の実施形態＞
図５は、第２の実施形態のデータキャッシュ装置２０の構成を示す。本実施形態のデータキャッシュ装置２０は、例えば、Ｗｅｂページ等の電子ドキュメント（以降、Ｗｅｂページ）を表示する、コンピュータや携帯端末装置である。本実施形態のデータキャッシュ装置２０は、以下に説明する点に於いて、第１の実施形態と相異する。他の点は、第１の実施形態と同じである。
入力部１０は、キーパッド等でも良いし、キーボードやマウス等でも良い。データ供給装置３０は、データキャッシュ装置２０とネットワーク５０等を介して接続されるＷｅｂサーバ等のＷｅｂページ格納装置である。
本実施形態のデータキャッシュ装置２０は、プロファイル記憶部１Ａを備えても良い。プロファイル記憶部１Ａは、半導体メモリ、ディスク装置等の記憶装置である。プロファイル記憶部１Ａは、例えば、ユーザのＷｅｂページの使用速度（読む速さ：単位時間当たりの読む文字数、等）がＷｅｂページ内容の種別（例えば、小説、学術書等のジャンル）ごとに包含する。これらの値は、ユーザが過去の経験や実測に基づいてプロファイル記憶部１Ａに格納する。
図６は、第２の実施形態の蓄積部１４が記憶する情報を示す。付帯情報４２は、例えば、Ｗｅｂページであるデータ内容４１が格納されているＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）等のアドレス（以降、ＵＲＬ）、及びデータ内容４１が包含する他のＷｅｂページへのＵＲＬで記載されたリンク情報である。
付帯情報４２は、データ内容４１に包含される情報単位数であってもよい。情報単位は、例えば、新聞における各ニュース記事であり、商品パンフレットにおける商品ごとの説明記載である。
付帯情報４２は、データ内容４１の種類、データ内容４１に包含される文字数であっても良い。
本実施形態のデータキャッシュ装置２０のデータアクセスの動作フローチャートも、図３で示される。以下、第１の実施形態と差異がある部分を中心に、説明する。
先ず、制御部１２は、入力部１０からデータ要求を受け付け、ＵＲＬを特定して取得部１３にＷｅｂページを要求する（Ｓ１）。データ要求は、例えば、ユーザがキーボード等から明示的に入力したＵＲＬを包含する。
取得部１３は、要求されたＵＲＬのデータ内容４１が蓄積部１４に既に格納されているかをチェックする（Ｓ２）。
要求されたＵＲＬのデータ内容４１が蓄積部１４に格納されていない場合（Ｓ２でＮ）、取得部１３は、要求されたＵＲＬを指定して、Ｗｅｂページをデータ供給装置３０から入力して（Ｓ３）、制御部１２経由で出力部１１に出力する（Ｓ４）。
蓄積部１４に空き容量がある場合（Ｓ５でＹ）、取得部１３は、読み込んだデータ内容４１を蓄積部１４に格納し、優先度４３及びアクセス時刻４４を設定する（Ｓ７）。その後、取得部１３は、付帯情報４２を格納して（Ｓ８）、動作を終了する。
取得部１３は、例えば、付帯情報４２を以下のように取得して、格納する。
１）「当該データ内容４１が格納されているＵＲＬ」（自ＵＲＬ）は、ＵＲＬデータ供給装置３０に出力したＵＲＬである。
２）「当該データ内容４１が包含するリンク情報」は、取得部１３がデータ内容４１のＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）のタグをキーにして、または、テキストを走査して抽出する。
３）「情報単位数」は、データ内容４１のＨＴＭＬ記述から取得する。この情報単位数は、Ｗｅｂページの作成者がＨＴＭＬに予め記述しているものとする。または、取得部１３が、通信社名等の単語、特定の言い回しをキーに、データ内容４１のテキストからニュースヘッドラインを抽出して取得しても良い。取得部１３がデータ供給装置３０から、Ｗｅｂページの属性として取得しても良い。
４）「Ｗｅｂページの種別」は、取得部１３がＨＴＭＬ記述から取得する。この種別は、Ｗｅｂページの作成者がＨＴＭＬに予め記述しているものとする。または、取得部１３が、データ内容４１のテキストを走査して文体、発生単語の頻度等から推定しても良い。取得部１３がデータ供給装置３０から、Ｗｅｂページの属性として取得しても良い。
５）「Ｗｅｂページの文字数」は、取得部１３が、データ内容４１のテキストを走査して取得する。
本実施形態の優先度計算部１６の動作フローチャートも、図４で示される。以下、第１の実施形態と差異がある部分について、説明する。
優先度計算部１６は、距離取得部１７を用いて、現在、出力部１１に出力されているデータ項目４０と当該データ項目４０の間の距離Ｎを求める（Ａ３）。本実施の形態に於いては、現在、出力部１１に出力されているデータ項目４０から当該データ項目４０にＮ個のリンクを辿ることで到達できる場合には距離Ｎであるとする。
距離取得部１７は、現在、出力部１１に出力されているデータ項目４０の付帯情報４２に格納されている「当該データ内容４１が包含するリンク情報」から、順次他のデータ項目４０を辿り、当該データ項目４０に到達するまでのリンク数を取得する。
距離取得部１７は、この処理の効率化のため、予め逆方向リンクを有する、リンクの木構造を図示されない記憶域に作成しておいても良い。
次に、優先度計算部１６は、要約度取得部１８を用いて、当該データ項目４０の要約度Ｍを求める（Ａ４）。要約度取得部１８は、例えば、当該データ項目４０の付帯情報４２に格納されている「情報単位数」を要約度Ｍとする。
次に、優先度計算部１６は、消費速度取得部１９を用いて、当該データ項目４０の消費速度Ｖを求める（Ａ５）。消費速度取得部１９は、例えば、当該データ項目４０の付帯情報４２中の「Ｗｅｂページの種別」、「Ｗｅｂページの文字数」と、プロファイル記憶部１Ａに格納されている、Ｗｅｂページ内容の種種類ごとのユーザのＷｅｂページの使用速度から求める。
要約度取得部１８は、例えば、「Ｗｅｂページの文字数」を「Ｗｅｂページの種別」に対応するＷｅｂページの使用速度で割って、使用時間を求める。使用時間が１００秒であれば、要約度取得部１８は、１秒あたりのデータ項目４０の消費速度Ｖは１／１００＝０．０１と算出する。なお、消費速度Ｖは、「Ｗｅｂページの種別」毎に固定値としても良い。
さらに、要約度Ｍや消費速度Ｖは、各Ｗｅｂページの作成者が、Ｗｅｂページごとに属性として付与し、各ページのＨＴＭＬに記述等しておいても良い。
なお、上記説明では、データ取得部１３が、データ内容４１等から付帯情報４２を抽出し、蓄積部１４に格納することとしたが、距離Ｎ、要約度Ｍ、消費速度Ｖを求めるときに、優先度計算部１６が、同等の情報をデータ内容４１等から抽出しても良い。また、優先度計算部１６は、自ら、距離Ｎ、要約度Ｍ、消費速度Ｖを求めても良く、必ずしも、距離所得部１７、要約度取得部１８、消費速度取得部１９を個別に備えている必要はない。
本実施形態のデータキャッシュ装置２０は、キャッシュされるＷｅｂページ等の電子ドキュメントのヒット率および公平性を向上させることが出来る。
その理由は、優先度計算部１６が、電子ドキュメントのリンク情報や包含情報単位数、包含文字数等に基づいて、蓄積部１４から棄却する優先度４３を算出するからである。
＜第３の実施形態＞
第３の実施形態のデータキャッシュ装置２０は、第１と第２の実施形態のデータキャッシュ装置２０の構成を併せ持つ。本実施形態のデータキャッシュ装置２０は、以下に説明する点に於いて、第１及び第２の実施形態と相異する。他の点は、第１または第２の実施形態と同じである。
入力部１０は、ＧＰＳ装置とキーパッド等である。入力部１０は、ＧＰＳ装置、キーボードとマウス等でも良い。データ供給装置３０は、例えば、地図データを格納したＣＤ−ＲＯＭリーダ若しくはＤＶＤ−ＲＯＭリーダ等、並びに、ネットワーク５０を介して接続されたＷｅｂサーバを併用する。
従って、本実施形態のデータキャッシュ装置２０の蓄積部１４は、例えば、地図データとＷｅｂページを混在させて蓄積する。本実施形態のデータキャッシュ装置２０は、例えば、スマートフォン、携帯型情報端末である。
本実施形態のデータキャッシュ装置２０は、図３のＳ８や図４のＡ３乃至Ａ５において、データ項目４０が地図データであるか、Ｗｅｂページであるかに応じて、格納付帯情報４２の内容や、距離Ｎ、要約度Ｍ、消費速度Ｖの取得方法を切り替える。データキャッシュ装置２０は、データ項目４０が地図データであれば第１の実施形態と同様に、Ｗｅｂページであれば第２の実施形態と同様に処理する。
本実施形態のデータキャッシュ装置２０は、キャッシュされる多様なデータのヒット率および公平性を向上させることが出来る。その理由は、優先度計算部１６が、データ項目４０の内部状態を、データ項目４０の種別に依存しない、距離Ｎ、要約度Ｍ、消費速度Ｖの３つの尺度を用いて評価し、それらに基づいて、蓄積部１４からの棄却優先度４３を決定するからである。
＜第４の実施形態＞
本実施形態のデータキャッシュ装置２０は、複数のデータ項目４０を記憶する蓄積部１４と優先度計算部１６を備える。優先度計算部１６は、複数のデータ項目４０の各々のデータ内容４１に基づいて、各データ項目４０対応に当該データ項目４０を蓄積部１４から棄却する優先度４３を決定する。
データキャッシュ装置２０は、キャッシュされるデータ項目４０のヒット率および公平性を向上させることが出来る。その理由は、優先度計算部１６が、各データ項目４０のデータ内容４１に基づいて、蓄積部１４から棄却する優先度４３を算出するからである。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
＜実施の形態の他の表現＞
上記の実施形態、実施例の一部又は全部は以下のようにも記載されうるが、以下には限られない。
（付記１）
複数の第１データ項目を記憶する蓄積手段と、
前記複数の第１データ項目の各々の内容に基づいて、各第１データ項目対応に当該第１データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定手段を備える、データキャッシュ装置。
（付記２）
前記優先度決定手段は、第２データ項目の内容と、前記複数の第１データ項目の各々の内容に基づいて、第２データ項目と、前記複数の第１データ項目の各々との距離を求め、前記距離が長いほど、前記優先度を高くする、付記１のデータキャッシュ装置。
（付記３）
前記第１及び第２データ項目の内容は、位置に依存したデータであり、
前記優先度決定手段は、前記第２データ項目の位置と前記複数の第１データ項目の各々の位置とに基づいて前記距離を求める、付記２のデータキャッシュ装置。
（付記４）
前記複数の第１データ項目の内容の各々は、前記第２データ項目の内容から直接、または他の第１データ項目の内容を経由してリンクされているデータであり、
前記優先度決定手段は、前記第２データ項目から前記複数の第１データ項目の各々に到達する迄に経由するリンク数を前記距離として求める、付記２のデータキャッシュ装置。
（付記５）
前記複数の第１データ項目のおのおのは１以上の情報単位を包含し、
前記優先度決定手段は、前記複数の第１データ項目が包含する情報単位の数が少ないほど、前記優先度を高くする、付記１乃至４のいずれかのデータキャッシュ装置。
（付記６）
前記複数の第１データ項目のおのおのは地図データであり、
前記優先度決定手段は、縮尺が大きいほど第１データ項目の前記優先度を高くする、付記５のデータキャッシュ装置。
（付記７）
前記優先度決定手段は、前記複数の第１データ項目のおのおのの内容の消費速度が高いほど、前記優先度を高くする、付記１乃至６の何れかのデータキャッシュ装置。
（付記８）
前記優先度決定手段は、前記複数の第１データ項目のおのおのの内容の種別及び文字数に基づいて、前記優先度を決定する、付記８のデータキャッシュ装置。
（付記９）
コンピュータに、前記コンピュータが備える蓄積手段に、複数の第１データ項目を記憶する蓄積処理と、
前記複数の第１データ項目の各々の内容に基づいて、各第１データ項目対応に当該第１データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定処理を実行させる、プログラム。
（付記１０）
前記コンピュータに、第２データ項目の内容と、前記複数の第１データ項目の各々の内容に基づいて、第２データ項目と、前記複数の第１データ項目の各々との距離を求め、前記距離が長いほど、前記優先度を高くする、前記優先度決定処理を実行させる付記９のプログラム。
（付記１１）
前記第１及び第２データ項目の内容は、位置に依存したデータであり、
前記コンピュータに、前記第２データ項目の位置と前記複数の第１データ項目の各々の位置とに基づいて前記距離を求める前記優先度決定処理を実行させる付記１０のプログラム。
（付記１２）
前記複数の第１データ項目の内容の各々は、前記第２データ項目の内容から直接、または他の第１データ項目の内容を経由してリンクされているデータであり、
前記コンピュータに、前記第２データ項目から前記複数の第１データ項目の各々に到達する迄に経由するリンク数を前記距離として求める、前記優先度決定処理を実行させる、付記１０のプログラム。
（付記１３）
前記複数の第１データ項目のおのおのは１以上の情報単位を包含し、
前記コンピュータに、前記複数の第１データ項目が包含する情報単位の数が少ないほど、前記優先度を高くする前記優先度決定処理を実行させる、付記９乃至１２のいずれかのプログラム。
（付記１４）
前記複数の第１データ項目のおのおのは地図データであり、
前記コンピュータに、縮尺が大きいほど第１データ項目の前記優先度を高くする前記優先度決定処理を実行させる、付記１３のプログラム。
（付記１５）
前記コンピュータに、前記複数の第１データ項目のおのおのの内容の消費速度が高いほど、前記優先度を高くする前記優先度決定処理を実行させる、付記９乃至１４の何れかのプログラム。
（付記１６）
前記コンピュータに、前記複数の第１データ項目のおのおのの内容の種別及び文字数に基づいて、前記優先度を決定する前記優先度決定処理を実行させる、付記１５のプログラム。
（付記１７）蓄積手段に複数の第１データ項目を記憶し、
前記複数の第１データ項目の各々の内容に基づいて、各第１データ項目対応に当該第１データ項目を前記蓄積手段から棄却する優先度を決定するキャッシュ方法。
（付記１８）
第２データ項目の内容と、前記複数の第１データ項目の各々の内容に基づいて、第２データ項目と、前記複数の第１データ項目の各々との距離を求め、前記距離が長いほど、前記優先度を高くする、付記１７のキャッシュ方法。
（付記１９）
前記第１及び第２データ項目の内容は、位置に依存したデータであり、
前記第２データ項目の位置と前記複数の第１データ項目の各々の位置とに基づいて前記距離を求める、付記１８のキャッシュ方法。
（付記２０）
前記複数の第１データ項目の内容の各々は、前記第２データ項目の内容から直接、または他の第１データ項目の内容を経由してリンクされているデータであり、
前記第２データ項目から前記複数の第１データ項目の各々に到達する迄に経由するリンク数を前記距離として求める、付記１８のキャッシュ方法。
（付記２１）
前記複数の第１データ項目のおのおのは１以上の情報単位を包含し、
前記複数の第１データ項目が包含する情報単位の数が少ないほど、前記優先度を高くする、付記１７乃至２０のいずれかのキャッシュ方法。
（付記２２）
前記複数の第１データ項目のおのおのは地図データであり、
縮尺が大きいほど第１データ項目の前記優先度を高くする、付記２１のキャッシュ方法。
（付記２３）
前記複数の第１データ項目のおのおのの内容の消費速度が高いほど、前記優先度を高くする、付記１７乃至２２の何れかのキャッシュ方法。
（付記２４）
前記複数の第１データ項目のおのおのの内容の種別及び文字数に基づいて、前記優先度を決定する、付記２３のキャッシュ方法。
この出願は、２０１０年９月８日に出願された日本出願特願２０１０−２０１０８８を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０００９】
１０  入力部
１１  出力部
１２  制御部
１３  取得部
１４  蓄積部
１５  棄却部
１６  優先度計算部
１７  距離取得部
１８  要約度取得部
１９  消費速度取得部
１Ａ  プロファイル記憶部
２０  データキャッシュ装置
３０  データ供給装置
４０  データ項目
４１  データ内容
４２  付帯情報
４３  優先度
４４  アクセス時刻
５０  ネットワーク
【図１】
2012032921.tif 000003
【図２】
2012032921.tif 000004
【図３】
2012032921.tif 000005
【図４】
2012032921.tif 000006
【図５】
2012032921.tif 000007
【図６】
2012032921.tif 000008
【図７】
2012032921.tif 000009
【国際調査報告】
2012032921.tif 000010
2012032921.tif 000011