(57)【要約】【課題】データへのアクセスの要求に関する情報を，記憶装置で管理しているアクセス状況に正確に反映させることができる情報処理システム，情報処理装置，情報処理プログラム及び情報処理方法を提供する。【解決手段】情報処理装置は，記憶装置から読み出した第１のデータを保持するデータ保持手段と，第１のデータへのアクセス状況である第１のアクセス状況を検知する第１の検知手段と，第１の検知手段が検知した第１のアクセス状況を，記憶装置に送信する送信手段と，を有し，記憶装置は，第１のデータに対応する第２のデータを記憶する記憶手段と，送信手段から送信された第１のアクセス状況を受信する受信手段と，第２のデータへのアクセス状況である第２のアクセス状況を検知する第２の検知手段と，第１及び第２のアクセス状況に基づいて，第２のデータを記憶手段内において再配置する制御手段と，を有する。【選択図】図９
2015170160.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置と，該記憶装置にアクセス可能な情報処理装置とを有する情報処理システムであって，
前記情報処理装置は，
前記記憶装置から読み出した第１のデータを保持するデータ保持手段と，
前記第１のデータへのアクセス状況である第１のアクセス状況を検知する第１の検知手段と，
前記第１の検知手段が検知した前記第１のアクセス状況を，前記記憶装置に送信する送信手段と，を有し，
前記記憶装置は，
前記第１のデータに対応する第２のデータを記憶する記憶手段と，
前記送信手段から送信された前記第１のアクセス状況を受信する受信手段と，
前記第２のデータへのアクセス状況である第２のアクセス状況を検知する第２の検知手段と，
前記第１及び第２のアクセス状況に基づいて，前記第２のデータを前記記憶手段内において再配置する制御手段と，を有する，
情報処理システム。
【請求項２】
請求項１において，
前記情報処理装置は，さらに，
前記第１のデータまたは前記第２のデータへのアクセスの要求に応答して，前記アクセスを要求するデータが，前記第１のデータに含まれている場合には，前記データ保持手段にアクセスし，前記第１のデータに含まれていない場合には，前記記憶手段にアクセスするデータアクセス手段を有する情報処理システム。
【請求項３】
請求項２において，
前記情報処理装置は，さらに，
前記記憶手段内の単位領域毎に，該単位領域に記憶された第２のデータへの第２のアクセス状況と，前記単位領域に記憶された第２のデータに対応する前記第１のデータへの第１のアクセス状況との集計値を記憶するアクセス管理手段を有し，
前記アクセス管理手段は，前記受信手段が前記第１のアクセス状況を受信したときに，受信した前記第１のアクセス状況に対応する前記単位領域の集計値を更新し，前記第２の検知手段が前記第２のアクセス状況を検知したときに，検知した前記第２のアクセス状況に対応する前記単位領域の集計値を更新し，
前記制御手段は，前記第２のデータの再配置を，前記単位領域毎の集計値に基づいて行う情報処理システム。
【請求項４】
請求項３において，
前記情報処理装置は，さらに，
前記第２のデータの論理アドレスを前記第２のデータが記憶された前記単位領域を示す物理アドレスに変換するアドレス変換手段を有し，  
前記データアクセス手段は，前記第１の検知手段による前記第１のデータへのアクセスの検知したときに，アクセスを検知した前記第１のデータに対応する前記第２のデータにアクセスするための第１のアクセス命令を発行し，
前記アドレス変換手段は，前記第１のアクセス命令に含まれる前記第２のデータの論理アドレスを前記物理アドレスに変換し，
前記送信手段は，変換した前記物理アドレスを含む第１のアクセス命令を送信し，
前記制御手段は，前記単位領域の集計値の更新を，受信手段が受信したアクセス命令に含まれる前記物理アドレスが示す前記単位領域の集計値を更新することにより行う情報処理システム。
【請求項５】
請求項４において，
前記データアクセス手段は，前記アクセス命令を，前記論理アドレス内のデータ長を０バイトに設定して発行し，
前記制御手段は，前記受信手段が受信した前記アクセス命令の前記データ長が０バイトであるときに，前記第２のデータへのアクセスを実行せずに，前記単位領域のアクセス状況の更新を行う情報処理システム。
【請求項６】
請求項４または５において，
前記アドレス変換手段は，前記物理アドレスへの変換を，前記第２のデータを含むファイルにおける前記第２のデータの記憶位置から前記ファイルの最終位置までの全てについて行う情報処理システム。
【請求項７】
請求項３において，
前記情報処理装置は，さらに，
前記第２のデータの論理アドレスを前記第２のデータが記憶された前記単位領域を示す物理アドレスに変換するアドレス変換手段を有し，  
前記データアクセス手段は，前記第１の検知手段による前記第１のデータへのアクセスの検知したときに，アクセスを検知した前記第１のデータに対応する前記第２のデータにアクセスするための第２のアクセス命令を発行し，
前記アドレス変換手段は，前記第２のアクセス命令に含まれる前記第２のデータの論理アドレスを前記物理アドレスに変換し，
前記送信手段は，変換した前記物理アドレスを含む第２のアクセス命令を送信し，  
前記制御手段は，前記送信手段から変換した前記物理アドレスを含む第２のアクセス命令を送信されたときに，前記第２のデータへのアクセスを実行せずに，前記単位領域の集計値の更新を，受信手段が受信した前記第２のアクセス命令に含まれる前記物理アドレスが示す前記単位領域の集計値を更新することにより行う情報処理システム。
【請求項８】
請求項７において，
前記送信手段は，前記第２のアクセス命令を，第１の検知手段が前記第１のデータへのアクセスを検知した回数であるインクリメント情報を含めて発行し，
前記制御手段は，前記単位領域のアクセス状況の更新を，前記インクリメント情報に基づいて更新する情報処理システム。
【請求項９】
請求項８において，
前記送信手段は，前記インクリメント情報を，前記第１の検知手段がアクセスを検知した前記第１のデータの重要度に応じて変化させる情報処理システム。
【請求項１０】
記憶装置にアクセス可能であり，前記記憶装置から読み出した第１のデータへのアクセス状況を前記記憶装置に送信する情報処理装置であって，
前記第１のデータを保持するデータ保持手段と，
前記第１のデータへのアクセス状況である第１のアクセス状況を検知する第１の検知手段と，
前記第１の検知手段が検知した前記第１のデータのアクセス状況を前記記憶装置に送信し，前記記憶装置に，前記第１のアクセス状況及び前記第１のデータに対応する第２のデータへのアクセス状況である第２のアクセス状況に基づいて，前記第２のデータを前記記憶装置の記憶手段内において再配置させる送信手段と，を有する，
情報処理装置。
【請求項１１】
記憶装置にアクセス可能であり，前記記憶装置から読み出した第１のデータへのアクセス状況を前記記憶装置に送信する処理をコンピュータに実行させる情報処理プログラムであって，
前記第１のデータを保持し，
前記第１のデータへの第１のアクセス状況を検知し，
前記第１の検知手段が検知した前記第１のデータのアクセス状況を前記記憶装置に送信し，前記記憶装置に，前記第１のアクセス状況及び前記第１のデータに対応する第２のデータへのアクセス状況である第２のアクセス状況に基づいて，前記第２のデータを前記記憶装置の記憶手段内において再配置させる，
情報処理プログラム。
【請求項１２】
記憶装置と，該記憶装置にアクセス可能な情報処理装置とを有する情報処理システムにおける情報処理方法であって，
前記情報処理装置は，
前記記憶装置から読み出した第１のデータを保持するデータ保持工程と，
前記第１のデータへのアクセス状況である第１のアクセス状況を検知する第１の検知工程と，
前記第１の検知手段が検知した前記第１のアクセス状況を，前記記憶装置に送信する送信工程と，を有し，
前記記憶装置は，
前記第１のデータに対応する第２のデータを記憶する記憶工程と，
前記送信手段から送信された前記第１のアクセス状況を受信する受信工程と，
前記第２のデータへのアクセス状況である第２のアクセス状況を検知する第２の検知工程と，
前記第１及び第２のアクセス状況に基づいて，前記第２のデータを前記記憶手段内において再配置する制御工程と，を有する，
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，情報処理システム，情報処理装置，情報処理プログラム及び情報処理方法に関する。
【背景技術】
【０００２】
業務システム（例えば，顧客管理システム）では，ビッグデータのように膨大なデータの処理を求められる場合がある。ビッグデータは，大規模なデータの集積であり，これを解析することによって，例えば，事業に役立つ知見を得ることが可能になるものである。
【０００３】
ビッグデータのような膨大なデータの解析を行う場合，各システム内でデータベースは，膨大な量のデータを管理する必要がある。そのため，データベースを含む業務システムでは，さらなる処理能力の向上を実現するための技術改良が行われている。このような業務システムの技術改良は，例えば，互いの構成要素に影響を与えないことを条件として，システムを構成するアプリケーション，ストレージ（以下，記憶装置とも呼ぶ）及びネットワーク等の構成要素ごとに行われる場合がある。
【０００４】
例えば，記憶装置においては，読み出し速度の異なる複数の記憶部を設け，どの記憶部にデータを記憶するかについて，そのデータのアクセス頻度に応じて制御する場合がある。具体的には，例えば，記憶装置は，記憶装置内（自装置内）に記憶されたデータへのアクセスを検知することにより，各データへのアクセス頻度を求める。そして，アクセス頻度の高いデータを読み出し速度の速い記憶部に記憶する。または，アクセス頻度の高いデータを，読み出し速度の遅い記憶部から読み出し速度の速い記憶部に移動させる（例えば，特許文献１参照）。このようなデータのアクセス頻度に応じて，高速記憶部と低速記憶部間でデータの再配置を行う技術（以下，自動階層化技術と呼ぶ）により，記憶装置内のデータへのアクセス処理の効率化を図っている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−１６７７８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
例えば，データベースの構築や管理を行うＲＤＢＭＳ（ｄａｔａｂａｓｅ  ｍａｎａｇｅｍｅｎｔ  ｓｙｓｔｅｍ）のようなアプリケーションでは，記憶装置から読み出したデータを，アプリケーションに割り当てられたＤＲＡＭ等のメインメモリ内のメモリキャッシュに保持している。そして，メモリキャッシュに保持したデータにアクセスを行うときには，アプリケーションは，記憶装置ではなくメモリキャッシュに保持されたデータにアクセスさせることにより，データアクセスを高速化する構成を採用する場合がある。
【０００７】
ここで，アプリケーションにより割り当てられたメモリキャッシュ内のデータにアクセスがあった場合，記憶装置へのアクセスは発生しない。したがって，記憶装置は，メモリキャッシュ内のデータにアクセスがあったことを検知することができない。そのため，アプリケーションによるデータへのアクセスの要求に関する情報が，記憶装置で管理している各データへのアクセス状況に正確に反映されず，記憶装置は，自動階層化技術を適切に動作させることができない場合がある。
【０００８】
そこで，本発明の一つの側面では，データへのアクセスの要求に関する情報を，記憶装置で管理しているアクセス状況に反映させることができる情報処理システム，情報処理装置，情報処理プログラム及び情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一つの側面によれば，記憶装置と，該記憶装置にアクセス可能な情報処理装置とを有する情報処理システムであって，
前記情報処理装置は，
前記記憶装置から読み出した第１のデータを保持するデータ保持手段と，
前記第１のデータへのアクセス状況である第１のアクセス状況を検知する第１の検知手段と，
前記第１の検知手段が検知した前記第１のアクセス状況を，前記記憶装置に送信する送信手段と，を有し，
前記記憶装置は，
前記第１のデータに対応する前記第２のデータを記憶する記憶手段と，
前記送信手段から送信された前記第１のアクセス状況を受信する受信手段と，
前記第２のデータへのアクセス状況である第２のアクセス状況を検知する第２の検知手段と，
前記第１及び第２のアクセス状況に基づいて，前記第２のデータを前記記憶手段内において再配置する制御手段と，を有する。
【発明の効果】
【００１０】
一つの側面によれば，データへのアクセスの要求に関する情報を，記憶装置で管理しているアクセス状況に反映させることができる。
【図面の簡単な説明】
【００１１】
【図１】情報処理システムのハードウエア構成を示す図である。
【図２】図１で示した情報処理装置の機能ブロック図である。
【図３】図１で示した記憶装置の機能ブロック図である。
【図４】ファイル及びストレージの構成を説明する図である。
【図５】データアクセスの概要を説明する図である。
【図６】水平分業型システムにおけるデータアクセスの効率化について説明する図である。
【図７】水平分業型システムにおけるデータアクセスの効率化について説明する図である。
【図８】垂直統合型システムにおいてメモリキャッシュ内のデータにアクセスがあった場合のアクセス管理の動作を説明する図である。
【図９】第１の実施の形態におけるアクセス管理処理の概略を説明するフローチャートである。
【図１０】アクセス状況を検知する場合の概略を説明する図である。
【図１１】アクセス状況を検知する場合の概略を説明する図である。
【図１２】第１の実施の形態におけるアクセス管理処理の詳細を説明するフローチャートである。
【図１３】第１の実施の形態におけるアクセス管理処理の詳細を説明するフローチャートである。
【図１４】アクセス状況を検知する場合の詳細を説明する図である。
【図１５】アクセス状況を検知する場合の詳細を説明する図である。
【図１６】記憶装置内のデータへのアクセスを行う場合のアクセス管理処理を説明する図である。
【図１７】記憶装置内のデータへのアクセスを行う場合のアクセス管理処理を説明する図である。
【図１８】第１の実施の形態におけるメモリキャッシュ内のデータへのアクセスを行う場合のアクセス管理処理を説明する図である。
【図１９】第１の実施の形態におけるメモリキャッシュ内のデータへのアクセスを行う場合のアクセス管理処理を説明する図である。
【図２０】第２の実施の形態におけるアクセス管理処理を説明するフローチャートである。
【図２１】第２の実施の形態におけるアクセス管理処理を説明するフローチャートである。
【図２２】第２の実施の形態におけるメモリキャッシュ内のデータへのアクセスを行う場合のアクセス管理処理を説明する図である。
【発明を実施するための形態】
【００１２】
以下，図面にしたがって本発明の実施の形態を説明する。ただし，本発明の技術的範囲はこれらの実施の形態に限定されず，特許請求の範囲に記載された事項とその均等物まで及ぶものである。初めに，情報処理システムのハードウエア構成について説明する。
【００１３】
［情報処理システムの構成］
図１は，情報処理システムのハードウエア構成を示す図である。情報処理システム１０は，情報処理装置１と記憶装置２とを有している。情報処理装置１は，記憶装置２と接続されており，記憶装置２とアクセスが可能である。
【００１４】
情報処理装置１は，例えば，情報処理装置１内のアプリケーションによるデータアクセスの要求に応答して，記憶装置２内のデータにアクセスを行う。
【００１５】
記憶装置２は，例えば，ＨＤＤ（ハードディスクドライブ）と，ＨＤＤよりも高速にアクセスを行うことができるＳＳＤ（ソリッドステートドライブ）を有している。そして，記憶装置２は，情報処理装置１からのデータアクセスの要求に応答して，ＨＤＤやＳＳＤ内に記憶されたデータにアクセスし，そのデータを情報処理装置１に送信する。
【００１６】
情報処理装置１は，プロセッサであるＣＰＵ（プロセッサ）１０１と，メモリ１０２（メインメモリ）と，記憶媒体１０３と，外部インターフェース（Ｉ／Ｏユニット）１０４と，を有する。各部は，バス１０６を介して互いに接続される。記憶媒体１０３は，例えば，記憶装置２にアクセスする処理を行うためのプログラム１１０を記憶する。ＣＰＵ１０１は，プログラム１１０の実行時に，プログラム１１０をメモリ１０２にロードし，プログラム１１０と協働して，記憶装置２内のデータにアクセスする処理を行う。メモリ１０２は，記憶装置２から読み出したデータ（以下，第１のデータとも呼ぶ）を保持するメモリキャッシュ１２０（以下，データ保持部１２０またはデータ保持手段１２０とも呼ぶ，また，メモリキャッシュ１２０にデータを保持させる工程をデータ保持工程とも呼ぶ）としても機能する。なお，メモリキャッシュ１２０は，メモリ１０２とは別のメモリに設けられた構成であってもよい。
【００１７】
記憶装置２は，プロセッサであるＣＰＵ（プロセッサ）２０１と，メモリ２０２（メインメモリ）と，記憶媒体２０３と，外部インターフェース（Ｉ／Ｏユニット）２０４と，ストレージ２２０（以下，記憶部２２０，データ記憶部２２０または記憶手段２２０とも呼ぶ，また，ストレージ２２０にデータを記憶する工程を記憶工程とも呼ぶ）を有する。各部は，バス２０６を介して互いに接続される。記憶媒体２０３は，情報処理装置１からのデータアクセスの要求に応答し，アクセス先のデータを送信する処理を行うためのプログラム２１０を記憶する。ＣＰＵ２０１は，プログラム２１０の実行時に，プログラム２１０をメモリ２０２にロードし，プログラム２１０と協働して，情報処理装置１によるデータアクセスの要求に応答して記憶装置２内のデータにアクセスする処理を行う。なお，データアクセスについては図５で説明する。ストレージ２２０は，第１のデータに対応する（第１のデータを含む）第２のデータを記憶する。なお，記憶媒体２０３とストレージ２２０とを，１つの記憶媒体により構成するものであってもよい。
【００１８】
図２は，図１で示した情報処理装置の機能ブロック図である。図２に示すように，情報処理装置１のプログラム１１０は，例えば，データ要求部１１１（以下，アプリケーション１１１とも呼ぶ）と，データアクセス部１１２（以下，データアクセス手段１１２またはデータアクセス工程１１２とも呼ぶ）と，第１のアクセス検知部１１３（以下，第１の検知部１１３，第１の検知手段１１３または第１の検知工程１１３とも呼ぶ）と，アクセス変換部１１４（以下，ファイルシステム１１４，アドレス変換手段１１４またはアドレス変換工程１１４とも呼ぶ）と，アクセス送信部１１５（以下，送信部１１５，送信手段１１５または送信工程１１５とも呼ぶ）と，キャッシュ制御部１１６を有する。
【００１９】
データ要求部１１１は，第１のデータまたは記憶装置２内に記憶された第２のデータへアクセスするためのアクセス命令（以下，ＲＥＡＤ命令とも呼ぶ）を発行する。また，データ要求部１１１は，発行したアクセス命令に基づいて，データアクセス部１１２にデータアクセスを要求する。
【００２０】
データアクセス部１１２は，第１のデータまたは第２のデータへのアクセスの要求に応答して，アクセスを要求するデータが，第１のデータに含まれている場合には，データ保持部１２０にアクセスする。さらに，データアクセス部１１２は，アクセスを要求するデータが，第１のデータに含まれていない場合には，記憶装置２にアクセスする。
【００２１】
第１のアクセス検知部１１３は，データ保持部１２０内の第１のデータへのアクセス状況である第１のアクセス状況を検知する。第１のアクセス状況については図５で説明する。また，アクセス変換部１１４は，ファイル毎に管理された管理情報に基づいて，第２のデータの論理アドレス（以下，記憶位置とも呼ぶ）を第２のデータが記憶されている物理ブロックに変換する。ファイルの構成については図４で説明する。なお，以下，物理ブロックが記憶されている記憶装置２内のアドレスを物理アドレスとも呼ぶ。
【００２２】
アクセス送信部１１５は，第１のアクセス検知部１１３が検知した第１のアクセス状況を記憶装置２に送信する。また，キャッシュ制御部１１６は，記憶装置２から読み出した第１のデータをメモリキャッシュ１２０内で保持する制御を行う。さらに，キャッシュ制御部１１６は，例えば記憶装置２から第１のデータを読み出したときに，一定期間アクセスがされなかったデータやメモリキャッシュ１２０内で最も古いデータをメモリキャッシュ１２０から消去する。
【００２３】
図３は，図１で示した記憶装置の機能ブロック図である。図３に示すように，記憶装置２のプログラム２１０（以下，プログラム１１０と合わせて情報処理プログラムとも呼ぶ）は，例えば，データ制御部２１１と，アクセス受信部２１２（以下，受信部２１２，受信手段２１２または受信工程２１２とも呼ぶ）と，第２のアクセス検知部２１３（以下，第２の検知部２１３，第２の検知手段２１３または第２の検知工程２１３とも呼ぶ）と，アクセス制御部２１４（以下，制御部２１４，制御手段２１４または制御工程２１４とも呼ぶ）と，アクセス管理部２１５（以下，アクセス管理手段２１５とも呼ぶ）とを有する。
【００２４】
データ制御部２１１は，第１のデータを含む第２のデータをデータ記憶部２２０に記憶する制御を行う。また，アクセス受信部２１２は，アクセス送信部１１５から送信された第１のアクセス状況を受信する。また，第２のアクセス検知部２１３は，第２のデータへのアクセス状況である第２のアクセス状況を検知する。第２のアクセス状況については図５で説明する。また，アクセス制御部２１４は，第１及び第２のアクセス状況に基づいて，第２のデータをデータ記憶部２２０内において再配置する。また，アクセス管理部２１５は，データ記憶部２２０内の単位領域毎に，単位領域に記憶された第２のデータへの第２のアクセス状況と，単位領域に記憶された第２のデータに対応する第１のデータへの第１のアクセス状況との集計値を記憶する。
【００２５】
［一般的なデータアクセス］
次に，情報処理装置１がストレージ２２０内のデータにアクセスする場合の一般的な例について説明する。図４は，ファイル及びストレージの構成を説明する図である。図５は，データアクセスの概要を説明する図である。
【００２６】
初めに，ファイルシステム１１４が有するファイルの構成を説明する。図４に示すファイルＡは，データ長が８０キロバイト（以下，バイトをＢ，キロバイトをＫＢとも記載する）であるファイルであり，ファイルシステム１１４が管理するファイルの１つである。図４の例においては，ファイル内に格納するブロック（以下，論理ブロックとも呼ぶ）のブロックサイズは３２ＫＢである。そのため，ファイルＡは，データ長が３２ＫＢ，３２ＫＢ，１６ＫＢである３つの論理ブロックに分けてデータを格納している。この論理ブロックのブロックサイズは，ストレージ２２０におけるデータ記憶の単位である物理ブロックのブロックサイズと同じサイズにすることにより，論理ブロックをそのままストレージ２２０内の物理ブロックに割り当てることができる。
【００２７】
次に，ファイルシステム１１４が有する論理ブロックと物理ブロックの対応表について説明する。論理ブロックと物理ブロックの対応表は，図４の例においては，ファイルＡの各論理ブロックと，その各論理ブロックのデータが実際に記憶されているストレージ２２０内の物理ブロックとの対応関係を記憶している。図４の例においては，論理ブロック０のデータは，ストレージ２２０内のブロック１に記憶され，論理ブロック１のデータは，ストレージ２２０内のブロック４に記憶されていることを示している。また，論理ブロック２のデータは，ストレージ２２０内のブロック１０に記憶されていることを示している。
【００２８】
次に，アプリケーション１１１によるデータアクセスの具体例について説明する。図５に示す例において，アプリケーション１１１は，アクセスするデータの論理アドレスを含むアクセス命令を発行する。図５の例のアクセス命令は，アクセスするデータを含むファイル名と，アクセスするデータのファイル内における位置を示す論理アドレスと，アクセスするデータのデータ長とからなる。論理アドレスは，ファイル内における仮想的なアドレスである。図５の例においては，アプリケーション１１１が発行したアクセス命令に含まれる論理アドレスは３２０００であり，データ長が４００００である。そのため，図５の例では，ファイルＡの先頭から３２０００の位置（ファイルＡの先頭から３２ＫＢの位置）から４００００の位置（４０ＫＢの位置）までに記憶されたデータへのアクセスを，アプリケーション１１１が実行している状態を示している。
【００２９】
次に，ファイルシステム１１４は，各ファイルの管理情報に基づいて，アプリケーション１１１がアクセスを実行しているデータが記憶されている物理ブロックの情報を取得する。図５の例では，ファイルシステム１１４は，各ファイルの管理情報として，論理ブロック対応表と，図４において説明した論理ブロックと物理ブロックの対応表とを有する。論理ブロック対応表は，論理アドレスと論理ブロックとを対応させた表である。具体的に，図５におけるファイルＡの論理ブロック対応表は，論理アドレス０（ファイルＡの先頭）から論理アドレス３２０００までの３２ＫＢが論理ブロック０に対応し，論理アドレス３２０００から論理アドレス６４０００までの３２ＫＢが論理ブロック１に対応することを示している。さらに，論理アドレス６４０００から論理アドレス８００００までの１６ＫＢが論理ブロック２に対応することを示している。図５の例において，アプリケーション１１１が発行したアクセス命令は，「ファイルＡの先頭から３２ＫＢの位置から４０ＫＢの位置」に記憶されたデータにアクセスするための命令である。そのため，論理ブロック対応表によれば，アクセス命令に係るデータの先頭は，論理ブロック１の先頭に対応し，アクセス命令に係るデータの最後は，論理ブロック２の先頭から８ＫＢの位置に対応する。
【００３０】
次に，ファイルシステム１１４は，論理ブロックと物理ブロックの対応表より，論理ブロック１及び論理ブロック２に対応する物理ブロックであるブロック４及びブロック１０の情報を取得する。そして，ファイルシステム１１４は，ストレージ２２０内におけるブロック４及びブロック１０であるデータにアクセスを行う。
【００３１】
その後，ストレージ２２０は，アプリケーション１１１によりアクセスされたデータを，ファイルシステム１１４を介してアプリケーション１１１に送信する。これによって，アプリケーション１１１によるデータアクセスは完了する。
【００３２】
［水平分業型システム］
次に水平分業型システムと垂直統合型システムについて説明する。水平分業型システムは，互いの構成要素に影響を与えないことを条件として，システムを構成するアプリケーション，記憶装置及びネットワーク等の構成要素ごとに最適化を図りながら開発を行うシステムである。一方，垂直統合型システムは，構成要素個々の最適化よりも，各構成要素の組み合わせにおけるシステム全体の最適化を図りながら開発を行うシステムである。すなわち，水平分業型システムは，例えば，図５に示すアプリケーション１１１とファイルシステム１１４と記憶装置２とを，それぞれの最適化を図りながら開発するものである。また，垂直統合型システムは，システム全体の最適化を図りながら，図５に示すアプリケーション１１１とファイルシステム１１４と記憶装置２とを開発するものである。
【００３３】
水平分業型システムは，各構成要素が独立し，構成要素間の影響が最小化されるために，構成要素の開発段階における自由度が高い。また，開発の自由度が高いことから構成要素ごとに数多くの製品が開発されているため，製品のコストが安くなる傾向にある。さらに，システム開発者は，多くの製品の中から採用する製品を選択することができるというメリットを有している。しかしながら，異なるベンダーが作成した構成要素を組み合わせてシステムを構築する場合，システムの構造が複雑化し，技術の変化に対する対応力や柔軟性が乏しいシステムになる場合がある。また，システム構築に多くの時間を要し，システム構築にかかるコストが大きくなる場合がある。さらに，構成要素ごとに開発ベンダーが異なることから，システム全体としての運用や保守が複雑になる場合がある。
【００３４】
図６，図７は，水平分業型システムにおけるデータアクセスの効率化について説明する図である。図６は，記憶装置２においてデータアクセスを効率化する場合を説明する図であり，図７は，情報処理装置１においてデータアクセスを効率化する場合を説明する図である。図６の例では，記憶装置２は，ＨＤＤとＳＳＤからなるストレージ２２０と，ＨＤＤ内の各ブロックへのアクセスを管理するアクセス管理部２１５を有している。また，図５で説明したように，アプリケーション１１１は，ファイルシステム１１４にアクセス命令を発行することにより，ストレージ２２０内のＨＤＤまたはＳＳＤに記憶されたデータにアクセスする。
【００３５】
図６の例では，アプリケーション１１１は，ＨＤＤ内のブロック２とブロック３にアクセスを行っている。次に，アクセス管理部２１５は，アクセス管理部２１５内のブロック２のカウントが３から４に更新し，ブロック３のカウントが５から６に更新している。そして，記憶装置２は，アクセス管理部２１５内の各ブロックのカウントに基づいて，最もアクセスが多いブロック３をＳＳＤに記憶している。これにより，最もアクセスが多いブロックへのアクセスを高速に行うことが可能になり，情報処理装置１から記憶装置２へのデータアクセスを効率化することが可能になる。
【００３６】
図７の例では，情報処理装置１はメモリキャッシュ１２０を有している。メモリキャッシュ１２０は，例えば，アプリケーション１１１が記憶装置２にアクセスして処理を行ったデータを，一定期間記憶しておくための図１に示すメモリ１０２内に設けられた記憶領域である。具体的に，メモリキャッシュ１２０は，例えばアプリケーション１１１からアクセスを受けた記憶装置２内のデータを記憶する。これにより，アプリケーション１１１は，メモリキャッシュ１２０に記憶されたデータにアクセスするときに，メモリキャッシュ１２０にアクセスすればよいため，記憶装置２にアクセスする必要がなくなる。そのため，アプリケーション１１１は，メモリキャッシュ１２０に記憶されたデータへのアクセスを高速に行うことが可能になり，情報処理装置１から記憶装置２へのデータアクセスを効率化することが可能になる。なお，図７に示すようなメモリキャッシュ１２０を用いたキャッシュ処理を行うアプリケーションとしては，上述したＲＤＢＭＳのほかに，マイクロソフト（登録商標）社が提供する「．ＮＥＴ  Ｆｒａｍｅｗｏｒｋ」が該当する。
【００３７】
［垂直統合型システム］
一方，垂直統合型システムは，システム全体の最適化を図りながら開発されているため，水平分業型システムと比較して，システム全体としての安定性や信頼性が高く，システム導入時の作業や運用が容易である。また，システム全体の最適化を図るために，オープンな標準技術が採用されている場合が多く，アプリケーションのデプロイや移行が容易であるといったメリットを有している。しかしながら，カスタマイズを行うことが困難である等，開発の自由度が低く，水平分業型システムの場合と比較して，構成要素の製品コストが高くなる傾向にある。また，１つのベンダーによって，システム全体を構築する場合が多いため，特定ベンダーの独自技術に大きく依存したシステムになる場合がある。
【００３８】
次に，図６及び図７で説明した水平分業型システムにおけるデータアクセスの効率化を垂直統合型システムに適用した場合について説明する。図８は，垂直統合型システムにおいてメモリキャッシュ内のデータにアクセスがあった場合のアクセス管理の動作を説明する図である。
【００３９】
アプリケーション１１１がメモリキャッシュ１２０にデータアクセスした場合，メモリキャッシュ１２０へのデータアクセスに関する情報は，記憶装置２に送信されない。そのため，図８に示すように，ストレージ２２０内に記憶されたデータと同じデータ（メモリキャッシュ１２０に記憶されたデータ）にアクセスがあった場合に，アクセス管理部２１５のカウントは更新されない。具体的に，図８の例において，アクセス管理部２１５は，ブロック１，ブロック２，ブロック３のカウントとして，それぞれ１０回，８回，５回を記憶している。ここで，メモリキャッシュ１２０内にＨＤＤのブロック２のデータが記憶されており，アプリケーション１１１からブロック２にアクセスが５回あったとする。この場合，アプリケーション１１１がブロック２内のデータにアクセスした回数は，アクセス管理部２１５が記憶する８回に，アプリケーション１１１がメモリキャッシュ１２０にアクセスした５回を加算した１３回である。しかし，アクセス管理部２１５は，アプリケーション１１１がブロック２内のデータにアクセスした回数として，アプリケーション１１１からメモリキャッシュ１２０にアクセスした回数が含まれない回数（８回）を記憶している。そのため，アプリケーション１１１によるデータへのアクセスの要求に関する情報は，アクセス管理部２１５で記憶しているカウントに正確に反映されず，上記の自動階層化技術が適切に動作しない場合がある。図８の例では，カウント数が最も多いブロックであるブロック１（１０回）がＳＳＤに記憶される。
【００４０】
そこで，本実施の形態では，メモリキャッシュ１２０内に保持されたデータへのアクセス状況を検知して記憶装置に送信することにより，記憶装置２及びメモリキャッシュ１２０へのアクセス状況に基づいて記憶装置２内のデータの配置を制御する。
【００４１】
［第１の実施の形態］
最初に第１の実施の形態について説明する。図９は，第１の実施の形態におけるアクセス管理処理の概略を説明するフローチャートである。また，図１０及び図１１は，アクセス状況を検知する場合の概略を説明する図である。図１０及び図１１を参照しながら，図９のアクセス管理処理の概略を説明する。なお，図９において，Ｓ１，Ｓ２，Ｓ１１は情報処理装置１が行う処理であり，Ｓ２からＳ６は記憶装置２が行う処理である。
【００４２】
［第１のアクセス状況の検知］
初めに，図９の左側のフローチャートが示すように，情報処理装置１の第１のアクセス検知部１１３は，第１のアクセス状況の検知を行う（Ｓ１のＹＥＳ）。
【００４３】
第１のアクセス状況は，情報処理装置１のメモリキャッシュ１２０に記憶されている第１のデータへのアクセスの状況である。第１のアクセス状況は，例えば，単位時間あたりに第１のデータへアクセスがあった回数である。また，第１のアクセス状況は，例えば，第１のデータへのアクセスが所定の回数に達するまでに要する時間であってもよい。そのため，第１のアクセス検知部１１３は，上記の単位時間が経過したときや，第１のデータへのアクセスが上記の所定の回数に達したときに，これを第１のアクセス状況として検知する。また，第１のアクセス検知部１１３は，第１のデータへのアクセスがある毎に，これを第１のアクセス状況として検知するものでもよい。
【００４４】
次に，情報処理装置１のアクセス送信部１１５は，第１のアクセス検知部１１３によって検知された第１のアクセス状況を記憶装置２に送信し（Ｓ２），記憶装置２のアクセス受信部２１２は，アクセス送信部１１５から送信された第１のアクセス状況を受信する（Ｓ３）。そして，記憶装置２のアクセス制御部２１４は，アクセス受信部２１２が受信した第１のアクセス状況に基づいて，例えば，記憶装置２内に設けられたカウンタを更新する（Ｓ４）。
【００４５】
図１０は，第１のアクセス状況を検知する場合の概略を説明する図である。図１０において，第１のアクセス検知部１１３は，例えば，アプリケーション１１１によるメモリキャッシュ１２０へのデータアクセスを検知する（Ｓ１）。第１のアクセス検知部１１３は，例えば，ミドルウエアが有する機能である。次に，アクセス送信部１１５は，第１のアクセス検知部１１３が検知したメモリキャッシュ１２０へのデータアクセスを，記憶装置２に送信する（Ｓ２）。そして，アクセス制御部２１４は，アクセス受信部２１２が第１のアクセス状況を受信したときに（Ｓ３），第１のアクセス状況の内容を，例えば記憶装置２内に設けられたカウンタ（図示しない）に反映させる（Ｓ４）。なお，図１０に示す例において，アクセス受信部２１２は，第２のアクセス検知部２１３を経由して，アクセス制御部２１４に第１のアクセス状況を送信している。また，図１０において，データアクセスを行うための流れを実線で示し，第１のアクセス状況をカウンタに反映させるための流れを破線で示している。
【００４６】
［第２のアクセス状況の検知］
図９に戻り，記憶装置２の第２のアクセス検知部２１３は，第２のアクセス状況の検知を行う（Ｓ５のＹＥＳ）。
【００４７】
第２のアクセス状況は，記憶装置２のストレージ２２０に記憶されている第２のデータへのアクセスの状況である。第２のアクセス状況は，第１のアクセス状況と同様に，例えば，単位時間あたりに第２のデータへアクセスがあった回数である。また，第２のアクセス状況は，例えば，第２のデータへのアクセスが所定の回数に達するまでに要する時間であってもよい。そのため，第２のアクセス検知部２１３は，上記の単位時間が経過したときや，第２のデータへのアクセスが上記の所定の回数に達したときに，第２のアクセス状況を検知する。また，第２のアクセス検知部２１３は，第２のデータへのアクセスがある毎に，これを第２のアクセス状況として検知するものでもよい。
【００４８】
次に，記憶装置２のアクセス制御部２１４は，第２のアクセス検知部２１３が検知した第２のアクセス状況に基づいて，カウンタを更新する（Ｓ６）。そして，アクセス制御部２１４は，カウンタの内容（第１のアクセス状況及び第２のアクセス状況が反映されたカウンタの内容）に基づいて，記憶装置２のストレージ２２０に記憶された第２のデータの再配置を行う（Ｓ７）。
【００４９】
図１１は，第２のアクセス状況を検知する場合の概略を説明する図である。図１１において，第２のアクセス検知部２１３は，例えば，アプリケーション１１１によるストレージ２２０へのデータアクセスを検知する（Ｓ５）。図１１の例では，第２のアクセス検知部２１３は，アクセス受信部２１２において，ストレージへのデータアクセスを検知している。次に，記憶装置２のアクセス制御部２１４は，第２のアクセス検知部２１３が検知した第２のアクセス状況に基づいて，カウンタを更新する（Ｓ６）。そして，アクセス制御部２１４は，カウンタの内容に基づいて，記憶装置２のストレージ２２０に記憶された第２のデータの再配置を行う（Ｓ７）。なお，アクセス制御部２１４による第２のデータの再配置は，カウンタに第２のアクセス状況が反映される毎に行うものであってもよいし，カウンタに第２のアクセス状況が所定回数反映されたときまたは所定時間毎に行うものであってよい。また，図１１において，データアクセスを行うための流れを実線で示し，第２のアクセス状況をカウンタに反映させるための流れを破線で示している。
【００５０】
次に，図９の右側のフローチャートについて説明する。上述したＳ１からＳ６の処理に並行して，情報処理装置１のメモリキャッシュ１２０は，図９の右側のフローチャートが示すように，保持している第１のデータを更新する処理を行う（Ｓ１１）。例えば，メモリキャッシュ１２０は，記憶装置２内のストレージ２２０に記憶されたデータのうち，アクセス頻度が高いデータを消去せずにメモリキャッシュ１２０内に維持する。そして，メモリキャッシュ１２０に記憶されたデータのうち，アクセス頻度が低いデータを消去する。これにより，メモリキャッシュ１２０内にアクセス頻度のより高いデータを記憶させておくことが可能になる。そのため，アプリケーション１１１によるデータアクセスを効率的に行うことが可能になる。
【００５１】
このように，本実施の形態によれば，情報処理装置１は，データ保持部１２０により，記憶装置から読み出した第１のデータを保持し，第１のアクセス検知部１１３により，第１のデータへの第１のアクセス状況を検知する。そして，アクセス送信部１１５により，第１のアクセス検知部１１３が検知した第１のアクセス状況を，記憶装置２に送信する。また，記憶装置２は，データ記憶部２２０により，第１のデータを含む第２のデータを記憶し，アクセス受信部２１２により，第１のアクセス状況を受信する。そして，第２のアクセス検知部２１３により，第２のデータへの第２のアクセス状況を検知し，アクセス制御部２１４により，第１及び第２のアクセス状況に基づいて，第２のデータをデータ記憶部２２０内において再配置する。これにより，アクセス制御部２１４は，アプリケーション１１１によるメモリキャッシュ１２０へのデータアクセスに関する情報を反映させた状態で，自動階層化技術を動作させることが可能になる。  
【００５２】
[第１の実施の形態の詳細]
次に，第１の実施の形態の詳細について説明する。図１２及び図１３は，第１の実施の形態におけるアクセス管理処理の詳細を説明するフローチャートである。図１４及び図１５は，アクセス状況を検知する場合の詳細を説明する図である。図１６及び図１７は，記憶装置内のデータへのアクセスを行う場合のアクセス管理処理を説明する図である。また，図１８及び図１９は，第１の実施の形態におけるメモリキャッシュ内のデータへのアクセスを行う場合のアクセス管理処理を説明する図である。図１６から図１９を参照しながら，図１２から図１５のアクセス管理処理の詳細を説明する。
【００５３】
［情報処理装置の処理の詳細］
初めに，アプリケーション１１１が第１のデータまたは第２のデータへのアクセスするためのアクセス命令を発行した場合（Ｓ２１のＹＥＳ），データアクセス部１１２は，図１４に示すように，発行されたアクセス命令の内容に基づいて，アクセスするデータがメモリキャッシュ１２０に存在するか否かについて確認する（Ｓ２２）。
【００５４】
データアクセス部１１２（図１４，図１５の例においてはミドルウエアの一部）は，アクセスするデータが第１のデータに含まれている場合（Ｓ２２のＹＥＳ），メモリキャッシュ１２０内の第１のデータにアクセスする（Ｓ２２）。この場合，第１のアクセス検知部１１３（図１４，図１５の例においてはミドルウエアの一部）は，図１４に示すように，アプリケーション１１１による第１のデータへの第１のアクセス状況を検知する（Ｓ２３）。なお，図１２の例においては，第１のアクセス検知部１１３は，第１のアクセス状況の検知を，データアクセス部１１２がメモリキャッシュ１２０にアクセスを行う毎に行うものとする。そして，データアクセス部１１２は，例えば，アプリケーション１１１が発行したアクセス命令のデータ長に０Ｂを設定したアクセス命令（以下，第１のアクセス命令とも呼ぶ）をファイルシステム１１４に発行する（Ｓ２４）。すなわち，本実施の形態では，メモリキャッシュ１２０へのアクセスに関する情報（第１のアクセス状況）を記憶装置２に送信するために，記憶装置２のデータにアクセスを行うためのアクセス命令を用いる。
【００５５】
具体的に，メモリキャッシュ１２０へのアクセスに関する情報を送信するときは，データアクセス部１１２は，アクセス命令が有するデータ長に０Ｂを設定した状態のアクセス命令を発行する。アクセス命令は，例えば，図５において説明した場合と同様に，ファイルシステム１１４内のファイルを示すファイル名と，論理アドレスと，アクセスするデータのデータ長とからなる。なお，図１４の例においては，データアクセス部１１２は，第１のアクセス検知部１１３を経由して，ファイルシステム１１４に第１のアクセス命令を発行している。
【００５６】
一方，データアクセス部１１２は，アクセスするデータが第１のデータに含まれていない場合（Ｓ２２のＮＯ），データ長にアクセスするデータのデータ長を設定したアクセス命令を発行する（Ｓ２５）。データアクセス部１１２は，アプリケーション１１１が発行したアクセス命令を，そのままの状態でファイルシステム１１４に送信するものであってもよい。なお，図１５の例において，データアクセス部１１２は，第１のアクセス検知部１１３を経由せずにファイルシステム１１４にアクセスしている（Ｓ２５）。
【００５７】
次に，ファイルシステム１１４は，図５において説明したように，アクセス命令内の論理アドレスを物理ブロックに変換する（Ｓ２６）。そして，アクセス送信部１１５（例えば，ファイルシステム１１４の一部）は，物理ブロックを含む変換後のアクセス命令（以下，変換後アクセス命令と呼ぶ）を記憶装置２に送信する（Ｓ２７）。
【００５８】
変換後アクセス命令は，例えば，Ｓ２６におけるアドレス変換により取得した物理ブロックのうち，先頭の物理ブロックと，先頭の物理ブロックから連続してアクセスする必要がある物理ブロック数（以下，ブロック数とも呼ぶ）とを含む。また，変換後アクセス命令は，例えば，変換前のアクセス命令に含まれていたデータ長を含む。これにより，変換後アクセス命令を受信した記憶装置２は，データ長に０Ｂが設定されている場合には，メモリキャッシュ１２０内の第１のデータへのアクセスがあったことを記憶装置２に送信するためのアクセス命令であると判断できる。また，変換後アクセス命令を受信した記憶装置２は，データ長に０Ｂ以外が設定されている場合には，アプリケーション１１１からストレージ２２０内の第２のデータへのアクセスをするためのアクセス命令であると判断できる。すなわち，情報処理装置１は，単一のアプリケーション（アクセス命令）を有することによって，メモリキャッシュ１２０にアクセスがあったことを記憶装置２に送信するためのアクセス命令と，ストレージ２２０にアクセスをするためのアクセス命令とを発行することができる。なお，アクセス送信部１１５が物理ブロック単位に変換後アクセス命令を送信する場合，変換後アクセス命令は，例えば，物理ブロック及びデータ長のみを有するものであってもよい。また，図１４及び図１５において，データアクセスを行うための流れを実線で示し，第１のアクセス状況をカウンタに反映させるための流れを破線で示している。
【００５９】
［記憶装置の処理の詳細］
記憶装置２内のアクセス制御部２１４は，情報処理装置１から受信した変換後アクセス命令のデータ長が０Ｂである場合（Ｓ３１のＹＥＳ），ストレージ２２０に記憶された第２のデータへアクセスする。そして，第２のアクセス検知部２１３は，図１４に示すように，アクセス制御部２１４による第２のデータへのアクセスに基づいて，第２のアクセス状況を検知する（Ｓ３２）。さらに，アクセス管理部２１５は，変更後アクセス命令に含まれる物理ブロックに基づいてアクセスカウント集計値（以下，集計値とも呼ぶ）を更新する（Ｓ３５）。アクセスカウント集計値については，図１６から図２０において説明する。なお，受信した変換後アクセス命令のデータ長が０Ｂである場合（Ｓ３１のＹＥＳ），ストレージ２２０に記憶されたデータへのサーチやシークを行わないものであってもよい。
【００６０】
一方，情報処理装置１から受信したアクセス命令のデータ長が０Ｂでない場合（Ｓ３１のＮＯ），アクセス制御部２１４は，ストレージ２２０に記憶された第２のデータへアクセスする。この場合，第２のアクセス検知部２１３は，図１５に示すように，アプリケーション１１１による第２のデータへの第２のアクセス状況を検知する（Ｓ３３）。さらに，アクセス制御部２１４は，データアクセスを要求したアプリケーション１１１にアクセスした第２のデータを送信する（Ｓ３４）。そして，アクセス管理部２１５は，変換後アクセス命令に含まれる物理ブロックに基づいて集計値を更新する（Ｓ３５）。
【００６１】
すなわち，情報処理装置１から受信した変換後アクセス命令のデータ長が０Ｂである場合，その変換後アクセス命令は，記憶装置２内のデータにアクセスすることを目的としたものではない。そのため，アクセス制御部２１４は，第２のデータへアクセスするためのサーチやシークを行う必要はなく，また，データアクセスを要求したアプリケーション１１１にデータを送信する必要もない。これにより，記憶装置２は，不必要なサーチ，シーク及びデータ送信を行うことなく，メモリキャッシュ１２０へのアクセスに関する情報を集計値に反映させることができる。
【００６２】
そして，その後，アクセス制御部２１４は，集計値に基づいてストレージ２２０に記憶された第２のデータの再配置を行う（Ｓ３６）。すなわち，アクセス制御部２１４は，第２のデータの再配置を行うタイミングまでに集計値に反映された第１のアクセス状況及び第２のアクセス状況に基づいて，第２のデータの再配置を行う。
【００６３】
［第１の実施の形態の具体例（１）］
次に，第１の実施の形態の具体例について説明する。初めに，アプリケーション１１１が，記憶装置２内の第２のデータにアクセスを行う場合（アクセスするデータがメモリキャッシュ１２０内に存在しない場合）について説明する。図１６及び図１７は，記憶装置内のデータへのアクセスを行う場合のアクセス管理処理を説明する図である。
【００６４】
図１６の例において，アプリケーション１１１が記憶装置２内の第２のデータにアクセスを行う場合，データアクセス部１１２は，図５等で説明したように，ファイルシステム１１４に論理アドレスを含むアクセス命令を発行する（図１２のＳ２５）。次に，ファイルシステム１１４は，データアクセス部１１２が発行したアクセス命令に含まれる論理アドレスを物理ブロックに変換する（図１２のＳ２６）。以下に，アクセス命令に含まれる論理アドレスを物理ブロックに変換する場合の具体例について説明する。なお，以下，図５の場合と同様に，論理ブロックのブロックサイズ及び物理ブロックのブロックサイズを３２ＫＢとして説明する。
【００６５】
図１６の例において，アクセス命令に含まれるデータ長は５００００（５０ＫＢ）である。そして，各論理ブロックのブロックサイズは３２ＫＢであるため，アプリケーション１１１がアクセスしようとしているデータは，２つの論理ブロックに跨って記憶されているデータである。さらに，アクセス命令に含まれる論理アドレスは３２０００（３２ＫＢ）である。そのため，アプリケーション１１１がアクセスしようとしているデータは，図１６の例においては，論理ブロック１及び論理ブロック２に記憶されている。そして，ファイルシステム１１４は，図１６に示すように，ファイルＤの論理ブロックと物理ブロックの対応表を参照し，論理ブロック１及び論理ブロック２に対応する物理ブロックであるブロック３及びブロック４の情報を取得する。これによって，論理アドレスから物理ブロックへの変換は完了する。
【００６６】
次に，アクセス送信部１１５は，変換後アクセス命令を記憶装置２内のアクセス受信部２１２に送信する（図１２のＳ２７）。図１６の例における変換後アクセス命令は，例えば，先頭の物理ブロックがブロック３であり，ブロック数が２であり，データ長が０Ｂ以外の値（例えば，アクセスするデータのサイズである５０ＫＢ）であるという情報を含んでいる。
【００６７】
そして，アクセス管理部２１５は，アクセス受信部２１２が受信した変換後アクセス命令に基づいて，図１６に示すように，アクセスカウント集計値のブロック３とブロック４のカウントをそれぞれ１加算する（図１３のＳ３５）。以下，アクセスカウント集計値について説明する。
【００６８】
アクセス管理部２１５は，ストレージ２２０内の単位領域毎に，それぞれの単位領域に記憶された第２のデータへの第２のアクセス状況と，その単位領域に記憶された第２のデータに対応するメモリキャッシュ１２０内の第１のデータへの第１のアクセス状況との集計値を記憶する。この単位領域は，例えば物理ブロック単位でよい。図１６の例においては，ＨＤＤは９つの物理ブロック（ブロック１からブロック９）を有しており，アクセス管理部２１５は，９つの物理ブロックごとにアクセスカウントを集計する。
【００６９】
具体的に，アクセス管理部２１５は，アクセス受信部２１２が第１のアクセス状況を受信したときに，受信した第１のアクセス状況に対応する単位領域の集計値を更新する。例えば，メモリキャッシュ１２０にブロック３のデータが保持されている場合において，メモリキャッシュ１２０内のブロック３のデータにアクセスがあった旨を示す第１のアクセス状況をアクセス管理部２１５が受信した場合，ブロック３のアクセスカウントが更新される。さらに，アクセス管理部２１５は，第２のアクセス検知部２１３が第２のアクセス状況を検知したときに，検知した第２のアクセス状況に対応する単位領域の集計値を更新する。
【００７０】
次に，アクセス制御部２１４は，変換後アクセス命令のデータ長が０Ｂでないため（Ｓ３１のＮＯ），図１６に示すように，変換後アクセス命令に基づいてストレージ２２０のＨＤＤ内におけるブロック３とブロック４にアクセスを行う（図１３のＳ３３）。そして，例えば，アクセス制御部２１４がブロック３及びブロック４のデータをファイルシステム１１４に送信し，ファイルシステム１１４が受信したデータの中からアクセス命令に基づくデータを，アプリケーション１１１に送信する（図１３のＳ３４）。これによって，アプリケーション１１１によるストレージ２２０へのデータアクセスは完了する。
【００７１】
なお，アクセスする物理ブロックの記憶位置が離れている場合（記憶位置が連続していない場合），ファイルシステム１１４は，複数回の変換後アクセス命令を記憶装置２に発行するものであってよい。例えば，図１７では，アプリケーション１１１がアクセスする記憶装置２内の物理ブロックは，ブロック４とブロック６であり，それぞれの記憶位置は離れている。この場合，ファイルシステム１１４は，例えば，先頭の物理ブロックがブロック４であり，ブロック数が１であり，データ長が０Ｂ以外の値（例えば，３２ＫＢ）である変換後アクセス命令を発行する。続いて，ファイルシステム１１４は，先頭の物理ブロックがブロック６であり，ブロック数が１であり，データ長が０Ｂ以外の値（例えば，１８ＫＢ）である変換後アクセス命令を発行するものであってよい。すなわち，図１７の例でにおいて，例えば，ファイルシステム１１４が２回の変換後アクセス命令を発行するものであってよい。
【００７２】
また，図１６及び図１７の例においては，アクセスカウント集計値を更新した後に，ストレージ２２０へのアクセスを行っているが，図１３に示すように，ストレージ２２０へのアクセスを行った後に，アクセスカウント集計値を更新するものであってもよい。
【００７３】
［第１の実施の形態の具体例（２）］
次に，アプリケーション１１１が，メモリキャッシュ１２０内のデータにアクセスを行う場合（アクセスするデータがメモリキャッシュ１２０に存在する場合）について説明する。図１８及び図１９は，第１の実施の形態におけるメモリキャッシュ内のデータへのアクセスを行う場合のアクセス管理処理を説明する図である。
【００７４】
図１８の例において，アプリケーション１１１がメモリキャッシュ１２０内のデータにアクセスを行った場合，データアクセス部１１２は，アプリケーションが発行したアクセス命令のデータ長に０Ｂを設定したアクセス命令を発行する（図１２のＳ２４）。図１８の例におけるアクセス命令は，図１６において説明した場合と同様に，ファイルシステム１１４内のファイルを示すファイル名と，論理アドレスと，アクセスするデータのデータ長とからなる。図１８の例では，アクセス命令のファイル名はＤを，論理アドレスは３２０００（３２ＫＢ）を，データ長は０（０Ｂ）をそれぞれ示している。なお，図１４で説明したように，データアクセス部１１２が，アプリケーション１１１が発行したアクセス命令のデータ長に０Ｂを設定するものであってもよい。
【００７５】
次に，ファイルシステム１１４は，データアクセス部１１２が発行したアクセス命令に含まれる論理アドレスを物理ブロックに変換する。図１８の例では，論理アドレスのファイル名はＤを示しているため，ファイルシステム１１４内に記憶されたファイルＤの論理ブロックと物理ブロックの対応表を参照して，論理アドレスを物理ブロックに変換する（図１２のＳ２６）。アクセス命令に含まれる論理アドレスから物理ブロックへの変換についての詳細については，図１６において説明したため省略する。
【００７６】
図１８の例では，アクセス命令に含まれるデータ長は０Ｂである。また，アクセス命令に含まれる論理アドレスは論理ブロック１に対応している。そのため，アプリケーション１１１は，論理ブロック１にアクセスを行う。そして，ファイルシステム１１４は，ファイルＤの論理ブロックと物理ブロックの対応表を参照し，論理ブロック１に対応する物理ブロックであるブロック４の情報を取得することにより，論理アドレスから物理ブロックへの変換を終了する。そして，アクセス送信部１１５は，変換後アクセス命令を記憶装置２内のアクセス受信部２１２に送信する（図１２のＳ２７）。図１８の例における変換後アクセス命令は，物理ブロック及びデータ長の情報を含むものであってよい。具体的に，図１８の例における変換後アクセス命令は，例えば，先頭の物理ブロックがブロック４であり，データ長が０Ｂである情報からなるものであってよい。
【００７７】
次に，アクセス管理部２１５は，アクセス受信部２１２が受信した変換後アクセス命令に基づいて，図１６に示すように，アクセスカウント集計値のブロック３とブロック４のカウントをそれぞれ１加算する（図１３のＳ３５）。そして，アクセス制御部２１４は，変換後アクセス命令のデータ長が０Ｂであるため（図１３のＳ３１のＹＥＳ），図１８に示すように，ストレージ２２０のＨＤＤ内におけるブロック３とブロック４へのアクセスにおいて，サーチ及びシークは行わないものであってよい（図１３のＳ３２）。
【００７８】
これにより，ストレージ２２０にアクセスをするためのアクセス命令を発行するアプリケーションによって，メモリキャッシュ１２０にアクセスがあったことを記憶装置２に送信することができる。すなわち，アプリケーションを新規に作成することなく，メモリキャッシュ１２０にアクセスがあったことを記憶装置２に送信することができる。さらに，アプリケーション１１１がアクセスしたメモリキャッシュ１２０内のデータが記憶されている最初の物理ブロックについて，アクセスカウント集計値を更新することができる。そして，アクセス制御部２１４は，メモリキャッシュ１２０へのアクセスの情報を反映させたアクセスカウント集計値に基づいて，ストレージ２２０内のデータの再配置を行うことができる。
【００７９】
また，図１９の例に示すように，ファイルシステム１１４による論理アドレスから物理ブロックへの変換を，第２のデータを含むファイルにおける第２のデータの論理アドレスから，ファイルの最終位置を示す論理アドレスまでの全てについて行うものであってもよい。具体的に，図１９の例において，アクセス命令に含まれる論理アドレスは３２０００であり，データ長が０Ｂである。そのため，ファイルシステム１１４は，論理ブロック１からファイルＤの最後の論理ブロックである論理ブロック３までに割り当てられた論理ブロックを物理ブロックに変換する。すなわち，ファイルシステム１１４は，アクセス命令に対応する物理ブロックであるブロック４，ブロック５，ブロック９の情報を取得する。なお，図１９の例では，ブロック４とブロック５が連続しており，ブロック９が連続していない。そのため，アクセス送信部１１５は，例えば，先頭の物理ブロックが４であり，ブロック数が２であり，データ長が０Ｂである変換後アクセス命令を記憶装置２に送信する。続いて，先頭の物理ブロックが９であり，ブロック数が１であり，データ長が０Ｂである変換後アクセス命令を記憶装置２に送信するものであってよい。
【００８０】
このように，ファイルシステム１１４は，メモリキャッシュ１２０へアクセスがあった場合に，複数の論理ブロックのデータにアクセスがあったという情報を記憶装置２に送信することができる。そのため，アクセス管理部２１５は，例えば，アプリケーション１１１がファイルの一部のみをアクセスすることが少ない場合等に，アクセスカウント集計値を実際のデータアクセスの状況に近い状態に更新することが可能になる。
【００８１】
なお，図１８及び図１９の例においては，アクセスカウント集計値を更新した後に，ストレージ２２０にアクセスを行うためのサーチ等を行うか否か判断しているが，図１３に示すように，サーチ等の判断を行った後に，アクセスカウント集計値を更新するものであってもよい。
【００８２】
［第２の実施の形態］
次に，第２の実施の形態の詳細について説明する。図２０及び図２１は，第２の実施の形態におけるアクセス管理処理の詳細を説明するフローチャートである。図２２は，第２の実施の形態におけるメモリキャッシュ内のデータへのアクセスを行う場合のアクセス管理処理を説明する図である。図２２を参照しながら，図２０及び図２１のアクセス管理処理の詳細を説明する。
【００８３】
［情報処理装置の処理の詳細］
初めに，アプリケーション１１１が第１のデータまたは第２のデータへのアクセスするためのアクセス命令を発行した場合（Ｓ４１のＹＥＳ），データアクセス部１１２（例えばミドルウエアの一部）は，発行されたアクセス命令の内容に基づいて，アクセスするデータがメモリキャッシュ１２０に存在するか否かについて確認する（Ｓ４２）。アプリケーション１１１が発行するアクセス命令は，第１の実施の形態で説明したアクセス命令と同じものであってよい。
【００８４】
データアクセス部１１２は，アクセスするデータが第１のデータに含まれている場合（Ｓ４２のＹＥＳ），メモリキャッシュ１２０内の第１のデータにアクセスする（Ｓ４３）。この場合，第１のアクセス検知部１１３（例えばミドルウエアの一部）は，アプリケーション１１１からの第１のデータへの第１のアクセス状況を検知する（Ｓ４３）。なお，図２０の例においては，第１のアクセス状況の検知は，データアクセス部１１２がメモリキャッシュ１２０にアクセスを行う毎に行うものとする。
【００８５】
そして，データアクセス部１１２は，アプリケーション１１１が発行したアクセス命令に基づいて，記憶装置２内の第２のデータへのアクセス命令（以下，第２のアクセス命令またはＣＲＥＡＤ命令とも呼ぶ）をファイルシステム１１４に発行する（Ｓ４４）。
【００８６】
第２のアクセス命令は，例えば，図５において説明したアクセス命令と同様に，ファイルシステム１１４内のファイルを示すファイル名と，論理アドレスと，アクセスするデータのデータ長とを有する。ここで，第２のアクセス命令は，第１のアクセス命令とは異なるアクセス命令であり，第２のデータへのアクセスを目的としたものではなく，第１のアクセス状況を記憶装置２に送信するためのものである。具体的に，第１の実施の形態における第１のアクセス命令と異なり，第２のアクセス命令は，実際にアクセスされたメモリキャッシュ１２０内のデータのデータ長を有する。そのため，ファイルシステム１１４は，実際にアクセスされたデータのデータ長に基づいて，論理アドレスを物理ブロックに変換を行うことが可能になる。そして，記憶装置２は，実際にアクセスされたメモリキャッシュ１２０内のデータに対応した形でアクセス管理部２１５の集計値に加算することが可能になる。
【００８７】
一方，データアクセス部１１２は，アクセスするデータが第１のデータに含まれていない場合（Ｓ４２のＮＯ），記憶装置２内の第２のデータへの第１のアクセス命令を発行する（Ｓ４５）。
【００８８】
次に，ファイルシステム１１４は，図５において説明したように，アクセス命令内の論理アドレスを物理ブロックに変換する（Ｓ４６）。そして，アクセス送信部１１５は，変換後の第１のアクセス命令または変換後の第２のアクセス命令（以下，これらをまとめて変換後アクセス命令とも呼ぶ）を記憶装置２に送信する。
【００８９】
［記憶装置の処理の詳細］
記憶装置２内のアクセス管理部２１５は，情報処理装置１から受信した変換後アクセス命令が変換後の第２のアクセス命令である場合（Ｓ５１のＹＥＳ），受信した変換後の第２のアクセス命令に含まれる物理ブロックに基づいて集計値を更新する（Ｓ５４）。
【００９０】
一方，情報処理装置１から受信したアクセス命令が変換後の第２のアクセス命令でない場合（Ｓ５１のＮＯ），アクセス制御部２１４は，ストレージ２２０に記憶された第２のデータへアクセスする。この場合，第２のアクセス検知部２１３は，第２のデータへの第２のアクセス状況を検知する（Ｓ５２）。さらに，アクセス制御部２１４は，データアクセスを要求したアプリケーション１１１にアクセスしたデータを送信する（Ｓ５３）。そして，アクセス命令に含まれる物理ブロックに基づいてアクセスカウント集計値を更新する（Ｓ５４）。その後，アクセス制御部２１４は，第１の実施の形態と同様に，アクセスカウント集計値に基づいてストレージ２２０に記憶された第２のデータの再配置を行う（Ｓ５５）。なお，アクセス管理部２１５は，変換後の第１のアクセス命令と変換後の第２のアクセス命令との両方について，アクセスカウント集計値を更新することができる必要がある（Ｓ５４）。
【００９１】
［第２の実施の形態の具体例］
次に，第２の実施の形態の具体例について説明する。図２２の例において，アプリケーション１１１がメモリキャッシュ１２０内の第１のデータにアクセスを行った場合，データアクセス部１１２は，ファイルシステム１１４に第２のアクセス命令を発行する（図２０のＳ４４）。図２２の例における第２のアクセス命令は，図５において説明したアクセス命令と同様に，ファイルシステム１１４内のファイルを示すファイル名と，論理アドレスと，アクセスするデータのデータ長とを有する。さらに，図２２の例における第２のアクセス命令は，例えば，アクセス管理部２１５が集計値に加算する数に関する情報であるインクリメント（以下，インクリメント情報とも呼ぶ）を有する。図２２の例では，第２のアクセス命令のファイル名はＤを，論理アドレスは３２０００（３２ＫＢ）を，データ長は５００００（５０ＫＢ）を，インクリメントは１０をそれぞれ示している。第２のアクセス命令がインクリメントを有することにより，データアクセス部１１２は，複数の第１のアクセス状況をまとめて第２のアクセス命令を発行することができる。なお，複数の第１のアクセス状況をまとめて第２のアクセス命令を発行する場合には，データアクセス部１１２は，第１のアクセス状況を蓄積するためのカウンタを有するものであってよい。
【００９２】
また，データアクセス部１１２は，アクセスする第１のデータに関する重要度に応じて，インクリメントに設定する値を変化させることができる。例えば，インクリメントを１００や２００等に設定して，アプリケーション１１１によりアクセスした第１のデータが，必ずストレージ２２０におけるＳＳＤ内に記憶されるようにしてもよい。また，データアクセス部１１２は，インクリメントを有しない第２のアクセス命令を発行するものであってもよい。
【００９３】
次に，ファイルシステム１１４は，データアクセス部１１２が発行した第２のアクセス命令に含まれる論理アドレスを物理ブロックに変換する。図２２の例では，第２のアクセス命令のファイル名はＤを示しているため，ファイルシステム１１４内に記憶されたファイルＤの論理ブロックと物理ブロックの対応表を参照して物理ブロックに変換する（図２０のＳ４６）。論理アドレスから物理ブロックへの変換についての詳細については，図１６において説明したため省略する。
【００９４】
図２２の例において，アクセス命令に含まれるデータ長は５００００（５０ＫＢ）である。そして，各論理ブロックのブロックサイズは３２ＫＢであるため，アプリケーション１１１がアクセスしようとしているデータは，２つの論理ブロックに跨って記憶されているデータである。さらに，第２のアクセス命令に含まれる論理アドレスは３２０００であるため，アプリケーション１１１がアクセスしようとしているデータは，論理ブロック１及び論理ブロック２に記憶されている。そして，ファイルシステム１１４は，ファイルＤの論理アドレスと物理ブロックの対応表を参照し，論理ブロック１及び論理ブロック２に対応する物理ブロックであるブロック４とブロック６の情報を取得することにより，論理アドレスから物理ブロックへの変換を完了する。
【００９５】
次に，アクセス送信部１１５は，変換後アクセス命令を記憶装置２内のアクセス受信部２１２に送信する（図２０のＳ４７）。変換後アクセス命令は，例えば，Ｓ４６におけるアドレス変換により取得した先頭のブロックの物理ブロックと，ブロック数とを含む。また，データアクセス部１１２が発行した第２のアクセス命令にインクリメントが含まれている場合には，変換後アクセス命令は，インクリメントを含むものであってよい。
【００９６】
そして，アクセス管理部２１５は，例えば，変換後アクセス命令に基づいて，図２２に示すように，集計値のブロック４とブロック６のカウントをそれぞれ１０ずつ加算する（図２１のＳ５４）。そして，図１６の場合と異なり，アクセス制御部２１４は，受信した変換後アクセス命令が変換後の第２のアクセス命令である場合（図２２に示す場合）には，ストレージ２２０にアクセスを行わない。
【００９７】
すなわち，図２２における第２のアクセス命令は，ストレージ２２０に記憶された第２のデータへのアクセスを目的としたものではなく，メモリキャッシュ１２０内の第１のデータへのアクセスがあったことを記憶装置２に送信するためのアクセス命令である。そのため，アクセス制御部２１４は，受信したアクセス命令が第２のアクセス命令である場合には，ストレージ２２０にアクセスを行う必要がない。これにより，アクセス管理部２１５は，メモリキャッシュ１２０にあったアクセスの情報を，ストレージ２２０にアクセスすることなく，アクセスカウント集計値に反映させることができる。
【００９８】
なお，ファイルシステム１１４がアクセスする物理ブロックの記憶位置が離れている場合（記憶位置が連続していない場合）は，図１７で説明したように，ファイルシステム１１４は，複数回の変換後アクセス命令を記憶装置２に発行するものであってよい。
【００９９】
このように，本実施の形態によれば，データアクセス部１１２は，アクセスするデータ長を含む第２のアクセス命令を発行する。これにより，第２のアクセス命令を受信したファイルシステム１１４は，第２のアクセス命令が示す全てのデータ（アプリケーション１１１によりアクセスされたメモリキャッシュ１２０内の全てのデータ）の論理アドレスを物理ブロックに変換することができる。そのため，アクセス制御部２１４は，アプリケーション１１１によるメモリキャッシュ１２０へのデータアクセスに関する情報を反映させた状態で，自動階層化技術を動作させることが可能になる。
【０１００】
以上の実施の形態をまとめると，以下の付記のとおりである。
【０１０１】
（付記１）
記憶装置と，該記憶装置にアクセス可能な情報処理装置とを有する情報処理システムであって，
前記情報処理装置は，
前記記憶装置から読み出した第１のデータを保持するデータ保持手段と，
前記第１のデータへのアクセス状況である第１のアクセス状況を検知する第１の検知手段と，
前記第１の検知手段が検知した前記第１のアクセス状況を，前記記憶装置に送信する送信手段と，を有し，
前記記憶装置は，
前記第１のデータに対応する第２のデータを記憶する記憶手段と，
前記送信手段から送信された前記第１のアクセス状況を受信する受信手段と，
前記第２のデータへのアクセス状況である第２のアクセス状況を検知する第２の検知手段と，
前記第１及び第２のアクセス状況に基づいて，前記第２のデータを前記記憶手段内において再配置する制御手段と，を有する，
情報処理システム。
【０１０２】
（付記２）
付記１において，
前記情報処理装置は，さらに，
前記第１のデータまたは前記第２のデータへのアクセスの要求に応答して，前記アクセスを要求するデータが，前記第１のデータに含まれている場合には，前記データ保持手段にアクセスし，前記第１のデータに含まれていない場合には，前記記憶手段にアクセスするデータアクセス手段を有する情報処理システム。
【０１０３】
（付記３）
付記２において，
前記情報処理装置は，さらに，
前記記憶手段内の単位領域毎に，該単位領域に記憶された第２のデータへの第２のアクセス状況と，前記単位領域に記憶された第２のデータに対応する前記第１のデータへの第１のアクセス状況との集計値を記憶するアクセス管理手段を有し，
前記アクセス管理手段は，前記受信手段が前記第１のアクセス状況を受信したときに，受信した前記第１のアクセス状況に対応する前記単位領域の集計値を更新し，前記第２の検知手段が前記第２のアクセス状況を検知したときに，検知した前記第２のアクセス状況に対応する前記単位領域の集計値を更新し，
前記制御手段は，前記第２のデータの再配置を，前記単位領域毎の集計値に基づいて行う情報処理システム。
【０１０４】
（付記４）
付記３において，
前記制御手段は，前記第２のデータの再配置を，前記記憶手段内の高速領域と低速領域との間で再配置を行うことにより行う情報処理システム。
【０１０５】
（付記５）
付記３において，
前記情報処理装置は，さらに，
前記第２のデータの論理アドレスを前記第２のデータが記憶された前記単位領域を示す物理アドレスに変換するアドレス変換手段を有し，  
前記データアクセス手段は，前記第１の検知手段による前記第１のデータへのアクセスの検知したときに，アクセスを検知した前記第１のデータに対応する前記第２のデータにアクセスするための第１のアクセス命令を発行し，
前記アドレス変換手段は，前記第１のアクセス命令に含まれる前記第２のデータの論理アドレスを前記物理アドレスに変換し，
前記送信手段は，変換した前記物理アドレスを含む第１のアクセス命令を送信し，
前記制御手段は，前記単位領域の集計値の更新を，受信手段が受信したアクセス命令に含まれる前記物理アドレスが示す前記単位領域の集計値を更新することにより行う情報処理システム。
【０１０６】
（付記６）
付記５において，
前記データアクセス手段は，前記アクセス命令を，前記論理アドレス内のデータ長を０バイトに設定して発行し，
前記制御手段は，前記受信手段が受信した前記アクセス命令の前記データ長が０バイトであるときに，前記第２のデータへのアクセスを実行せずに，前記単位領域のアクセス状況の更新を行う情報処理システム。
【０１０７】
（付記７）
付記５または６において，
前記アドレス変換手段は，前記物理アドレスへの変換を，前記第２のデータを含むファイルにおける前記第２のデータの記憶位置から前記ファイルの最終位置までの全てについて行う情報処理システム。
【０１０８】
（付記８）
付記３において，
前記情報処理装置は，さらに，
前記第２のデータの論理アドレスを前記第２のデータが記憶された前記単位領域を示す物理アドレスに変換するアドレス変換手段を有し，  
前記データアクセス手段は，前記第１の検知手段による前記第１のデータへのアクセスの検知したときに，アクセスを検知した前記第１のデータに対応する前記第２のデータにアクセスするための第２のアクセス命令を発行し，
前記アドレス変換手段は，前記第２のアクセス命令に含まれる前記第２のデータの論理アドレスを前記物理アドレスに変換し，
前記送信手段は，変換した前記物理アドレスを含む第２のアクセス命令を送信し，  
前記制御手段は，前記送信手段から変換した前記物理アドレスを含む第２のアクセス命令を送信されたときに，前記第２のデータへのアクセスを実行せずに，前記単位領域の集計値の更新を，受信手段が受信した前記第２のアクセス命令に含まれる前記物理アドレスが示す前記単位領域の集計値を更新することにより行う情報処理システム。
【０１０９】
（付記９）
付記８において，
前記送信手段は，前記第２のアクセス命令を，第１の検知手段が前記第１のデータへのアクセスを検知した回数であるインクリメント情報を含めて発行し，
前記制御手段は，前記単位領域のアクセス状況の更新を，前記インクリメント情報に基づいて更新する情報処理システム。
【０１１０】
（付記１０）
付記９において，
前記送信手段は，前記インクリメント情報を，前記第１の検知手段がアクセスを検知した前記第１のデータの重要度に応じて変化させる情報処理システム。
【０１１１】
（付記１１）
記憶装置にアクセス可能であり，前記記憶装置から読み出した第１のデータへのアクセス状況を前記記憶装置に送信する情報処理装置であって，
前記第１のデータを保持するデータ保持手段と，
前記第１のデータへのアクセス状況である第１のアクセス状況を検知する第１の検知手段と，
前記第１の検知手段が検知した前記第１のデータのアクセス状況を前記記憶装置に送信し，前記記憶装置に，前記第１のアクセス状況及び前記第１のデータに対応する第２のデータへのアクセス状況である第２のアクセス状況に基づいて，前記第２のデータを前記記憶装置の記憶手段内において再配置させる送信手段と，を有する，
情報処理装置。
【０１１２】
（付記１２）
記憶装置にアクセス可能であり，前記記憶装置から読み出した第１のデータへのアクセス状況を前記記憶装置に送信する処理をコンピュータに実行させる情報処理プログラムであって，
前記第１のデータを保持し，
前記第１のデータへのアクセス状況である第１のアクセス状況を検知し，
前記第１の検知手段が検知した前記第１のデータのアクセス状況を前記記憶装置に送信し，前記記憶装置に，前記第１のアクセス状況及び前記第１のデータに対応する第２のデータへのアクセス状況である第２のアクセス状況に基づいて，前記第２のデータを前記記憶装置の記憶手段内において再配置させる，
情報処理プログラム。
【０１１３】
（付記１３）
記憶装置と，該記憶装置にアクセス可能な情報処理装置とを有する情報処理システムにおける情報処理方法であって，
前記情報処理装置は，
前記記憶装置から読み出した第１のデータを保持するデータ保持工程と，
前記第１のデータへのアクセス状況である第１のアクセス状況を検知する第１の検知工程と，
前記第１の検知手段が検知した前記第１のアクセス状況を，前記記憶装置に送信する送信工程と，を有し，
前記記憶装置は，
前記第１のデータに対応する第２のデータを記憶する記憶工程と，
前記送信手段から送信された前記第１のアクセス状況を受信する受信工程と，
前記第２のデータへのアクセス状況である第２のアクセス状況を検知する第２の検知工程と，
前記第１及び第２のアクセス状況に基づいて，前記第２のデータを前記記憶手段内において再配置する制御工程と，を有する，
情報処理方法。
【符号の説明】
【０１１４】
１：情報処理装置          ２：記憶装置
１０：情報処理システム    １１１：アプリケーション  
１２０：メモリキャッシュ  ２１４：アクセス制御部
２１５：アクセス管理部
【図１】
2015170160.tif 000003
【図２】
2015170160.tif 000004
【図３】
2015170160.tif 000005
【図４】
2015170160.tif 000006
【図５】
2015170160.tif 000007
【図６】
2015170160.tif 000008
【図７】
2015170160.tif 000009
【図８】
2015170160.tif 000010
【図９】
2015170160.tif 000011
【図１０】
2015170160.tif 000012
【図１１】
2015170160.tif 000013
【図１２】
2015170160.tif 000014
【図１３】
2015170160.tif 000015
【図１４】
2015170160.tif 000016
【図１５】
2015170160.tif 000017
【図１６】
2015170160.tif 000018
【図１７】
2015170160.tif 000019
【図１８】
2015170160.tif 000020
【図１９】
2015170160.tif 000021
【図２０】
2015170160.tif 000022
【図２１】
2015170160.tif 000023
【図２２】
2015170160.tif 000024