(57)【特許請求の範囲】
【請求項１】
データファイルの各部分に対して順番に該部分が記憶された記憶装置上の位置及び該部分のデータサイズを示す複数の第１管理情報と、前記複数の第１管理情報のうち所定の第１管理情報に対して順番に前記データファイルの基準位置からの前記第１管理情報に対する前記部分の位置情報を示す複数の第２管理情報とを記憶する管理情報記憶部を含むコンピュータに、
アクセスする前記データファイルの基準位置からの位置情報を入力として、前記管理情報記憶部に記憶された前記複数の第２管理情報から、前記入力に対応する前記第２管理情報を探索し、前記探索された前記第２管理情報に対する前記第１管理情報から、前記入力に対応する前記第１管理情報を探索し、前記探索された前記第１管理情報が示す前記記憶装置上の位置に記憶された前記データファイルの部分にアクセスするステップと、
前記アクセスされた前記データファイルの各部分に対するアクセス頻度に基づいて、各部分に対する前記第１管理情報毎のアクセス頻度の分布を算出するステップと、
前記算出された前記アクセス頻度の分布に基づいて、前記アクセスにおける前記第２管理情報の探索において探索開始地点となる前記第２管理情報を、アクセス頻度が最も高い前記第１管理情報に対応させるように、前記管理情報記憶部に記憶された前記第２管理情報の各々に対する前記第１管理情報、及び前記第２管理情報の各々が示す前記位置情報を更新するステップと、
を含む処理を実行させるための情報処理プログラム。
【請求項２】
前記更新するステップは、前記探索開始地点となる前記第２管理情報の前後の前記第２管理情報を、前記探索開始地点となる前記第２管理情報に対応する前記第１管理情報に対して、前記アクセス頻度の分布における標準偏差に応じた間隔を有する前記第１管理情報に対応させるように、前記管理情報記憶部に記憶された前記第２管理情報の各々に対する前記第１管理情報、及び前記第２管理情報の各々が示す前記位置情報を更新する請求項１記載の情報処理プログラム。
【請求項３】
前記更新するステップは、前記第２管理情報の各々について、隣接する前記第２管理情報に対応する前記第１管理情報に対して、前記標準偏差に応じた間隔を有する前記第１管理情報に対応させるように、前記管理情報記憶部に記憶された前記第２管理情報の各々に対する前記第１管理情報、及び前記第２管理情報の各々が示す前記位置情報を更新する請求項２記載の情報処理プログラム。
【請求項４】
前記更新するステップは、前記第２管理情報の各々について、隣接する前記第２管理情報に対応する前記第１管理情報に対して、前記アクセス頻度の分布に応じて変化させた間隔を有する前記第１管理情報に対応させるように、前記管理情報記憶部に記憶された前記第２管理情報の各々に対する前記第１管理情報、及び前記第２管理情報の各々が示す前記位置情報を更新する請求項２記載の情報処理プログラム。
【請求項５】
前記更新するステップは、所定期間毎に、前記所定期間について算出された前記アクセス頻度の分布に基づいて、前記管理情報記憶部に記憶された前記第２管理情報の各々に対する前記第１管理情報、及び前記第２管理情報の各々が示す前記位置情報を繰り返し更新する請求項１〜請求項４の何れか１項記載の情報処理プログラム。
【請求項６】
データファイルの各部分に対して順番に該部分が記憶された記憶装置上の位置及び該部分のデータサイズを示す複数の第１管理情報と、前記複数の第１管理情報のうち所定の第１管理情報に対して順番に前記データファイルの基準位置からの前記第１管理情報に対する前記部分の位置情報を示す複数の第２管理情報とを記憶する管理情報記憶部と、
アクセスする前記データファイルの基準位置からの位置情報を入力として、前記管理情報記憶部に記憶された前記複数の第２管理情報から、前記入力に対応する前記第２管理情報を探索し、前記探索された前記第２管理情報に対する前記第１管理情報から、前記入力に対応する前記第１管理情報を探索し、前記探索された前記第１管理情報が示す前記記憶装置上の位置に記憶された前記データファイルの部分にアクセスするデータアクセス部と、
前記データアクセス部によってアクセスされた前記データファイルの各部分に対するアクセス頻度に基づいて、各部分に対する前記第１管理情報毎のアクセス頻度の分布を算出する分布算出部と、
前記分布算出部によって算出された前記アクセス頻度の分布に基づいて、前記データアクセス部による前記第２管理情報の探索において探索開始地点となる前記第２管理情報を、アクセス頻度が最も高い前記第１管理情報に対応させるように、前記管理情報記憶部に記憶された前記第２管理情報の各々に対する前記第１管理情報、及び前記第２管理情報の各々が示す前記位置情報を更新する管理情報更新部と、
を含む情報処理装置
【請求項７】
データファイルが記憶された記憶装置上の位置及びデータサイズを示す第１管理情報と、前記第１管理情報が前記データファイルの基準位置に対する位置を示す第２管理情報とを記憶する管理情報記憶部と、
アクセスする前記データファイルの基準位置からの位置情報を入力として、前記第２管理情報を探索し、前記探索された前記第２管理情報に対する前記第１管理情報から、前記第１管理情報が示す前記記憶装置に記憶された前記データファイルにアクセスするデータアクセス部と、
前記データアクセス部によってアクセスされた前記データファイルに対するアクセス頻度に基づいて、前記第１管理情報毎のアクセス頻度の分布を算出する分布算出部と、
前記分布算出部によって算出された前記アクセス頻度の分布に基づいて、前記データアクセス部による前記第２管理情報の探索において探索開始地点となる前記第２管理情報を、アクセス頻度が最も高い前記第１管理情報に対応させるように更新する管理情報更新部と、
を含む情報処理装置
【請求項８】
データファイルの各部分に対して順番に該部分が記憶された記憶装置上の位置及び該部分のデータサイズを示す複数の第１管理情報と、前記複数の第１管理情報のうち所定の第１管理情報に対して順番に前記データファイルの基準位置からの前記第１管理情報に対する前記部分の位置情報を示す複数の第２管理情報とを記憶する管理情報記憶部を含むコンピュータによって実行される情報処理方法であって、
アクセスする前記データファイルの基準位置からの位置情報を入力として、前記管理情報記憶部に記憶された前記複数の第２管理情報から、前記入力に対応する前記第２管理情報を探索し、前記探索された前記第２管理情報に対する前記第１管理情報から、前記入力に対応する前記第１管理情報を探索し、前記探索された前記第１管理情報が示す前記記憶装置上の位置に記憶された前記データファイルの部分にアクセスし、
前記アクセスされた前記データファイルの各部分に対するアクセス頻度に基づいて、各部分に対する前記第１管理情報毎のアクセス頻度の分布を算出し、
前記算出された前記アクセス頻度の分布に基づいて、前記アクセスにおける前記第２管理情報の探索において探索開始地点となる前記第２管理情報を、アクセス頻度が最も高い前記第１管理情報に対応させるように、前記管理情報記憶部に記憶された前記第２管理情報の各々に対する前記第１管理情報、及び前記第２管理情報の各々が示す前記位置情報を更新する
ことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
開示する技術は、情報処理プログラム、情報処理装置、及び情報処理方法に関する。
【背景技術】
【０００２】
大きなデータを扱う際には、データの挿入や変更時のデータ移動量が大きいため、ストレージ装置やデータ処理装置の処理負荷、データ伝送途中の帯域負荷が大きくなる。そこで、データを分割して管理し、管理情報の編集のみで、データの挿入や変更と等価な処理を実現する方法が知られている。
【０００３】
また、データを分割して管理する際には、データ利用者が高速に参照、変更、追加、及び削除できるように管理をする必要があり、例えば、ファイルアクセス方法やデータ管理方法が知られている（特許文献１、特許文献２）。
【０００４】
上記のファイルアクセス方法では、木構造でファイルを管理し、各ファイルへ高速にアクセスするために、特定のファイルにダイレクトアクセス可能な情報を生成し、ダイレクトアクセス可能な情報を優先順に並べている。
【０００５】
また、上記のデータ管理方法では、連続アクセスデータと非連続アクセスデータとの組み合わせによって構成されるファイルについて、連続アクセスデータと非連続アクセスデータとのデータ配置の仕方をそれぞれ最適に行う。上記のデータ管理方法では、連続アクセスデータに可変長のブロックを連続的に割り当てることにより、データ実体へのアクセス効率を向上させている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平７―１５２６２３号公報
【特許文献２】特開平８―２４１２３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記のファイルアクセス方法では、ダイレクトアクセス可能な情報の優先度付けが、実際のデータアクセスに対して必ずしも最適に行うことができない。このため、上記のファイルアクセス方法では、アクセスが多い部分であっても、効率的にデータにアクセスすることができない場合がある、という問題がある。また、上記のファイルアクセス方法では、ダイレクトアクセス可能な情報が増えるに従って、ダイレクトアクセスによる効果が小さくなってしまう、という問題がある。
【０００８】
また、上記のデータ管理方法では、データ実体のそれぞれの場所のアクセス状況に応じて、常に最適なデータアクセスを提供するようにしていないため、アクセスが多い部分であっても、効率的にデータにアクセスすることができない場合がある、という問題がある。
【０００９】
開示する技術が解決しようとする課題は、記憶装置に記憶されたデータファイルの部分に、効率的にアクセスすることにある。
【課題を解決するための手段】
【００１０】
開示する技術は、管理情報記憶部が、複数の第１管理情報と、複数の第２管理情報を記憶する。複数の第１管理情報は、データファイルの各部分に対して順番に該部分が記憶された記憶装置上の位置及び該部分のデータサイズを示す。複数のデータ管理情報は、前記複数の第１管理情報のうち所定の第１管理情報に対して順番に前記データファイルの基準位置からの前記第１管理情報に対する前記部分の位置情報を示す。また、開示する技術は、アクセスする前記データファイルの基準位置からの位置情報を入力として、前記管理情報記憶部に記憶された前記複数の第２管理情報から、前記入力に対応する前記第２管理情報を探索する。そして、開示する技術は、前記探索された前記第２管理情報に対する前記第１管理情報から、前記入力に対応する前記第１管理情報を探索する。開示する技術は、前記探索された前記第１管理情報が示す前記記憶装置上の位置に記憶された前記データファイルの部分にアクセスする。
【００１１】
次に、開示する技術は、前記アクセスされた前記データファイルの各部分に対するアクセス頻度に基づいて、各部分に対する前記第１管理情報毎のアクセス頻度の分布を算出する。そして、開示する技術は、前記算出された前記アクセス頻度の分布に基づいて、前記管理情報記憶部に記憶された前記第２管理情報の各々に対する前記第１管理情報、及び前記第２管理情報の各々が示す前記位置情報を更新する。開示する技術は、前記アクセスにおける前記第２管理情報の探索において探索開始地点となる前記第２管理情報を、アクセス頻度が最も高い前記第１管理情報に対応させるように更新する。
【発明の効果】
【００１２】
開示する技術によれば、記憶装置に記憶されたデータファイルの部分に、効率的にアクセスできる。また、データファイルとして、動画像の符号化ストリームを用いる場合には、編集時に特定領域（シーン等）にアクセスが集中するという特性があり、よりアクセスコストを削減できるという効果が得られる。
【図面の簡単な説明】
【００１３】
【図１】第１の実施の形態に係る情報処理装置の構成を示す概略図である。
【図２】区間データとして実際に分割されていないデータ実体を示すイメージ図（Ａ）と、区間データとして実際に分割されているデータ実体を示すイメージ図（Ｂ）である。
【図３】第１の実施の形態に係る情報処理装置の機能ブロック図である。
【図４】データファイルの先頭からのオフセット位置を説明するための図である。
【図５】データ管理情報及びグループ管理情報の各々の要素を説明するための図である。
【図６】区間データのデータ実体の位置を決定するための方法を説明するための図である。
【図７】第１の実施の形態に係る情報処理装置のアクセス位置決定部の構成を示す図である。
【図８】時間と共にアクセス頻度分布が移動する様子を示す図である。
【図９】第１の実施の形態に係る情報処理装置の配置更新部の構成を示す図である。
【図１０】データ管理情報毎のアクセス頻度の分布を示す図である。
【図１１】グループ管理情報の配置を更新した結果を示す図である。
【図１２】第１の実施の形態に係る情報処理装置のアクセス処理ルーチンの内容を示すフローチャートである。
【図１３】第１の実施の形態に係る情報処理装置のアクセス処理ルーチンの内容を示すフローチャートである。
【図１４】グループ管理情報を探索する方法を説明するための図である。
【図１５】グループ管理情報を探索する方法を説明するための図である。
【図１６】データ管理情報を探索する方法を説明するための図である。
【図１７】第１の実施の形態に係る情報処理装置の配置更新処理ルーチンの内容を示すフローチャートである。
【図１８】グループ管理情報の配置を更新する様子を示す図である。
【図１９】グループ管理情報の配置を更新する様子を示す図である。
【図２０】グループ管理情報の配置を更新する様子を示す図である。
【図２１】区間データをデータファイルに挿入する方法を説明するための図である。
【図２２】区間データをデータファイルに挿入する様子を示す図である。
【図２３】比較対象としたグループ管理情報の配置を示す図である。
【図２４】第１の実施の形態の手法により更新されたグループ管理情報の配置を示す図である。
【図２５】第２の実施の形態に係る情報処理システムの構成を示す概略図である。
【図２６】情報処理システムの構成を示す概略図である。
【図２７】記憶装置の構成を示す概略図である。
【図２８】記録媒体に記憶されたプログラムが、ＨＤＤにインストールされる様子を示す図である。
【発明を実施するための形態】
【００１４】
以下、実施形態について詳細に説明する。
【００１５】
図１に示すように、第１の実施の形態に係る情報処理装置１０には、ＣＰＵ１２、ＲＯＭ１４、ＲＡＭ１６、ＨＤＤ１８、通信インタフェース２０、及びこれらを相互に接続するためのバス２２が設けられている。
【００１６】
ＣＰＵ１２は、各種プログラムを実行する。ＲＯＭ１４には、各種プログラムやパラメータ等が記憶されている。ＲＡＭ１６は、ＣＰＵ１２による各種プログラムの実行時におけるワークエリア等として用いられる。記憶装置としてのＨＤＤ１８には、後述するアクセス処理ルーチンや配置更新処理ルーチン等のプログラムを含む各種プログラムや各種データが記憶されている。また、ＨＤＤ１８は、データファイルを記憶する。ＨＤＤ１８には、データファイルとして、図２（Ａ）に示すような、データ実体が実際には分割されていない場合の各区間データ、あるいは、図２（Ｂ）に示すような、データ実体が実際に分割された場合の各区間データが記憶されている。ＨＤＤ１８には、データファイルとして、実際には分割されていない区間データと実際に分割された区間データとが混在した場合の各区間データが記憶されていてもよい。通信インタフェース２０は、例えば、ディスプレイ（図示省略）に接続されており、ディスプレイに表示するためのデータファイルを、ディスプレイに対して出力する。
【００１７】
情報処理装置１０を機能ブロックで表すと、情報処理装置１０は、図３に示すように、アクセス位置入力受付部３０、管理データ記憶部３２、アクセス頻度記憶部３４、アクセス位置決定部３６、アクセス処理部３８、出力部４０、及び配置更新部４２を備えている。
【００１８】
アクセス位置入力受付部３０は、アクセス対象のデータファイルのアクセスしたい位置として、当該データファイルの先頭からのオフセット位置を示す情報（図４参照）の入力を受け付ける。なお、データファイルの先頭からのオフセット位置を示す情報が、データファイルの基準位置からの位置情報の一例である。
【００１９】
例えば、データファイルとは、動画像データの符号化ストリームのような時間的に連続した符号化データ単位（ＧＯＰ単位、シーン単位等）(GOP：Group of Picture）が連続して構成されたデータを想定している。また、データ実体は、上記符号化データ単位のデータとして、ＧＯＰ単位又はシーン単位のデータが該当する。オフセットとは、時間又はデータ量を単位として設定されても良い。
【００２０】
管理データ記憶部３２は、複数のデータ管理情報を記憶する。複数のデータ管理情報は、図５に示すように、それぞれ実際の区間データに対して順番に関連付けられ、区間データの順序関係、および、位置情報を管理するための情報である。データ管理情報を用いる方式の利点は、データにおける区間データの順序関係、および、位置関係を変更する際に、データ移動のコストが小さい点である。これは、区間データを操作することなく、データ管理情報のみを変更すれば良いためである。
【００２１】
データ管理情報の要素は、直前のデータ管理情報を示す前データ管理情報ポインタ、及び直後のデータ管理情報を示す後データ管理情報ポインタを含む。更に、データ管理情報の要素は、関連付けられた区間データのデータサイズ、及び関連付けられた区間データのデータ実体を示すデータ実体ポインタを含む。データ管理情報は、双方向リスト構造であるため、前後のデータ管理情報へ移動することが可能である。
【００２２】
ここで、データファイルの先頭からのオフセット位置ofに位置する区間データのデータ実体xにアクセスする場合を考える。区間データのデータ実体xにアクセスするためには、区間データのデータ実体xを指し示すデータ管理情報nを探索しなければならない。
【００２３】
図６に示すように、区間データのデータ実体xの位置(データファイルにおける先頭からのオフセット値of)を決定するためには、先頭のデータ管理情報から、データサイズを累積しなければならない。
【００２４】
また、管理データ記憶部３２は、複数のグループ管理情報を記憶する。複数のグループ管理情報は、それぞれ実際の区間データ及びデータ管理情報に対して順番に関連付けられ、区間データの位置情報を管理するための情報である。なお、データ管理情報が、第１管理情報の一例であり、グループ管理情報が、第２管理情報の一例である。
【００２５】
上記図５に示すように、グループ管理情報の要素は、直前のグループ管理情報を示す前グループ管理情報ポインタ、及び直後のグループ管理情報を示す後グループ管理情報ポインタを含む。グループ管理情報の要素は、更に、各グループ管理情報が管理するデータ管理情報の集合の先頭のデータ管理情報が示す区間データの位置情報であって、データファイル先頭からのオフセットを示す位置情報を含む。更に、グループ管理情報の要素は、各集合の先頭のデータ管理情報を示すデータ管理情報ポインタを含む。
【００２６】
グループ管理情報は、双方向リスト構造であるため、前後のグループ管理情報へ移動することが可能である。
【００２７】
あるグループ管理情報が示すデータ管理情報から、直後のグループ管理情報が示すデータ管理情報の直前のデータ管理情報までの、データ管理情報の集合を、データ管理情報グループとする。
【００２８】
グループ管理情報の数は、データ管理情報に比べて十分に少ない数である。
【００２９】
グループ管理情報及びデータ管理情報は、ＨＤＤ１２に記憶されている。ＣＰＵ１２がデータファイルにアクセスする場合に、ＨＤＤ１２からグループ管理情報及びデータ管理情報が読み出される。ＨＤＤ１２から読み出されたグループ管理情報及びデータ管理情報は、ＲＡＭ１６に格納される。なお、グループ管理情報及びデータ管理情報は、ＨＤＤ１２から読み出されて、ＲＡＭ１６に格納されなくてもよい。この場合、ダイレクトアクセスにより、ＣＰＵ１２がデータファイルにアクセスするとき、ＣＰＵ１２がグループ管理情報及びデータ管理情報をＨＤＤ１２から読み出せばよい。
【００３０】
アクセス頻度記憶部３４は、データ管理情報毎に、関連付けられた区間データへのアクセス頻度を記憶する。
【００３１】
アクセス位置決定部３６は、オフセット位置の情報の入力を受け付けた際、データファイルの先頭からのオフセットofaに位置する区間データのデータ実体xのアクセス位置を決定する。図７に示すように、アクセス位置決定部３６は、グループ管理情報オフセット比較部５０、データ管理情報オフセット比較部５２、及びアクセス頻度加算部５４を備えている。
【００３２】
グループ管理情報オフセット比較部５０は、探索開始地点となるグループ管理情報から順番に、グループ管理情報の位置情報が示すデータファイル先頭からのオフセットofと、入力を受け付けたデータファイルの先頭からのオフセットofaとを比較する。グループ管理情報オフセット比較部５０は、比較結果に基づいて、入力を受け付けたデータファイルの先頭からのオフセットofに最も近いグループ管理情報を探索する。
【００３３】
グループ管理情報オフセット比較部５０は、探索されたグループ管理情報のデータ管理情報ポインタを、データ管理情報オフセット比較部５２に出力する。
【００３４】
データ管理情報オフセット比較部５２は、探索されたグループ管理情報が示すデータ管理情報から順に、区間データの先頭からのオフセットofと、入力を受け付けたデータファイルの先頭からのオフセットofaとを比較する。データ管理情報オフセット比較部５２は、比較結果に基づいて、入力を受け付けたデータファイルの先頭からのオフセットofaに対応する区間データを示すデータ管理情報を探索する。このとき、データ管理情報オフセット比較部５２は、探索されたグループ管理情報が示すデータ管理情報から、処理対象のデータ管理情報までのデータサイズを順次累積する。データ管理情報オフセット比較部５２は、探索されたグループ管理情報の位置情報が示すデータファイル先頭からのオフセットと累積値とから求められる先頭からのオフセットと、入力された先頭からのオフセットｏｆａとを比較する。
【００３５】
また、データ管理情報オフセット比較部５２は、探索されたデータ管理情報のデータ実体ポインタを、アクセス処理部３８に出力する。また、データ管理情報オフセット比較部５２は、探索されたデータ管理情報を示す情報を、アクセス頻度加算部５４に出力する。
【００３６】
アクセス頻度加算部５４は、探索されたデータ管理情報について、アクセス頻度記憶部３４に記憶されたアクセス頻度を、１つ加算する。
【００３７】
アクセス処理部３８は、アクセス位置決定部３６から出力されたデータ実体ポインタに基づいて、区間データのデータ実体へアクセスし、出力部４０へ出力する。例えば、出力部４０は、データ実体に基づく画像を、ディスプレイに表示させる。
【００３８】
図８に示すように、本実施の形態では、データファイルとして、データのある一部分にアクセスが集中し、かつ、時間とともにアクセス頻度の分布が連続的に移動する、という特徴があるデータファイルを用いる場合を例に説明する。
【００３９】
例えば、動画像の符号化ストリーム等の部分的な編集が行われる様な場合に、特定の時間のデータ(GOP単位又はシーン単位)にアクセスが集中し、時間と共にアクセスが集中する位置が移動する場合などが想定される。部分的な編集の例としては、符号化ストリーム(メディアデータ)中のＣＭ部分を集中的にアクセスして編集(参照,変更,追加,削除など)を行う場合が対応する。
【００４０】
配置更新部４２は、アクセス頻度記憶部３４に記憶された、データ管理情報毎のアクセス頻度に基づいて、所定期間毎に、グループ管理情報の配置を繰り返し更新する。
【００４１】
図９に示すように、配置更新部４２は、統計情報算出部６０と、配置決定部６２とを備えている。
【００４２】
統計情報算出部６０は、アクセス頻度記憶部３４に記憶されたデータ管理情報毎のアクセス頻度に基づいて、以下の式に従って、アクセス回数を重みとしたときのアクセス位置の平均値（以下、アクセス位置の平均とも称する）を算出する。
【００４３】
(平均)=Σアクセス位置×アクセス位置におけるアクセス頻度/Σアクセス頻度の総数
【００４４】
ただし、アクセス位置は、データ管理情報の識別番号で表わされる。なお、アクセス位置の平均は、アクセス頻度が最も高い位置の一例である。
【００４５】
また、統計情報算出部６０は、アクセス頻度記憶部３４に記憶された、データ管理情報毎のアクセス頻度に基づいて、以下の式に従って、アクセス頻度分布の標準偏差を算出する。
【００４６】
(標準偏差)=Σ（アクセス位置−アクセス位置の平均）2×アクセス位置におけるアクセス頻度/Σアクセス頻度の総数
【００４７】
なお、アクセス位置の平均として、データ管理情報の識別番号を示す値が算出される。また、標準偏差として、データ管理情報の識別番号に関する値が算出される。
【００４８】
配置決定部６２は、平均的なアクセス位置に対応するデータ管理情報を特定し、探索開始地点となるグループ管理情報のデータ管理情報ポインタが、特定されたデータ管理情報を示すように設定する。また、配置決定部６２は、特定されたデータ管理情報が属し、かつ、更新前のグループ管理情報の先頭のデータ管理情報から、当該特定されたデータ管理情報まで、データサイズを累積する。配置決定部６２は、累積した値を、当該グループ管理情報の位置情報が示す先頭からのオフセットに加算し、求められた値を、探索開始地点となるグループ管理情報の位置情報として設定する。
【００４９】
例えば、図１０に示すように、アクセス位置の平均に対応するデータ管理情報の識別番号が、１２である。この場合には、図１１に示すように、配置決定部６２は、探索開始地点となるグループ管理情報（識別番号：２）のデータ管理情報ポインタが、データ管理情報（識別番号：１２）を示すように、グループ管理情報（識別番号：２）を設定する。
【００５０】
配置決定部６２は、探索開始地点となるグループ管理情報が示すデータ管理情報の前後から、標準偏差に対応するデータ管理情報を各々特定する。配置決定部６２は、特定されたデータ管理情報の各々を示すように、探索開始地点となるグループ管理情報の前後のグループ管理情報を設定する。また、配置決定部６２は、特定されたデータ管理情報に基づいて、探索開始地点となるグループ管理情報の場合と同様に、探索開始地点となるグループ管理情報の前後に、グループ管理情報の位置情報を設定する。
【００５１】
例えば、上記図１０に示すように、アクセス位置の平均から標準偏差の分だけ離れた位置に対応するデータ管理情報が、データ管理情報（識別番号：１０、１３）である。この場合、配置決定部６２は、上記図１１に示すように、探索開始地点となるグループ管理情報の前後のグループ管理情報（識別番号：１、３）のデータ管理情報ポインタが、データ管理情報（識別番号：１０、１３）を示すように設定する。
【００５２】
なお、配置決定部６２は、上述したように、更新処理の都度、グループ管理情報の各要素の値を更新してもよいし、あるいは、更新後の全グループ管理情報の配置を確定してから、グループ管理情報の各要素の値を一括して更新するようにしてもよい。
【００５３】
情報処理装置１０は、従来公知のパーソナルコンピュータの一般的構成を備えたものであればよく、本実施の形態では、情報処理装置１０の一般的処理の説明を省略する。
【００５４】
次に、第１の実施の形態の作用を説明する。
【００５５】
まず、ユーザが操作部（図示省略）を操作して、アクセスしたいデータファイルの先頭からのオフセットｏｆａを情報処理装置１０に入力すると、情報処理装置１０のＣＰＵ１２によって、図１２、１３に示すアクセス処理ルーチンが実行される。
【００５６】
ステップ１００において、ＣＰＵ１２が、管理データ記憶部３２から、探索開始地点となるグループ管理情報ｘを読み込み、グループ管理情報ｘの先頭からのオフセットを取得する。ＣＰＵ１２は、入力された先頭からのオフセットｏｆａから、取得したオフセットを減算して、差分ｄｉｆを算出する。
【００５７】
そして、ステップ１０２において、ＣＰＵ１２が、上記ステップ１００で算出した差分ｄｉｆが、正であるか、負であるか、あるいは０であるかを判定する。算出した差分ｄｉｆが０である場合には、ステップ１０４において、ＣＰＵ１２が、探索結果としてのグループ管理情報の識別番号を示す変数ｃに、識別番号ｘを設定して、後述するステップ１３８へ移行する。
【００５８】
算出した差分ｄｉｆが負の値である場合には、ステップ１０６において、ＣＰＵ１２が、注目のグループ管理情報の識別番号を示す変数ｐに、識別番号ｘ−１を設定する。そして、ステップ１０８において、ＣＰＵ１２が、前回算出した差分を示す変数ｏｌｄｄｉｆに、算出した差分ｄｉｆを設定すると共に、前回注目したグループ管理情報の識別番号を示す変数ｏｌｄｐに、変数ｐを設定する。
【００５９】
次に、ステップ１１０において、ＣＰＵ１２が、管理データ記憶部３２から、グループ管理情報ｐを読み込み、グループ管理情報ｐの先頭からのオフセットを取得する。ＣＰＵ１２は、入力された先頭からのオフセットｏｆａから、取得したオフセットを減算して、差分ｄｉｆを算出する。そして、ステップ１１２において、ＣＰＵ１２が、算出した差分ｄｉｆと、変数ｏｌｄｄｉｆとを比較して、差分ｄｉｆの符号が反転したか否かを判定する。差分ｄｉｆの符号が反転していないと判定された場合には、ステップ１１４において、ＣＰＵ１２が、変数ｐをデクリメントして、上記ステップ１０８へ戻る。一方、上記ステップ１１２で、差分ｄｉｆの符号が反転したと判定された場合には、ステップ１１６において、ＣＰＵ１２が、算出した差分ｄｉｆの絶対値が、変数ｏｌｄｄｉｆの絶対値以下であるか否かを判定する。算出した差分ｄｉｆの絶対値が、変数ｏｌｄｄｉｆの絶対値以下であると判定された場合には、ステップ１１８において、ＣＰＵ１２が、変数ｃに、変数ｐを設定して、ステップ１３８へ移行する。一方、算出した差分ｄｉｆの絶対値が、変数ｏｌｄｄｉｆの絶対値より大きいと判定された場合には、ステップ１２０において、ＣＰＵ１２が、変数ｃに、変数ｏｌｄｐを設定して、ステップ１３８へ移行する。
【００６０】
上記ステップ１０２で、算出した差分ｄｉｆが正の値であると判定された場合には、ステップ１２２において、ＣＰＵ１２が、注目のグループ管理情報の識別番号を示す変数ｐに、識別番号ｘ＋１を設定する。そして、ステップ１２４において、ＣＰＵ１２が、前回算出した差分を示す変数ｏｌｄｄｉｆに、算出した差分ｄｉｆを設定すると共に、前回注目したグループ管理情報の識別番号を示す変数ｏｌｄｐに、変数ｐを設定する。
【００６１】
次に、ステップ１２６において、ＣＰＵ１２が、管理データ記憶部３２からグループ管理情報ｐを読み込み、グループ管理情報ｐの先頭からのオフセットを取得する。ＣＰＵ１２は、入力された先頭からのオフセットｏｆａから、取得したオフセットを減算して、差分ｄｉｆを算出する。そして、ステップ１２８において、ＣＰＵ１２が、算出した差分ｄｉｆと、変数ｏｌｄｄｉｆとを比較して、差分ｄｉｆの符号が反転したか否かを判定する。差分ｄｉｆの符号が反転していないと判定された場合には、ステップ１３０において、ＣＰＵ１２が、変数ｐをインクリメントして、上記ステップ１２４へ戻る。一方、上記ステップ１２８で、差分ｄｉｆの符号が反転したと判定された場合には、ステップ１３２において、ＣＰＵ１２が、算出した差分ｄｉｆの絶対値が、変数ｏｌｄｄｉｆの絶対値以下であるか否かを判定する。算出した差分ｄｉｆの絶対値が、変数ｏｌｄｄｉｆの絶対値以下であると判定された場合には、ステップ１３４において、ＣＰＵ１２が、変数ｃに変数ｐを設定して、ステップ１３８へ移行する。一方、算出した差分ｄｉｆの絶対値が、変数ｏｌｄｄｉｆの絶対値より大きいと判定された場合には、ステップ１３６において、ＣＰＵ１２が、変数ｃに変数ｏｌｄｐを設定して、ステップ１３８へ移行する。
【００６２】
ステップ１３８では、ＣＰＵ１２が、管理データ記憶部３２からグループ管理情報ｃを読み込み、グループ管理情報ｃのデータ管理情報ポインタを用いてデータ管理情報ｒを取得する。
【００６３】
そして、ステップ１４０において、ＣＰＵ１２が、グループ管理情報ｃの先頭からのオフセットを取得する。ＣＰＵ１２は、入力された先頭からのオフセットｏｆａから、取得したオフセットを減算して、差分ｏｆｒを算出する。
【００６４】
そして、ステップ１４２において、ＣＰＵ１２が、上記ステップ１４０で算出した差分ｏｆｒが、正であるか、負であるか、あるいは０であるかを判定する。算出した差分ｏｆｒが０である場合には、ステップ１４４において、ＣＰＵ１２が、探索結果としてのデータ管理情報の識別番号を示す変数ｄに識別番号ｒを設定して、後述するステップ１７０へ移行する。
【００６５】
算出した差分ｏｆｒが負の値である場合には、ステップ１４６において、ＣＰＵ１２が、注目のデータ管理情報の識別番号を示す変数ｉに、識別番号ｒ−１を設定する。そして、ステップ１４８において、ＣＰＵ１２が、算出した差分ｏｆｒと変数ｏｌｄｏｆｒとを比較して、差分ｏｆｒの符号が反転したか、又は差分ｏｆｒが０であるかを判定する。差分ｏｆｒの符号が反転しておらず、かつ、差分ｏｆｒが０でないと判定された場合には、ＣＰＵ１２は、ステップ１５０へ移行する。ステップ１５０では、ＣＰＵ１２が、前回算出した差分を示す変数ｏｌｄｏｆｒに、算出した差分ｏｆｒを設定すると共に、前回注目したデータ管理情報の識別番号を示す変数ｏｌｄｉに変数ｉを設定する。そして、ステップ１５２において、ＣＰＵ１２が、差分ｏｆｒを、データ管理情報ｉのデータサイズだけ加算して更新する。次のステップ１５４では、変数ｉをデクリメントして、上記ステップ１４８へ戻る。
【００６６】
一方、上記ステップ１４８で、差分ｏｆｒの符号が反転したと判定された場合、又は、差分ｏｆｒが０であると判定された場合には、ステップ１５６において、ＣＰＵ１２が、変数ｄに、変数ｏｌｄｉを設定して、ステップ１７０へ移行する。
【００６７】
上記ステップ１４２で、算出した差分ｏｆｒが正の値であると判定された場合には、ステップ１５８において、ＣＰＵ１２が、注目のデータ管理情報の識別番号を示す変数ｉに、識別番号ｒ＋１を設定する。そして、ステップ１６０において、ＣＰＵ１２が、算出した差分ｏｆｒと、変数ｏｌｄｏｆｒとを比較して、差分ｏｆｒの符号が反転したか、又は差分ｏｆｒが０であるかを判定する。差分ｏｆｒの符号が反転しておらず、かつ、差分ｏｆｒが０でないと判定された場合には、ＣＰＵ１２は、ステップ１６２へ移行する。ステップ１６２では、ＣＰＵ１２が、前回算出した差分を示す変数ｏｌｄｏｆｒに、算出した差分ｏｆｒを設定すると共に、前回注目したデータ管理情報の識別番号を示す変数ｏｌｄｉに変数ｉを設定する。そして、ステップ１６４において、ＣＰＵ１２が、差分ｏｆｒを、データ管理情報ｉのデータサイズだけ減算して更新する。次のステップ１６６では、変数ｉをインクリメントして、上記ステップ１４８へ戻る。
【００６８】
一方、上記ステップ１６０で、差分ｏｆｒの符号が反転したと判定された場合、又は、差分ｏｆｒが０であると判定された場合には、ステップ１６８において、ＣＰＵ１２が、変数ｄに、変数ｉを設定して、ステップ１７０へ移行する。
【００６９】
ステップ１７０では、ＣＰＵ１２が、管理データ記憶部３２から、データ管理情報ｄを読み込み、データ管理情報ｄのデータ実体ポインタを用いて、区間データのデータ実体にアクセスして、アクセス処理ルーチンを終了する。このとき、ＣＰＵ１２は、アクセス頻度記憶部３４に記憶された、データ管理情報ｄに対するアクセス頻度を１だけ加算する。
【００７０】
以上のようにＣＰＵ１２によって実行されるアクセス処理ルーチンに従って、データ実体へアクセスする処理の具体例について説明する。例えば、図１４に示すように、グループ管理情報及びデータ管理情報が設定されている場合について説明する。
【００７１】
まず、入力された、アクセス対象のデータファイルのアクセスしたいデータの位置を示す先頭からのオフセットｏｆａが７５であり、探索開始地点となるグループ管理情報ｘの先頭からのオフセットは４５であると、差分ｄｉｆは＋３０である。よって、図１５に示すように、ＣＰＵ１２は、探索開始地点となるグループ管理情報ｘに対して、後方へグループ管理情報の探索を行う。
【００７２】
ＣＰＵ１２は、アクセスしたいデータの位置を示す先頭からのオフセットｏｆａとグループ管理情報ｐの先頭からのオフセットとの差分の符号が逆転する位置まで、グループ管理情報を探索する。
【００７３】
図１５に示すように、グループ管理情報ｐのデータ実体の先頭からのオフセットが６５である場合には、オフセットｏｆａとの差分は＋１０（＝７５−６５）である。また、グループ管理情報ｐのデータ実体の先頭からのオフセットが９０である場合には、オフセットｏｆａとの差分が−１５（＝７５−９０）となり符号が逆転する。よって、アクセスしたいデータは、それらのグループ管理情報ｐの間に存在することが分かる。ここで、ＣＰＵ１２は、オフセットｏｆａとの差分が小さいグループ管理情報ｐ（先頭からのオフセット：６５）を選択し、選択したグループ管理情報ｐ（＝ｃ）の要素から、データ管理情報ｒのポインタを取得する。
【００７４】
次に、ＣＰＵ１２は、オフセットｏｆａと、選択したグループ管理情報ｐ（＝ｃ）の先頭からのオフセットとの差分の符号により探索方向を決定する。図１６では、オフセットｏｆａが７５、データ管理情報の先頭からのオフセットが６５であることより、差分ｏｆｒが７５−６５＝＋１０である。よって、ＣＰＵ１２は、選択したグループ管理情報ｐ（＝ｃ）が示すデータ管理情報ｒに対して、後方にデータ管理情報を探索する。
【００７５】
ＣＰＵ１２は、差分ｏｆｒと、注目のデータ管理情報ｉまでのデータサイズの累積値との差分を求め、差分が０になるか、差分の符号が反転するかを判定することにより、アクセスしたいデータの位置を示すデータ管理情報ｄを決定する。オフセットｏｆａと、選択したグループ管理情報の先頭からのオフセットとの差分が＋１０であり、注目のデータ管理情報（ｒ＝ｉ）のデータサイズは１０であるため、差分ｏｆｒと、注目のデータ管理情報ｉまでのデータサイズの累積値との差分が０となる。したがって、アクセスしたいデータが、データ管理情報（ｒ＝ｄ）が示す区間データのデータ実体であるため、ＣＰＵ１２は、データ管理情報（ｒ＝ｄ）を探索結果とする。
【００７６】
次に、所定期間毎に、情報処理装置１０のＣＰＵ１２によって、図１７に示す配置更新処理ルーチンが繰り返し実行される。なお、所定期間とは、アクセス頻度の総数が、所定値に到達するまでの期間であってもよく、または、所定時間が経過するまでの期間であってもよい。
【００７７】
まず、ステップ１７４において、ＣＰＵ１２が、アクセス頻度記憶部３４から、各データ管理情報のアクセス頻度を読み込む。ＣＰＵ１２は、読み込んだ各データ管理情報のアクセス頻度に基づいて、アクセス位置の平均及び標準偏差を算出する。
【００７８】
そして、ステップ１７６において、ＣＰＵ１２が、上記ステップ１７４で算出したアクセス位置の平均に対応するデータ管理情報の識別番号ａを特定する。次のステップ１７８では、ＣＰＵ１２が、探索開始地点となる中央のグループ管理情報ｘに、上記ステップ１７６で特定されたデータ管理情報ａを設定する。ここで、ＣＰＵ１２は、グループ管理情報の識別番号の最大値を２で除算した値について、小数点以下を切り上げた値を、中央のグループ管理情報の識別番号ｘとして設定すればよい。
【００７９】
そして、ステップ１８０において、ＣＰＵ１２が、注目のグループ管理情報の識別番号を示す変数ｊにｘ−１を設定する。次のステップ１８２では、ＣＰＵ１２が、上記ステップ１７４で算出したアクセス位置の標準偏差に応じて、データ管理情報ａより前のデータ管理情報の識別番号ｓを特定する。ステップ１８４では、ＣＰＵ１２が、グループ管理情報ｊのデータ管理情報ポインタに、上記ステップ１８２で特定されたデータ管理情報ｓを示すポインタを設定する。
【００８０】
そして、ステップ１８６において、ＣＰＵ１２が、識別番号を示す変数ｊをデクリメントする。ステップ１８８では、ＣＰＵ１２が、変数ｊが０より大きいか否かを判定する。変数ｊが０より大きい場合には、ＣＰＵ１２は、上記ステップ１８２へ戻る。一方、変数ｊが０以下である場合には、ＣＰＵ１２は、ステップ１９０において、ＣＰＵ１２が、注目のグループ管理情報の識別番号を示す変数ｊに、ｘ＋１を設定する。
【００８１】
次のステップ１９２では、ＣＰＵ１２が、上記ステップ１７４で算出したアクセス位置の標準偏差に応じて、データ管理情報ａより後のデータ管理情報の識別番号ｔを特定する。ステップ１９４では、ＣＰＵ１２が、グループ管理情報ｊのデータ管理情報ポインタに、上記ステップ１９２で特定されたデータ管理情報ｔを示すポインタを設定する。
【００８２】
そして、ステップ１９６において、ＣＰＵ１２が、識別番号を示す変数ｊをインクリメントする。ステップ１９８では、変数ｊが、グループ管理情報の識別番号の最大値を示す定数ｍより小さいか否かを、ＣＰＵ１２が判定する。変数ｊがｍより小さい場合には、ＣＰＵ１２は、上記ステップ１９２へ戻る。一方、変数ｊがｍに到達した場合には、ＣＰＵ１２は、配置更新処理ルーチンを終了する。
【００８３】
以上のようにＣＰＵ１２によって実行される配置更新処理ルーチンに従って、グループ管理情報の配置を更新する処理の具体例について説明する。例えば、上記図１０に示すように、各データ管理情報に対してアクセス頻度が分布している場合を例に説明する。
【００８４】
まず、図１８に示すように、ＣＰＵ１２は、探索開始地点となる中央のグループ管理情報（識別番号：２）のデータ管理情報ポインタに、アクセス位置の平均に対応するデータ管理情報（識別番号：１２）を示すポインタを設定する。また、ＣＰＵ１２は、アクセス位置の平均に対応するデータ管理情報が示すデータ実体の、データファイル先頭からのオフセットを、１つ前のデータ管理情報までのデータサイズを累積した値に基づいて算出する。ＣＰＵ１２は、算出したオフセットを、中央のグループ管理情報（識別番号：２）の位置情報に設定する。
【００８５】
次に、図１９に示すように、ＣＰＵ１２は、中央のグループ管理情報より小さい識別番号を持つグループ管理情報（識別番号：１）のデータ管理情報ポインタに、データ管理情報（識別番号：１０）を示すポインタを設定する。なお、中央のグループ管理情報が示すデータ管理情報から識別番号が小さい方に向かってアクセス位置の標準偏差ｓだけ離した位置に対応するデータ管理情報の識別番号が、１０である。
【００８６】
また、ＣＰＵ１２は、データ管理情報（識別番号：１０）が示すデータ実体の、データファイル先頭からのオフセットを、１つ前のデータ管理情報までのデータサイズを累積した値に基づいて算出する。ＣＰＵ１２は、算出したオフセットを、グループ管理情報（識別番号：１）の位置情報に設定する。
【００８７】
また、図２０に示すように、ＣＰＵ１２は、中央のグループ管理情報より大きい識別番号を持つグループ管理情報（識別番号：３）のデータ管理情報ポインタに、データ管理情報（識別番号：１３）を示すポインタを設定する。なお、中央のグループ管理情報が示すデータ管理情報から識別番号が大きい方に向かってアクセス位置の標準偏差ｓだけ離した位置に対応するデータ管理情報の識別番号が１３である。また、ＣＰＵ１２は、データ管理情報（識別番号：１３）が示すデータ実体の、データファイル先頭からのオフセットを、１つ前のデータ管理情報までのデータサイズを累積した値に基づいて算出する。ＣＰＵ１２は、算出したオフセットを、グループ管理情報（識別番号：３）の位置情報に設定する。
【００８８】
また、ユーザが操作部（図示省略）を操作して、データファイルの先頭からの所定のオフセット位置に、区間データのデータ実体を挿入する指示を情報処理装置１０に入力する。このとき、情報処理装置１０のＣＰＵ１２は、以下に説明するように、管理データ記憶部３２のグループ管理情報及びデータ管理情報を更新する。
【００８９】
まず、ＣＰＩ１２は、上記のアクセス処理ルーチンと同様に、入力されたデータファイルの先頭からのオフセットに対応するデータ管理情報を探索する。
【００９０】
例えば、図２１に示すように、２つの区間データの間を示す先頭からのオフセットに、区間データのデータ実体を挿入する指示が、情報処理装置１０に入力された場合には、当該２つの区間データを示すデータ管理情報ｎ、ｎ＋１が探索される。
【００９１】
ＣＰＵ１２が、データ管理情報ｎの後データ管理情報ポインタとデータ管理情報n+1の前データ管理情報ポインタとを、挿入される区間データを指し示すデータ管理情報ｍを指すように変更する。また、ＣＰＵ１２が、データ管理情報ｍの挿入箇所より後方に配置された各グループ管理情報の位置情報（先頭からのオフセット）に、挿入した区間データのデータサイズを各々加算して更新する。
【００９２】
以上の処理により、図２２に示すように、データファイルに、区間データを挿入するために、データ管理情報が挿入される。
【００９３】
また、ユーザが操作部（図示省略）を操作して、データファイルの先頭からの所定のオフセット位置の、区間データのデータ実体を削除する指示を情報処理装置１０に入力する。このとき、情報処理装置１０のＣＰＵ１２は、以下に説明するように、管理データ記憶部３２のグループ管理情報及びデータ管理情報を更新する。
【００９４】
まず、ＣＰＩ１２は、上記のアクセス処理ルーチンと同様に、入力されたデータファイルの先頭からの所定のオフセット位置に対応するデータ管理情報を探索する。
【００９５】
例えば、ある区間データを削除する指示が情報処理装置１０に入力された場合には、当該区間データを示すデータ管理情報ｎが探索される。
【００９６】
ＣＰＵ１２が、データ管理情報ｎ−１の後データ管理情報ポインタを、探索されたデータ管理情報ｎの次のデータ管理情報ｎ＋１を指すように変更する。また、ＣＰＵ１２が、データ管理情報ｎ＋１の前データ管理情報ポインタを、探索されたデータ管理情報ｎの前のデータ管理情報ｎ−１を指すように変更する。また、ＣＰＵ１２が、データ管理情報ｎより後方に配置された各グループ管理情報の位置情報（先頭からのオフセット）を、削除した区間データのデータサイズだけ各々減算するように更新する。
【００９７】
次に、本実施の形態の手法を用いて、データアクセスの実験を行った結果について説明する。なお、以下の表１に示すようなアクセス頻度の分布が得られるデータアクセスを仮定して、グループ管理情報の配置の更新を行った。
【００９８】
【表１】
0005573737.tif 000002
【００９９】
上記表１から求めた、データアクセスの統計情報を表２に示す。
【０１００】
【表２】
0005573737.tif 000003
【０１０１】
上記表２により、表３に従って、グループ管理情報の配置が更新される。
【０１０２】
【表３】
0005573737.tif 000004
【０１０３】
また、本実施の形態の手法を適用しない場合の比較対象として、図２３に示すように３つのグループ管理情報をデータ管理情報全体に対して均等に配置して、同様に、データアクセスの実験を行った。なお、「探索開始地点」を、中央のグループ管理情報（識別番号：２）とした。
【０１０４】
本実施の形態の手法を適用した場合には、グループ管理情報の配置の更新により、図２４に示すようにグループ管理情報が配置された。「グループ管理情報」の数を図２３と同じとした。
【０１０５】
上記表３より、アクセス位置の平均は１１．７であるため、「探索開始地点」となるグループ管理情報（識別番号：２）は、アクセス位置の平均に最も近い「データ管理情報」（識別番号：１２）を示すように配置された。分散は１．６のため、データ管理情報（識別番号：１２）の位置から、−１．６（＝１０．４）だけ離れた位置に対応するデータ管理情報（識別番号：１０）を示すように、前後のグループ管理情報（識別番号：１、３）が配置された。また、データ管理情報（識別番号：１２）の位置から、＋１．６ （＝１３．６）だけ離れた位置に対応するデータ管理情報（識別番号：１３）を示すように、前後のグループ管理情報（識別番号：１、３）が配置された。
【０１０６】
上記図２３と図２４の配置において、各データ管理情報が示す区間データにアクセスするためのステップ数を比較した。比較結果を表４に示す。
【０１０７】
【表４】
0005573737.tif 000005
【０１０８】
本実施の形態の手法を適用しない場合の配置（図２３）と本実施の形態の手法を適用した場合の配置（図２４）の各々について、総ステップ数を、以下の式に従って求めた。
【０１０９】
（総ステップ数）
＝  Σ（アクセス位置iのアクセス頻度）×（アクセス位置iでのステップ数）
【０１１０】
本実施の形態の手法を適用しない場合の配置では、総ステップ数が２０２ステップであるのに対して、本実施の形態の手法を適用した場合の配置では１４７ステップであった。本実施の形態の手法を適用することにより、アクセスのステップ数が削減されることがわかった。
【０１１１】
以上説明したように、第１の実施の形態に係る情報処理装置は、データ管理情報毎のアクセス頻度の分布に基づいて、グループ管理情報の配置を更新することにより、ＨＤＤに記憶されたデータファイルの任意の区間データに、効率的にアクセスすることができる。
【０１１２】
また、情報処理装置は、アクセス位置の平均に対応するデータ管理情報を示すように、探索開始地点のグループ管理情報を配置することで、アクセス頻度が高い区間データに、効率的にアクセスすることができる。
【０１１３】
また、情報処理装置は、所定期間毎に、グループ管理情報の配置を更新することにより、アクセス頻度分布が時間と共に変化するデータファイルであっても、効率的にアクセスすることができる。
【０１１４】
次に第２の実施の形態について説明する。なお、第１の実施の形態と同様の構成となる部分については、同一符号を付して、構成に関する説明を省略する。
【０１１５】
第２の実施の形態では、データ管理情報及びグループ管理情報を記憶している装置と、データ管理情報が示す区間データを記憶している装置とが別々となっている点が、第１の実施の形態と異なっている。
【０１１６】
図２５に示すように、情報処理システム２１０は、複数の情報処理装置１０と、複数の記憶装置２１２とを備えている。複数の情報処理装置１０と複数の記憶装置２１２とは、ネットワーク（例えば、ＬＡＮ）２１４によって相互に接続されている。
【０１１７】
記憶装置２１２は、ネットワーク２１４を介して、情報処理装置１０と通信することができる。記憶装置２１２は、上記第１の実施の形態で説明したＨＤＤ１８と同様に、データファイルとして複数の区間データを記憶している。
【０１１８】
情報処理装置１０の管理データ記憶部３２は、記憶装置２１２に記憶されている区間データを示すデータ管理情報及びグループ管理情報を記憶している。
【０１１９】
情報処理装置１０に、アクセス要求として、記憶装置２１２に記憶されているデータファイルの位置が入力されると、情報処理装置１０のアクセス処理部２８は、ネットワーク２１４を介して記憶装置２１２にアクセスする。
【０１２０】
なお、第２の実施の形態に係る情報処理装置１０の他の構成及び作用については、第１の実施の形態と同様であるため、説明を省略する。
【０１２１】
以上説明したように、第２の実施の形態に係る情報処理装置は、データ管理情報毎のアクセス頻度の分布に基づいて、グループ管理情報の配置を更新することにより、記憶装置に記憶されたデータファイルの任意の区間データに、効率的にアクセスすることができる。
【０１２２】
なお、図２６に示すように、データ管理情報及びグループ管理情報を記憶している情報処理装置１０が、ネットワーク２１４を介して、他の情報処理装置２１６に接続されていてもよい。他の情報処理装置２１６には、データファイルとして複数の区間データが記憶されている。情報処理装置１０に、アクセス要求として、他の情報処理装置２１６に記憶されているデータファイルの位置情報が入力されると、情報処理装置１０のアクセス処理部２８は、ネットワーク２１４を介して他の情報処理装置２１６にアクセスする。
【０１２３】
また、図２７に示すように、記憶装置２１８が、情報処理装置１０、及びデータファイルを記憶する複数のＨＤＤ２２０を備えていてもよい。情報処理装置１０とＨＤＤ２２０が接続されており、記憶装置２１８は、ネットワークを介して、他の装置（図示省略）と通信することができる。記憶装置２１８に、アクセス要求として、ＨＤＤ２２０に記憶されているデータファイルの位置が入力されると、情報処理装置１０のアクセス処理部２８はＨＤＤ２２０にアクセスする。
【０１２４】
また、上記の第１の実施の形態〜第２の実施の形態では、情報処理装置が、複数のグループ管理情報を均等に配置する場合を例に説明したが、これに限定されるものではない。情報処理装置は、複数のグループ管理情報を不均等に配置してもよい。例えば、情報処理装置は、隣接するグループ管理情報に対して、対応するデータ管理情報のアクセス頻度に応じて標準偏差の値を補正した値だけ離れた位置にグループ管理情報を配置するようにしてもよい。これによって、情報処理装置は、探索開始地点となるグループ管理情報から離れるほど、グループ管理情報の間隔が広くなるように、複数のグループ管理情報を配置することができる。
【０１２５】
また、情報処理装置が、複数のグループ管理情報を均等に配置すると共に、一部のグループ管理情報を使用しないように設定してもよい。
【０１２６】
また、情報処理装置は、隣接するグループ管理情報に対して、アクセス頻度分布の標準偏差だけ離れた位置にグループ管理情報を配置する場合を例に説明したが、これに限定されるものではない。例えば、情報処理装置は、隣接するグループ管理情報に対して、アクセス頻度分布の標準偏差の値を定数倍した値だけ離れた位置にグループ管理情報を配置してもよい。また、情報処理装置は、隣接するグループ管理情報に対して、アクセス頻度分布の標準偏差の値を定数で除算した値だけ離れた位置にグループ管理情報を配置してもよい。
【０１２７】
また、情報処理装置は、データファイルへアクセスする際に、入力を受け付けた、データファイルの先頭からのオフセットに最も近いグループ管理情報を探索する場合を例に説明したが、これに限定されるものではない。例えば、情報処理装置は、入力を受け付けた、データファイルの先頭からのオフセットに対応する、データ管理情報が属するデータ管理情報グループのグループ管理情報を探索するようにしてもよい
【０１２８】
また、グループ管理情報の個数は限定されるものではない。データ管理情報の個数より少なければ、グループ管理情報の個数はいくつでもよい。
【０１２９】
また、ガウス分布が１つだけ存在するアクセス頻度分布が得られるような、データアクセスを仮定した場合を例に説明したが、これに限定されるものではない。例えば、ガウス分布が複数存在するアクセス頻度分布が得られるような、データアクセスであってもよい。この場合には、情報処理装置は、ガウス分布毎に、アクセス位置の平均及び標準偏差を算出し、ガウス分布毎に、グループ管理情報の配置を更新するようにすればよい。
【０１３０】
また、情報処理装置が、アクセス頻度が最も高い位置として、アクセス位置の平均を求める場合を例に説明したが、これに限定されるものではない。例えば、情報処理装置が、データ管理情報毎のアクセス頻度から、アクセス頻度が最も高いデータ管理情報を特定するようにしてもよい。
【０１３１】
更に、上記では、アクセス処理ルーチン及び配置更新処理ルーチンを実行するためのプログラムが、ＨＤＤ１８に記憶されている態様を説明したが、これに限定されるものではない。当該プログラムは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、ＵＳＢメモリ等の可搬型の記録媒体に記憶されている形態で提供することも可能である。例えば、図２８に示すように、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、ＵＳＢメモリ等の、アクセス処理ルーチン及び配置更新処理ルーチンを実行するためのプログラムを記憶した記録媒体１５２が、情報処理装置１０のドライブ装置１５０にセットされる。そして、アクセス処理ルーチン及び配置更新処理ルーチンを実行するためのプログラムが、記録媒体１５２からドライブ装置１５０を介して、ＨＤＤ１８にインストールされる。
【産業上の利用可能性】
【０１３２】
開示する技術は、ストレージ、分散ストレージ、ネットワークストレージ、又は分散ネットワークストレージを利用する映像処理システム或いは映像処理サービスのメディア処理技術として適用可能である。また、開示する技術は、クラウドシステム、又はデータセンタのストレージ基盤技術として適用可能である。
【符号の説明】
【０１３３】
１０、２１６  情報処理装置
１２  ＣＰＵ
１４  ＲＯＭ
１６  ＲＡＭ
１８  ＨＤＤ
２８   アクセス処理部
３０   アクセス位置入力受付部
３２   管理データ記憶部
３４   アクセス頻度記憶部
３６   アクセス位置決定部
３８   アクセス処理部
４２   配置更新部
５０   グループ管理情報オフセット比較部
５２   データ管理情報オフセット比較部
５４   アクセス頻度加算部
６０   統計情報算出部
６２   配置決定部
２１０ 情報処理システム
２１２、２１８  記憶装置
【図１】
0005573737.tif 000006
【図２】
0005573737.tif 000007
【図３】
0005573737.tif 000008
【図４】
0005573737.tif 000009
【図５】
0005573737.tif 000010
【図６】
0005573737.tif 000011
【図７】
0005573737.tif 000012
【図８】
0005573737.tif 000013
【図９】
0005573737.tif 000014
【図１０】
0005573737.tif 000015
【図１１】
0005573737.tif 000016
【図１２】
0005573737.tif 000017
【図１３】
0005573737.tif 000018
【図１４】
0005573737.tif 000019
【図１５】
0005573737.tif 000020
【図１６】
0005573737.tif 000021
【図１７】
0005573737.tif 000022
【図１８】
0005573737.tif 000023
【図１９】
0005573737.tif 000024
【図２０】
0005573737.tif 000025
【図２１】
0005573737.tif 000026
【図２２】
0005573737.tif 000027
【図２３】
0005573737.tif 000028
【図２４】
0005573737.tif 000029
【図２５】
0005573737.tif 000030
【図２６】
0005573737.tif 000031
【図２７】
0005573737.tif 000032
【図２８】
0005573737.tif 000033