特開2015-26260(P2015-26260A)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社フィックスターズの特許一覧

特開2015-26260データ処理装置、プログラム及びデータ処理方法
<>
  • 特開2015026260-データ処理装置、プログラム及びデータ処理方法 図000003
  • 特開2015026260-データ処理装置、プログラム及びデータ処理方法 図000004
  • 特開2015026260-データ処理装置、プログラム及びデータ処理方法 図000005
  • 特開2015026260-データ処理装置、プログラム及びデータ処理方法 図000006
  • 特開2015026260-データ処理装置、プログラム及びデータ処理方法 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2015-26260(P2015-26260A)
(43)【公開日】2015年2月5日
(54)【発明の名称】データ処理装置、プログラム及びデータ処理方法
(51)【国際特許分類】
   G06F 12/00 20060101AFI20150109BHJP
   G06F 12/08 20060101ALI20150109BHJP
【FI】
   G06F12/00 514M
   G06F12/08 501Z
【審査請求】未請求
【請求項の数】5
【出願形態】OL
【全頁数】11
(21)【出願番号】特願2013-155506(P2013-155506)
(22)【出願日】2013年7月26日
(71)【出願人】
【識別番号】508089266
【氏名又は名称】株式会社フィックスターズ
(74)【代理人】
【識別番号】110000752
【氏名又は名称】特許業務法人朝日特許事務所
(72)【発明者】
【氏名】村瀬 正名
(72)【発明者】
【氏名】土山 了士
【テーマコード(参考)】
5B005
【Fターム(参考)】
5B005MM01
5B005NN12
(57)【要約】
【課題】キャッシュ用の記憶手段を用いる場合においてデータの取得に要する時間を短くすること。
【解決手段】記憶制御手段101は、予め定められた条件を満たすデータをキャッシュ用の第1記憶手段に記憶させる。要求手段102は、要求元装置100から第2記憶手段に記憶されている一のデータの要求が行われた場合に、その一のデータの要求を、第1及び第2記憶手段に対して行う。より詳細には、要求手段102は、一のデータが第1記憶手段に記憶されているか否かの判定を行うことなくその第1記憶手段に対し一のデータの要求を行う。出力手段103は、要求手段102の要求に応答して第1及び第2記憶手段のいずれかから最初に送られてきたデータを要求元装置100に出力する。
【選択図】図2
【特許請求の範囲】
【請求項1】
予め定められた条件を満たすデータをキャッシュ用の第1記憶手段に記憶させる記憶制御手段と、
要求元の装置から第2記憶手段に記憶されている一のデータの要求が行われた場合に、当該一のデータの要求を、前記第1及び第2記憶手段に対して行う要求手段と、
前記要求手段の要求に応答して前記第1及び第2記憶手段のいずれかから最初に送られてきたデータを前記要求元の装置に出力する出力手段と
を備えるデータ処理装置。
【請求項2】
前記要求手段は、前記一のデータが前記第1記憶手段に記憶されているか否かの判定を行うことなく当該第1記憶手段に対し当該一のデータの要求を行う
請求項1に記載のデータ処理装置。
【請求項3】
前記第2記憶手段と他の装置とのデータ伝送の状態を示す伝送状態情報を取得する取得手段を備え、
前記記憶制御手段は、前記第1記憶手段に記憶させるデータの索引を示す索引情報を記憶させ、
前記要求手段は、前記取得手段により取得された前記伝送状態情報が予め定められた条件を満たす場合は、前記第2記憶手段に対する前記一のデータの要求を行う前に、前記記憶制御手段により記憶された索引情報を参照して前記第1記憶手段に当該一のデータが記憶されているか否かの判定を行い、当該一のデータが記憶されていないと判定した場合に限り、前記第2記憶手段に対する前記一のデータの要求を行う
請求項1に記載のデータ処理装置。
【請求項4】
コンピュータを、
予め定められた条件を満たすデータをキャッシュ用の第1記憶手段に記憶させる記憶制御手段と、
要求元の装置から第2記憶手段に記憶されている一のデータの要求が行われた場合に、当該一のデータの要求を、前記第1及び第2記憶手段に対して行う要求手段と、
前記要求手段の要求に応答して前記第1及び第2記憶手段のいずれかから最初に送られてきたデータを前記要求元の装置に出力する出力手段
として機能させるためのプログラム。
【請求項5】
予め定められた条件を満たすデータをキャッシュ用の第1記憶手段に記憶させる記憶制御ステップと、
要求元の装置から第2記憶手段に記憶されている一のデータの要求が行われた場合に、当該一のデータの要求を、前記第1及び第2記憶手段に対して行う要求ステップと、
前記要求ステップにおける要求に応答して前記第1及び第2記憶手段のいずれかから最初に送られてきたデータを前記要求元の装置に出力する出力ステップと
を備えるデータ処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データの取得に要する時間を短くするための技術に関する。
【背景技術】
【0002】
キャッシュ用の記憶手段を用いてデータの取得に要する時間を短くする技術がある。特許文献1には、ファイルアクセス要求があった場合に、キャッシュ管理テーブルを参照して、所望ファイルがキャッシュされている場合はキャッシュ用の記憶手段(単にキャッシュともいう)から、キャッシュされていない場合は外部記憶装置から、所望ファイルを読み出して提供する技術が記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2002−91811号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1の技術のように、キャッシュ管理テーブルを参照してキャッシュ内のデータの有無を判定する場合、キャッシュ内のデータ数が増えてくると、その判定に要する時間も増加する。また、キャッシュ内にデータが無くて外部記憶装置からデータを読み出すことになった場合、最初から外部記憶装置にデータを要求するときに比べて、判定に要した時間が余計に費やされることになる。
【0005】
本発明は、上述の背景に鑑みてなされたものであり、キャッシュ用の記憶手段を用いる場合においてデータの取得に要する時間を短くすることを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決するために、本発明は、一態様として、予め定められた条件を満たすデータをキャッシュ用の第1記憶手段に記憶させる記憶制御手段と、要求元の装置から第2記憶手段に記憶されている一のデータの要求が行われた場合に、当該一のデータの要求を、前記第1及び第2記憶手段に対して行う要求手段と、前記要求手段の要求に応答して前記第1及び第2記憶手段のいずれかから最初に送られてきたデータを前記要求元の装置に出力する出力手段とを備えるデータ処理装置を提供する。
【0007】
また、前記要求手段は、前記一のデータが前記第1記憶手段に記憶されているか否かの判定を行うことなく当該第1記憶手段に対し当該一のデータの要求を行ってもよい。
さらに、前記第2記憶手段と他の装置とのデータ伝送の状態を示す伝送状態情報を取得する取得手段を備え、前記記憶制御手段は、前記第1記憶手段に記憶させるデータの索引を示す索引情報を記憶させ、前記要求手段は、前記取得手段により取得された前記伝送状態情報が予め定められた条件を満たす場合は、前記第2記憶手段に対する前記一のデータの要求を行う前に、前記記憶制御手段により記憶された索引情報を参照して前記第1記憶手段に当該一のデータが記憶されているか否かの判定を行い、当該一のデータが記憶されていないと判定した場合に限り、前記第2記憶手段に対する前記一のデータの要求を行ってもよい。
【0008】
また、本発明は、他の一態様として、コンピュータを、予め定められた条件を満たすデータをキャッシュ用の第1記憶手段に記憶させる記憶制御手段と、要求元の装置から第2記憶手段に記憶されている一のデータの要求が行われた場合に、当該一のデータの要求を、前記第1及び第2記憶手段に対して行う要求手段と、前記要求手段の要求に応答して前記第1及び第2記憶手段のいずれかから最初に送られてきたデータを前記要求元の装置に出力する出力手段として機能させるためのプログラムを提供する。
【0009】
また、本発明は、他の一態様として、予め定められた条件を満たすデータをキャッシュ用の第1記憶手段に記憶させる記憶制御ステップと、要求元の装置から第2記憶手段に記憶されている一のデータの要求が行われた場合に、当該一のデータの要求を、前記第1及び第2記憶手段に対して行う要求ステップと、前記要求ステップにおける要求に応答して前記第1及び第2記憶手段のいずれかから最初に送られてきたデータを前記要求元の装置に出力する出力ステップとを備えるデータ処理方法を提供する。
【発明の効果】
【0010】
本発明によれば、第1及び第2記憶手段のいずれか一方にだけデータを要求する場合に比べて、キャッシュ用の記憶手段を用いる場合においてデータの取得に要する時間を短くすることができる。
【図面の簡単な説明】
【0011】
図1】データ処理システムのハードウェア構成を示すブロック図
図2】データ処理システムの機能構成を示すブロック図
図3】高速化処理における各装置の動作を示すシーケンス図
図4】高速化処理における各装置の動作を示すシーケンス図
図5】変形例のデータ処理システムの機能構成を示すブロック図
【発明を実施するための形態】
【0012】
[実施形態の構成]
以下、図を参照しながら本発明の一実施形態にかかるデータ処理システム1を説明する。
図1はデータ処理システム1のハードウェア構成を示すブロック図である。データ処理システム1は、データ処理装置10と、SSD(Solid State Drive)20と、NAS(Network Attached Storage)30と、ネットワーク40とを備える。ネットワーク40は、データ処理装置10とNAS30との間のデータ通信経路を提供するネットワークであり、例えば有線LAN(Local Area Network)である。
【0013】
NAS30は、ネットワークに接続されて使用されるデータの記憶手段であり、ネットワーク40に接続された他の装置からの要求に応答してデータの書き込みや読み出しを行う。NAS30には、データ処理システム1において処理されるデータが記憶されている。SSD20は、記憶媒体として主にフラッシュメモリが用いられた記憶手段であり、データ処理システム1においてキャッシュ用の記憶手段として用いられている。キャッシュとは、データの読み出しに要する時間(以下「読出時間」という)が短い記憶手段にデータを記憶させておくことにより、同じデータを読出時間の長い記憶手段から読み出す場合に比べて、データの読み出しを高速化させることをいう。以下では、キャッシュ用の記憶手段にデータを記憶させることを「キャッシュさせる」という。
【0014】
データ処理装置10は、例えばNAS30に記憶されているデータを読み出して、読み出したデータを用いてデータ処理を行うコンピュータである。データ処理装置10は、プロセッサ11と、RAM(Random Access Memory)12と、ROM(Read Only Memory)13と、入出力I/F(Interface)14と、通信I/F15とを備えている。これらの各部は、バス16を介して互いにデータの受け渡しが可能である。プロセッサ11は、例えばCPU(Central Processing Unit)であり、RAM12をワークエリアとして用いて、ROM13やNAS30に記憶されているプログラムを実行することによって、データ処理を行うとともにデータ処理装置10の各部を制御する。プロセッサ11により実行されるプログラムには、各種のアプリケーションプログラムや、データの読み出しを高速化する高速化処理を実現するための高速化プログラムなどがある。この高速化プログラムにより実現されるのは、SSD20のようなキャッシュ用の記憶手段を用いる場合における高速化処理である。
【0015】
入出力I/F14は、例えば、USB(Universal Serial Bus)端子、HDMI(登録商標)(High-Definition Multimedia Interface)端子等の端子とケーブルを介した有線接続や、Bluetooth(登録商標)等の通信規格に従った無線接続により、外部装置との間でデータの入出力を行う。通信I/F15は、例えば、IEEE(Institute of Electrical and Electronics Engineers)802.3等の通信規格に従った有線接続や、IEEE802.11等の通信規格に従った無線接続により、ネットワーク40を介して外部装置との間でデータの送受信を行う。
【0016】
[実施形態の概要]
本実施形態では、NAS30に記憶されているデータの取得を、SSD20をキャッシュ用の記憶手段として用いて高速化する場合について説明する。以下では、キャッシュ用の記憶手段であるSSD20を第1記憶手段といい、取得すべきデータを記憶しているNAS30を第2記憶手段という。データ処理装置10においては、プロセッサ11が前述した各プログラムを実行して各部を制御することで、高速化処理に関係する以下の機能が実現される。
図2は、データ処理装置10の機能構成を示すブロック図である。データ処理装置10は、要求元装置100と、記憶制御手段101と、要求手段102と、出力手段103とを備える。
【0017】
要求元装置100は、アプリケーションプログラムが実行されることで実現される仮想的な装置であり、例えば文書作成やWebサーバへのアクセスなど、各種の作業を行う。要求元装置100は、自装置が行う作業に用いるデータがRAMやROMに記憶されていない場合に、そのデータをそれら以外の記憶手段に対して要求する。要求元装置100は、要求するデータとそのデータが記憶されている場所とを示す情報(以下「要求情報」という)を要求手段102に供給する。要求情報は、例えば、要求するデータのファイル名、そのファイルを記憶する装置のIP(Internet Protocol)アドレス及びパス等を示す情報である。要求元装置100は、本実施形態では、上記のとおりNAS30に記憶されているデータを要求する。なお、要求元装置100が要求するデータは、ファイル単位のデータに限らず、例えばブロック単位のデータであってもよい。
【0018】
記憶制御手段101は、予め定められた条件を満たすデータを第1記憶手段(キャッシュ用の記憶手段。本実施形態ではSSD20)に記憶させる手段の一例である。予め定められた条件とは、そのデータをキャッシュするか否かを判断するために用いられる条件であり、例えば、要求元装置100により読み出された場合に満たされる条件や、要求元装置100から将来読み出されることが予測される場合に満たされる条件などである。後者の条件を用いたキャッシュは、プリフェッチ(事前読み込み)とも呼ばれる。以下では、これらの条件のことをキャッシュ条件という。例えば、記憶制御手段101は、要求元装置100の要求に基づいて第2記憶手段から読み出されたデータが供給されると、そのデータを、キャッシュ条件を満たすデータとして第1記憶手段に記憶させる。
【0019】
また、記憶制御手段101は、事前読み込みすべきデータを判断すると、そのデータを第2記憶手段に要求し、その応答で供給されたデータを、キャッシュ条件を満たすデータとして第1記憶手段に記憶させる。記憶制御手段101は、例えば、要求元装置100を実現するアプリケーションプログラムと、そのアプリケーションプログラムが実行された場合に事前読み込みすべきデータとを対応付けたテーブルを記憶しておき、現在実行されているアプリケーションプログラムにそのテーブルにおいて対応付けられているデータを、事前読み込みすべきデータとして判断する。なお、記憶制御手段101によるデータのキャッシュは、上記の方法に限らず、周知の他の技術を用いて行われてもよい。
【0020】
要求手段102は、要求元装置100から第2記憶手段に記憶されている一のデータの要求が行われた場合に、その一のデータの要求を、第1及び第2記憶手段に対して行う手段の一例である。要求手段102は、要求元装置100から供給された要求情報をSSD20(第1記憶手段)及びNAS30(第2記憶手段)に転送することで、この要求を行う。要求手段102は、この転送を行う際、それぞれの要求情報を識別するための情報(以下「要求ID(Identifier)」という)を各要求情報に付加する。以下では、第1記憶手段に転送される要求情報に付加される要求IDを第1要求IDといい、第2記憶手段に転送される要求情報に付加される要求IDを第2要求IDという。第1及び第2要求IDは、付加される要求情報が異なるが、同じ情報である。要求手段102は、各要求情報に付加した要求IDを、出力手段103に通知する。
【0021】
また、本実施形態においては、要求手段102は、一のデータが第1記憶手段に記憶されているか否かの判定を行うことなくその第1記憶手段に対し一のデータの要求を行う。ここでいう判定は、例えば、SSD20に記憶されているデータの索引を示す索引情報を生成し、その索引情報に一のデータが含まれているか否かによって行われる。生成された索引情報は、例えばRAM12に記憶される。本実施形態では、要求手段102がこの判定を行わず、索引情報を記憶させておく必要がないから、この判定を行う場合(すなわち索引情報を記憶させる場合)に比べて、索引情報を記憶させる記憶手段(例えばRAM12)の空き領域を大きくすることができる。
【0022】
出力手段103は、要求手段102の要求に応答して第1及び第2記憶手段のいずれかから最初に送られてきたデータを要求元装置100に出力する手段の一例である。第1記憶手段、すなわちSSD20は、要求手段102から転送されてきた要求情報を受け取ると、要求情報が示すデータを記憶していれば、そのデータを要求情報に含まれている第1要求IDとともにデータ処理装置10に送信し、記憶していなければ、例えばその旨を示すエラー情報を同じく第1要求IDとともにデータ処理装置10に送信する。第2記憶手段、すなわちNAS30は、要求手段102から転送されてきた要求情報を受け取ると、要求情報が示すデータを記憶していれば、そのデータを要求情報に含まれている第2要求IDとともにデータ処理装置10に送信し、記憶していなければ、例えばその旨を示すエラー情報を同じく第2要求IDとともにデータ処理装置10に送信する。
【0023】
出力手段103には、SSD20及びNAS30から送信されてきた上記の各情報(データ、エラー情報及び要求ID)が供給される。出力手段103は、両記憶手段からデータが供給された場合には、そのうちの最初に供給された方を、最初に送られてきたデータとして要求元装置100に出力する。より具体的には、出力手段103は、SSD20及びNAS30からそれぞれ同じ要求IDとともに送られてきたデータがあった場合に、そのうちの先に送られてきた方を、最初に送られてきたデータと判断する。通常は、ネットワーク40を介さずにデータ処理装置10との間でデータを通信するSSD20から送信されてきたデータが、最初に供給される。要求元装置100は、出力手段103から出力されてきたデータを受け取ることで、要求した一のデータを取得する。
【0024】
また、出力手段103は、あとから送られてきたデータについては、要求元装置100に出力しない。この場合、出力手段103は、例えば要求IDを先に送られてきた要求IDと比較するために、データ及び要求IDを一旦RAM12に記憶させ、あとから送られてきたデータと判断した場合には、それらのデータ及び要求IDをRAM12から削除する。なお、出力手段103は、これらのデータ及び要求IDを削除せずに放置しておいてもよい。
【0025】
出力手段103は、SSD20からはエラー情報が送られてきて、NAS30からはデータが送られてきた場合には、NAS30からのデータを、最初に送られてきたデータとして要求元装置100に出力し、SSD20からはデータが送られてきて、NAS30からはエラー情報が送られてきた場合には、SSD20からのデータを最初に送られてきたデータとして要求元装置100に出力する。これらの場合には、出力手段103は、データだけを出力して、エラー情報を出力しない。出力手段103は、SSD20及びNAS30の両方からエラー情報が送られてきた場合には、要求されたデータが取得されなかった旨を示すエラー情報を要求元装置100に出力する。
【0026】
出力手段103は、要求元装置100に出力したデータのうち、NAS30から送られてきたデータを、記憶制御手段101にも出力する。このデータは、要求元装置100の要求に基づいて第2記憶手段から読み出されたデータであるから、記憶制御手段101は、そのデータを、キャッシュ条件を満たすデータとして第1記憶手段に記憶させる(キャッシュさせる)。
【0027】
[実施形態の動作]
次に、実施形態の動作の一例を、図3及び図4のシーケンス図を参照しながら説明する。
図3及び図4は、高速化処理における各装置の動作を示すシーケンス図である。図3の動作は、データ処理装置10において、要求元装置100がデータの要求を行うことを契機に開始される。まず、データ処理装置10は、要求するデータ等を示す要求情報を生成する(ステップS11)。ステップS11は要求元装置100により行われる動作である。次に、データ処理装置10は、第1要求IDを付加した要求情報をSSD20に送信し(ステップS12)、第2要求IDを付加した要求情報をNAS30に送信する(ステップS13)。ステップS12は要求手段102により行われる動作である。なお、ステップS12及びS13の動作は、順番が反対であってもよいし、同時に行われてもよい。
【0028】
図3では、要求されたデータがSSD20に記憶されている場合について説明する。SSD20は、ステップS12において受信した要求情報が示すデータ、すなわち要求されたデータを読み出し(ステップS14)、読み出したデータを第1要求IDとともにデータ処理装置10に送信する(ステップS15)。データ処理装置10は、SSD20から送信されてきた第1要求IDと同じ内容の第2要求IDがまだ送信されてきていないため、この第1要求IDとともに送信されてきたデータを、第1及び第2記憶手段のいずれかから最初に送られてきたデータとして要求元装置100に出力する(ステップS16)。NAS30は、ステップS13において受信した要求情報が示すデータ、すなわち要求されたデータを読み出し(ステップS17)、読み出したデータを第2要求IDとともにデータ処理装置10に送信する(ステップS18)。データ処理装置10は、第2要求IDと同じ内容の第1要求IDがデータとともに既に送信されてきているため、NAS30から送信されてきたデータはあとから送られてきたデータであると判断して、そのデータを削除する(ステップS19)。ステップS16及びS19は出力手段103により行われる動作である。
【0029】
図4では、要求されたデータがSSD20に記憶されていない場合について説明する。この場合、図3に示すステップS11からS13までの動作が行われる。次に、SSD20は、要求されたデータを記憶していないため、エラー情報を第1要求IDとともにデータ処理装置10に送信する(ステップS21)。続いて、NAS30が、図3に示すステップS17(要求されたデータの読み出し)及びS18(読み出したデータの送信)の動作を行う。データ処理装置10は、NAS30から送信されてきたデータを、第1及び第2記憶手段のいずれかから最初に送られてきたデータとして要求元装置100に出力する(ステップS22)。ステップS22は出力手段103により行われる動作である。
【0030】
図4の例では、ステップS22で出力されたデータが、上述したキャッシュ条件を満たしているものとする。データ処理装置10は、ステップS22において要求元装置100に出力したデータをSSD20に送信し(ステップS23)、SSD20は、受信したデータを記憶(キャッシュ)する(ステップS24)。このようにして、データ処理装置10は、キャッシュ条件を満たしたデータを第1記憶手段、すなわちSSD20に記憶(キャッシュ)させる。ステップS23は記憶制御手段101により行われる動作である。
【0031】
キャッシュ用の記憶手段(すなわち第1記憶手段)を用いる場合に、要求されたデータが第1記憶手段に記憶されているか否かを例えば上述した索引情報を用いて判定するという構成では、第1及び第2記憶手段のいずれからデータが読み出されるにしても、その判定の結果が出たあとに、その結果に応じた記憶手段の方(つまりいずれか一方の記憶手段)にデータの要求が行われることになる。本実施形態では、このような判定を行わず、最初から第1及び第2記憶手段の両方にデータを要求することで、いずれの記憶手段からデータが取得される場合であっても、前述の判定に要する時間を費やすことがない。このような本実施形態によれば、第1及び第2記憶手段のいずれか一方にだけデータを要求する場合に比べて、キャッシュ用の記憶手段を用いる場合においてデータの取得に要する時間を短くすることができる。
【0032】
[変形例]
上述の実施形態を以下のように変形してもよい。なお、上述した実施形態及び以下の変形例の各々を組み合わせてもよい。
【0033】
[変形例1]
上記の実施形態では、第1記憶手段が、データ処理装置にとっての外部装置であったが、これに限らず、データ処理装置に内蔵されていてもよい。具体的には、第1記憶手段は、図1に示すバス16に接続されていてもよいし、プロセッサ11に備えられていてもよい。また、第1記憶手段は、SSDに限定されない。要するに、第1記憶手段は、キャッシュ用の記憶手段として用いられるのであれば、どのような記憶媒体を備えた記憶手段であってもよい。また、第1記憶手段は、複数設けられてもよい。この場合も、出力手段103は、要求手段102の要求に応答して第1及び第2記憶手段のいずれかから最初に送られてきたデータを要求元装置100に出力する。つまり、複数の第1記憶手段からデータがそれぞれ送られてきた場合には、そのうちの最初に送られてきたデータが要求元装置100に出力される。
【0034】
[変形例2]
上記の実施形態では、第2記憶手段が、ネットワークを経由してデータ処理装置に接続されていたが、これに限らず、シリアルATAやUSBなどの規格に準拠して接続された記憶手段であってもよいし、データ処理装置に内蔵されていてもよい。要するに、第2記憶手段は、要求元装置100によって要求されるデータを記憶しているものであれば、どのような記憶手段であってもよい。また、第2記憶手段は、複数設けられてもよい。この場合も、第1記憶手段が複数設けられた場合と同様に、出力手段103が要求手段102の要求に応答して第1及び第2記憶手段のいずれかから最初に送られてきたデータを要求元装置100に出力する。
【0035】
[変形例3]
出力手段103は、上記の実施形態では、あとから送られてきたデータを要求元装置100に出力しなかったが、この出力を行ってもよい。その場合、要求元装置100が、あとから出力されてきたデータを削除したり放置したりすればよい。要するに、出力手段103は、要求手段102の要求に応答して第1及び第2記憶手段のいずれかから最初に送られてきたデータを要求元装置100に出力するものであれば、あとから送られてきたデータを要求元装置100に出力しないものに限定されない。
【0036】
[変形例4]
上記の実施形態では、データ処理装置は索引情報を用いた判定を行うことがなかったが、状況によってはそのような判定を行うようにしてもよい。
図5は、本変形例におけるデータ処理装置の機能構成を示すブロック図である。図5では、要求元装置100と、記憶制御手段101aと、要求手段102aと、出力手段103と、取得手段104とを備えるデータ処理装置10aが示されている。記憶制御手段101aは、第1記憶手段に記憶させるデータの索引を示す索引情報を記憶させる。記憶制御手段101aは、例えば、RAM12に索引情報を記憶させる。なお、記憶制御手段101aは、他の記憶手段(例えば第1記憶手段)に索引情報を記憶させてもよい。
【0037】
取得手段104は、第2記憶手段と他の装置とのデータ伝送の状態を示す情報(以下「伝送状態情報」という)を取得する手段の一例である。伝送状態情報とは、例えば、第2記憶手段の単位時間あたりのデータ伝送量や第2記憶手段によって単位時間あたりのデータの伝送処理数(トランザクション量)、第2記憶手段に要求されたデータが取得されるまでに要した時間(これを「応答時間」という)の平均などによって表される。本変形例では、NAS30aが、データ伝送量及びトランザクション量を測定しており、取得手段104から要求されるとそれらの測定結果をデータ処理装置10aに送信する。取得手段104は、送信されてきたそれらの測定結果を伝送状態情報として取得し、要求手段102aに供給する。なお、応答時間の平均が伝送状態情報として用いられる場合には、取得手段104は、例えば、要求手段102aから要求情報を第2記憶手段に送信した時刻を受け取り、要求されたデータが第2記憶手段から送られてきた場合にそのデータを出力した時刻を出力手段103から受け取り、その間に経過した時間の平均(すなわち応答時間の平均)を算出して、伝送状態情報として取得する。
【0038】
要求手段102aは、取得手段104により取得された伝送状態情報が予め定められた条件を満たす場合は、第2記憶手段に対する一のデータの要求を行う前に、記憶制御手段101aにより記憶された索引情報を参照して第1記憶手段にその一のデータが記憶されているか否かの判定を行う。予め定められた条件とは、例えば第2記憶手段によるデータの伝送が過度に行われていることを示す条件である。具体的には、伝送状態情報であるデータ伝送量、トランザクション量及び応答時間の平均が各々に対して定められた閾値を超えた場合に満たされる条件である。要求手段102aは、例えばRAM12にアクセスして索引情報を参照し、要求情報により要求される一のデータが索引情報に含まれているか否かを判定する。そして、要求手段102aは、その一のデータが記憶されていないと判定した場合に限り、第2記憶手段に対する一のデータの要求を行う。つまり、要求手段102aは、一のデータが記憶されていると判定した場合には、第1記憶手段に対してその一のデータの要求を行う。
【0039】
第2記憶手段により行われるデータの伝送が増えるほど、第2記憶手段の処理の負荷やデータの伝送路における通信の負荷が大きくなり、データ処理装置はもちろん第2記憶手段を利用する他の装置にとっても、第2記憶手段からデータを取得するために要する時間(すなわち応答時間)が長くなりやすくなる。本変形例では、伝送状態情報が条件を満たした場合には、索引情報を用いた判定を行って、第1記憶手段に記憶されているデータを第2記憶手段には要求しないようにしている。これにより、伝送状態情報が条件を満たす状況でも第2記憶手段にデータを要求する場合に比べて、第2記憶手段の応答時間が長くなることを抑制することができる。また、本変形例でも、伝送状態情報が条件を満たさない場合には、判定が行われないから、実施形態と同様に、第1及び第2記憶手段のいずれか一方にだけデータを要求する場合に比べて、キャッシュ用の記憶手段を用いる場合においてデータの取得に要する時間を短くすることができる。
なお、上記の例では、条件が満たされた場合に判定を行うこととしたが、例えばユーザの操作により判定を行う動作と行わない動作とを切り替えるようにしてもよい。
【0040】
[変形例5]
本発明は、データ処理装置及びこれを備えるデータ処理システムの他にも、データ処理装置が実施する処理を実現するためのデータ処理方法としても捉えられるものである。ここでいう処理とは、例えば、図3及び図4等に示す高速化処理である。また、本発明は、データ処理装置のようなコンピュータを、図2等に示す手段として機能させるためのプログラムとしても捉えられるものである。このプログラムは、それを記憶させた光ディスク等の記録媒体の形態で提供されたり、インターネット等のネットワークを介して、コンピュータにダウンロードさせ、それをインストールして利用可能にするなどの形態でも提供されたりするものであってもよい。
【符号の説明】
【0041】
1…データ処理システム、10…データ処理装置、20…SSD(第1記憶手段)、30…NAS(第2記憶手段)、40…ネットワーク、11…プロセッサ、12…RAM、13…ROM、14…入出力I/F、15…通信I/F、100…要求元装置、101…記憶制御手段、102…要求手段、103…出力手段、104…取得手段
図1
図2
図3
図4
図5