JP2017054162A - Information terminal, information processing system and data reading method, and computer program - Google Patents
Information terminal, information processing system and data reading method, and computer program Download PDFInfo
- Publication number
- JP2017054162A JP2017054162A JP2015175450A JP2015175450A JP2017054162A JP 2017054162 A JP2017054162 A JP 2017054162A JP 2015175450 A JP2015175450 A JP 2015175450A JP 2015175450 A JP2015175450 A JP 2015175450A JP 2017054162 A JP2017054162 A JP 2017054162A
- Authority
- JP
- Japan
- Prior art keywords
- information
- file
- data
- server
- stored
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
本発明は、情報端末、情報処理システムおよびデータ読み込み方法、並びにコンピュータ・プログラムに関する。 The present invention relates to an information terminal, an information processing system, a data reading method, and a computer program.
一般的なアプリケーションプログラムは、データが格納されたファイル等から必要なデータを読み込み、その読み込んだデータを用いて処理を行う。そのため、データの読み込みにかかる時間は、アプリケーションプログラムの性能(処理時間)に大きな影響を与える。 A general application program reads necessary data from a file in which data is stored, and performs processing using the read data. For this reason, the time required for reading data greatly affects the performance (processing time) of the application program.
データの読み込み性能を向上させる方法として、事前先読み(プリフェッチ)がある。プリフェッチは、将来アプリケーションプログラムが読み込む可能性の高いデータを、事前に低速なディスクから読み込み、そのデータを高速なメモリ(キャッシュメモリ)に格納しておくことにより、読み込み性能を向上させる方法である。その方法として、主に以下の二種類の方法がある。 As a method of improving the data reading performance, there is prefetching (prefetch). Prefetch is a method of improving read performance by reading data that is likely to be read by an application program in the future from a low-speed disk and storing the data in a high-speed memory (cache memory). There are mainly the following two types of methods.
第一の方法は、サーバにおいて、サーバのキャッシュメモリの存在や配置を把握して、適切な処理を行う方法(Server−initiated replica)である。この方法は、サーバが管理するデータにアクセスする場合、サーバは、キャッシュメモリに格納されたデータの配置情報を基に、サーバのディスクと、キャッシュメモリのどちらからそのデータを読むかを判断する。また、サーバは、各クライアントからアクセスされたときのデータアクセスパターンに関する履歴情報を基に、これから読み込むデータを推定して、キャッシュメモリに格納する。 The first method is a method (Server-initiated replica) in which the server grasps the existence and arrangement of the cache memory and performs appropriate processing. In this method, when accessing data managed by the server, the server determines whether to read the data from the server disk or the cache memory based on the arrangement information of the data stored in the cache memory. In addition, the server estimates data to be read from the history information related to the data access pattern when accessed by each client, and stores it in the cache memory.
第二の方法は、クライアントにおいて独自にキャッシュメモリを生成する方法(Client−initiated replica)である。この方法を使用した場合、クライアントは、クライアントのキャッシュメモリに格納されたデータの配置情報を持つ。そして、クライアントは、一部のアクセスについて、クライアントに閉じて処理する。すなわち、クライアントは、自端末のキャッシュメモリに格納されていないデータにアクセスする場合は、サーバにアクセスするが、自端末のキャッシュメモリに格納されたデータにアクセスする場合は、サーバにアクセスしない。 The second method is a method (Client-initiated replica) in which a cache memory is uniquely generated in a client. When this method is used, the client has data arrangement information stored in the cache memory of the client. Then, the client closes the client and processes some accesses. That is, the client accesses the server when accessing data not stored in the cache memory of the own terminal, but does not access the server when accessing data stored in the cache memory of the own terminal.
ここで、関連技術としては、例えば以下の特許文献がある。 Here, as related technologies, for example, there are the following patent documents.
特許文献1に開示された通信システムは、ファイル管理サーバに格納されたファイルを、クライアント端末やファイル管理サーバに分割キャッシュしておく。そして、そのシステムは、ダウンロード要求を受けて、指定されたデータが分割キャッシュに存在するか否かを判断し、存在すれば分割キャッシュからそのデータを使用する。
In the communication system disclosed in
特許文献2は、端末からの要求に応じて、対象ユーザ以外の他のユーザのアクセス情報を基に、アプリケーション実行のために先読みすべきファイルのリストをサーバが作成する通信システムを開示している。
特許文献3は、コンテンツを表示する視聴者装置のキャッシュサーバに、購入されると予想されるコンテンツをあらかじめ書き込んでおく情報提供システムを開示している。 Patent Document 3 discloses an information providing system in which content expected to be purchased is written in advance in a cache server of a viewer device that displays content.
特許文献4に開示されたホームページデータ収集方法は、キャッシュサーバが、クライアントから転送されたホームページのURLアドレスからなるアクセスリストを基に、ホームページデータを収集する。その後、キャッシュサーバは、クライアントと接続して、そのホームページデータをクライアントに引き取らせる。
In the homepage data collection method disclosed in
上述の第一の方法は、サーバが多くの情報を管理および制御しなければいけないという問題がある。また、サーバがアクセスパターンを推測するため、そのプリフェッチは、シーケンシャル読み込みを行うアプリケーションに関しては有効でも、ランダム読み込みを行うアプリケーションに関しては無駄となるケースが多く存在する。 The first method described above has a problem that the server must manage and control a lot of information. In addition, since the server estimates the access pattern, prefetching is effective for an application that performs sequential reading, but is often wasted for an application that performs random reading.
さらに、上述の第二の方法は、クライアントとサーバにおいて二重にデータを管理することとなる。そのため、クライアントは、比較的頻繁にサーバに対して、一貫性を維持するための確認を行わなければいけないという問題がある。また、クライアントは、アプリケーションからアクセスするように要求されたデータがクライアントにキャッシュされているデータであるとき、サーバにアクセスしない。そのため、サーバは、アクセスパターンを推測することが難しくなり、サーバのプリフェッチが非効率となってしまう。 Further, in the second method described above, data is managed twice in the client and the server. Therefore, there is a problem that the client has to check the server relatively frequently to maintain consistency. Further, the client does not access the server when the data requested to be accessed from the application is data cached in the client. Therefore, it becomes difficult for the server to guess the access pattern, and the server prefetch becomes inefficient.
特許文献1乃至4に提案されている技術を用いても、アプリケーションプログラムの実行時間を短縮するために有効なプリフェッチを行うことは期待できず、その課題を解決するに至らない。
Even if the techniques proposed in
そこで、本発明は、サーバに格納されたデータを効率的に読み込むことが可能な情報端末等の提供を主たる目的とする。 Therefore, the present invention mainly aims to provide an information terminal or the like that can efficiently read data stored in a server.
上記の目的を達成すべく、本発明の一態様に係る情報端末は、以下の構成を備える。 In order to achieve the above object, an information terminal according to an aspect of the present invention includes the following arrangement.
即ち、本発明の一態様に係る情報端末は、
自端末で稼働するアプリケーションからのファイルに対するアクセス要求情報が格納される記憶部と、
前記記憶部の内容を基に、そのファイルに含まれるアクセス予定のデータに関する情報を生成し、生成した前記情報をサーバがプリフェッチ処理に用いる情報として、前記ファイルを管理する前記サーバに送信する情報送信手段と
を含む。
That is, an information terminal according to one aspect of the present invention is provided.
A storage unit for storing access request information for a file from an application running on its own terminal;
Based on the contents of the storage unit, information related to data to be accessed included in the file is generated, and the generated information is transmitted to the server managing the file as information used by the server for prefetch processing. Means.
同目的を達成する本発明の一態様に係る情報処理システムは、
ディスク等の記憶装置より高速にアクセス可能なキャッシュメモリと、
前記情報端末より送信された前記情報を基に前記ファイルから該当するデータを読み込み、前記キャッシュメモリに格納するキャッシュ処理手段とを
有する前記サーバと、
前記情報端末と
を含む。
An information processing system according to an aspect of the present invention that achieves the same object,
A cache memory that can be accessed faster than a storage device such as a disk;
The server having cache processing means for reading corresponding data from the file based on the information transmitted from the information terminal and storing the data in the cache memory;
And the information terminal.
同目的を達成する本発明の一態様に係るデータ読み込み方法は、
自端末で稼働するアプリケーションからのファイルに対するアクセス要求情報が格納される記憶部の内容を基に、そのファイルに含まれるアクセス予定のデータに関する情報を生成し、生成した前記情報を、前記ファイルを管理するサーバに送信し、その情報を基に前記サーバがプリフェッチ処理を行う。
A data reading method according to an aspect of the present invention that achieves the same object,
Based on the contents of the storage unit that stores the access request information for the file from the application running on its own terminal, information on the data scheduled to be accessed contained in the file is generated, and the generated information is managed by the file And the server performs prefetch processing based on the information.
更に、同目的は、上記構成を有する情報端末、情報処理システム、或いは、データ読み込み方法を、コンピュータによって実現するためのコンピュータ・プログラム、及びそのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記憶媒体によっても達成される。 Further, the object is to provide a computer program for realizing the information terminal, the information processing system, or the data reading method having the above-described configuration by a computer, and a computer-readable storage in which the computer program is stored. It is also achieved by the medium.
上記の本発明によれば、サーバに格納されたデータを効率的に読み込むことができるという効果がある。 According to the present invention, there is an effect that data stored in the server can be read efficiently.
次に、本発明を実施する形態について図面を参照して詳細に説明する。 Next, embodiments of the present invention will be described in detail with reference to the drawings.
<第1の実施形態>
本発明の第1の実施形態に係る情報端末の構成を中心に示すブロック図である。
<First Embodiment>
It is a block diagram which mainly shows the structure of the information terminal which concerns on the 1st Embodiment of this invention.
本実施形態に係る情報端末1は、アクセス要求情報を格納する記憶部2と、情報送信部3を有する。
The
記憶部2は、情報端末1で稼働するアプリケーション(図示せず)からのファイル(データファイル)5に対するアクセス要求情報が格納される。
The
情報送信部3は、記憶部2の内容を基に、そのファイル5に含まれるアクセス予定のデータに関する情報を生成し、生成した情報をサーバ4がプリフェッチ処理に用いる情報として、ファイル5を管理するサーバ4に送信する。
Based on the contents of the
以上、説明したように、第1の実施形態には、サーバに格納されたデータを効率的に読み込む、つまり取得することができるという効果がある。 As described above, the first embodiment has an effect that data stored in the server can be efficiently read, that is, acquired.
その理由は、本実施形態に係る情報端末1は、アプリケーションからのアクセス要求情報が格納された記憶部2の内容を基に、そのファイル5に含まれるアクセス予定のデータに関する情報をサーバ4に送信するからである。また、その情報(先読み情報)は、サーバ4がプリフェッチ処理に用いる情報であるからである。したがって、その情報を受信したサーバ4は、その情報を基に、プリフェッチを行うことが可能となる。そして、サーバ4は、情報端末1からのアクセスに対して、先読みされプリフェッチされたデータを効率的に読み取り、情報端末1に提供することが可能となるからである。
The reason is that the
<第2の実施形態>
次に上述した第1の実施形態に係るクライアント端末を基本とする第2の実施形態について説明する。図2は、本発明の第2の実施形態に係る情報処理システムの構成を示すブロック図である。ただし、図2に示す構成は、一例であって、本発明は、図2に示す情報処理システムに限定されない。
<Second Embodiment>
Next, a second embodiment based on the client terminal according to the first embodiment described above will be described. FIG. 2 is a block diagram showing a configuration of an information processing system according to the second embodiment of the present invention. However, the configuration shown in FIG. 2 is an example, and the present invention is not limited to the information processing system shown in FIG.
本実施形態に係る情報処理システムは、クライアント端末10と、サーバ30とを有する。
The information processing system according to this embodiment includes a
クライアント端末10は、制御部20と、ファイル処理部101と、キャッシュメモリ102とを備える。
The
キャッシュメモリ102は、ディスク等の記憶装置より高速にアクセス可能なメモリである。
The
制御部20は、リクエスト受付部201と、リクエスト処理部202と、先読み情報送信部203と、キュー204とを含む。ファイル処理部101と、先読み情報送信部203は、第1の実施形態の情報送信部3の他の一例である。また、制御部20は、アプリケーション(図示せず)を実装する。
The
キュー204は、第1の実施形態における記憶部2に対応する。キュー204は、ユーザからのリクエストが格納され、格納した順番に処理される。キュー204に格納されたリクエストは、書き込みや読み込みなどの命令種別を表す情報を含む。例えば、読み込みのリクエストである場合、リクエストは、さらに、読み込み予定の対象ファイルを識別する情報と、ファイルの読み込みを開始する位置を表す情報と、その位置から読み込む量を表す情報と、その位置から読み込む方向を表す情報とを含む。
The
リクエスト受付部201は、ユーザ(アプリケーション)からファイルアクセスに関するリクエストを受け付ける。リクエスト受付部201は、受け付けたリクエストを示す内容をキュー204に格納する。一般的なアプリケーションは、UI(ユーザインタフェース、User Interface)を用いて、この機能を実現する。
The
リクエスト処理部202は、キュー204に格納されたユーザからのリクエストを処理する。具体的にリクエスト処理部202は、書き込みまたは読み込みのリクエストをファイル処理部101に送る。そして、リクエスト処理部202は、リクエストに対してファイル処理部101から渡される内容を受け取る。
The
先読み情報送信部203は、キュー204に格納されたリクエスト内容を基に、アプリケーションが読み込む予定のデータに関する情報を生成し、その情報をファイル処理部101に送る。ここで、読み込む予定のデータに関する情報は、アプリケーションの実行において先読みが必要なデータに関する情報であり、つまりそれは、先読み情報である。先読み情報送信部203は、例えば、キュー204に格納されたリクエストがあらかじめ定めた一定量を超えたら、キュー204の内容を基に処理、すなわち、先読みが必要なデータに関する情報の生成とファイル処理部101への送信を行う。
The prefetch
ファイル処理部101は、リクエスト処理部202および先読み情報送信部203から受け取った情報を処理する。
The
ファイル処理部101は、リクエスト処理部202から読み込みのリクエストを受け取った場合、クライアント端末10のキャッシュメモリ102に読み込み対象のデータが格納されているかを確認する。格納されている場合、ファイル処理部101は、キャッシュメモリ102からそのデータを読み込み、読み込んだデータをリクエスト処理部202に渡す。キャッシュメモリ102に読み込み対象のデータが格納されていない場合、ファイル処理部101は、サーバ30に問い合わせる。すなわち、ファイル処理部101は、キャッシュメモリ102に格納されていない情報を読み込むためのリクエストをサーバ4に送信する。
When the
ファイル処理部101は、先読み情報送信部203から先読みが必要なデータに関する情報(先読み情報)を受け取った場合、その情報をサーバ30に送る。
When the
サーバ30は、受信部301と、先読み情報処理部303と、アクセス処理部304と、キャッシュ処理部305と、記憶装置306と、キャッシュメモリ307と、キャッシュ情報記憶部308とを有する。
The
記憶装置306は、例えば、ユーザデータを格納するディスク装置であり、そこに格納されるデータは、アプリケーションで使用するデータを含む。
The
キャッシュメモリ307は、ディスク等の記憶装置306より高速にアクセス可能なメモリである。
The
キャッシュ情報記憶部308は、キャッシュメモリ307に関して、容量と、使用量と、格納されているデータに関する情報とを含む。容量は、キャッシュメモリ307の大きさを表す情報である。使用量は、キャッシュメモリ307のうちで、データを格納することにより使用している量を表す情報である。格納されているデータに関する情報は、格納されているデータの内容を表す情報と、格納位置を表す情報と、格納時刻とを含む。格納されているデータの内容を表す情報は、例えば、後述される図5に示すファイル、オフセット、サイズなどの情報である。格納位置を表す情報は、キャッシュメモリ307のどこに格納されているかを表す値であり、例えば、キャッシュメモリ307におけるオフセットである。格納時刻は、そのデータをキャッシュメモリ307に格納した時刻を表す情報である。
The cache
サーバ30の受信部301は、クライアント端末10から読み込みのリクエストを受け取った場合、アクセス処理部304にそのリクエストを送る。さらに、受信部301は、先読み情報処理部303にリクエストされた読み込み対象データの次のデータを先読みするように指示する。
When the receiving
アクセス処理部304は、キャッシュ情報記憶部308に格納された情報を基に、読み込み対象のデータがキャッシュメモリ307に格納されているか否かを判断する。アクセス処理部304は、キャッシュメモリ307に格納されている場合、キャッシュメモリ307からそのデータを読み込み、読み込んだデータをクライアント端末10に渡す。格納されていない場合は、アクセス処理部304は、記憶装置306から対象のデータを読み込み、読み込んだデータをクライアント端末10に渡す。
The
また、受信部301は、クライアント端末10から先読み情報を受信して、先読み情報処理部303に受信した情報を送る。
The receiving
先読み情報処理部303は、受け取った先読み情報を基に、キャッシュ処理部305に対して先読みの指示を出す。
The prefetch
また、先読み情報処理部303は、受信部301の指示を受けて、読み込み対象データの次に読み込むデータを先読みするようキャッシュ処理部305に対して指示を出す。
Further, the prefetch
キャッシュ処理部305は、記憶装置306からデータを読み込み、キャッシュメモリ307に格納する。キャッシュ処理部305は、データ格納後のキャッシュメモリ307の内容を表すように、キャッシュ情報記憶部308を更新する。
The
次に、本実施形態におけるプリフェッチ処理の流れについて、図3および図4を用いて説明する。図3は、本発明の第2の実施形態に係る情報処理システムのプリフェッチ処理について、クライアント端末における処理を説明するフローチャートである。図4は、本発明の第2の実施形態に係る情報処理システムのプリフェッチ処理について、サーバにおける処理を説明するフローチャートである。 Next, the flow of prefetch processing in the present embodiment will be described with reference to FIGS. FIG. 3 is a flowchart for explaining processing at the client terminal in the prefetch processing of the information processing system according to the second embodiment of the present invention. FIG. 4 is a flowchart for explaining processing in the server in the prefetch processing of the information processing system according to the second embodiment of the present invention.
クライアント端末10の先読み情報送信部203は、キュー204に格納されたリクエスト内容を基に、アプリケーションが読み込む予定のデータのリストを作成する(ステップS110)。すなわち、先読み情報送信部203は、キュー204に格納されたリクエスト内容から命令種別を表す情報が読み込みに相当する内容であるリクエストを抽出して、そのリストを作成する。そのリストは、先読みが必要なデータに関する情報であり、先読み情報である。
The prefetch
図5は、本発明の第2の実施形態に係る情報処理システムの先読み情報を説明する図である。図5によれば、先読み情報は、「クライアント」と、「ファイル」と、「オフセット」と、「サイズ」と、「読み込み方向」とを含む。 FIG. 5 is a diagram for explaining prefetch information of the information processing system according to the second embodiment of the present invention. According to FIG. 5, the prefetch information includes “client”, “file”, “offset”, “size”, and “reading direction”.
「クライアント」は、自クライアント端末を識別する情報であり、例えば、自クライアント端末の名前、もしくは自クライアント端末が一意に定まる情報(例えば、IP(Internet Protocol)アドレス)である。 The “client” is information for identifying the own client terminal, and is, for example, the name of the own client terminal or information (for example, IP (Internet Protocol) address) that uniquely identifies the own client terminal.
「ファイル」は、読み込み予定の対象ファイルを識別する情報であり、例えば、読み込み予定の対象ファイルのファイル名である。 “File” is information for identifying the target file to be read, and is, for example, the file name of the target file to be read.
「オフセット」は、ファイルの読み込みを開始する位置を表す情報であり、例えば、ファイルの読み込みを開始するオフセット番号である。ファイルのすべてのデータを読み込む場合、「オフセット」は、例えば、「0」である。 The “offset” is information indicating a position where the file reading is started, and is, for example, an offset number at which the file reading is started. When reading all the data of the file, the “offset” is, for example, “0”.
「サイズ」は、ファイルを「オフセット」が表す位置から読み込む量を表す情報であり、例えば、「オフセット」に設定したオフセット番号から何バイトのデータを読み込むかを表す値である。すべてを読み込む場合、「サイズ」は、例えば、「−1」である。 “Size” is information indicating the amount of reading of a file from the position indicated by “offset”, and is, for example, a value indicating how many bytes of data are read from the offset number set in “offset”. When reading all, the “size” is, for example, “−1”.
「読み込み方向」は、ファイルを「オフセット」が表す位置から読み込む方向を表す情報であり、例えば、設定したオフセット番号から順方向に読むか、もしくは逆方向に読むかを表す情報である。通常、ファイルアクセスは、順方向への読み込みとなるが、ビデオのノンリニア編集などの場合を想定し、逆方向も可能としている。 “Reading direction” is information indicating the direction in which the file is read from the position indicated by “offset”, for example, information indicating whether the file is read in the forward direction or in the reverse direction from the set offset number. Normally, file access is read in the forward direction, but in the case of non-linear video editing, the reverse direction is also possible.
先読み情報送信部203は、これらの情報を、キュー204に格納された情報から生成する。
The prefetch
次に、先読み情報送信部203は、作成したリストに含まれる、すでにキャッシュメモリ102に存在しているデータに関する情報をそのリストから削除する(ステップS120)。これは、すでにキャッシュメモリ102に存在しているデータは、先読みする必要がないからである。
Next, the prefetch
それから、そのリストを、先読み情報送信部203は、ファイル処理部101経由でサーバ30に送信する(ステップS130)。
Then, the prefetch
サーバ30の受信部301は、送信されたリストを受信した場合、先読み情報処理部303に、そのリストを送る。
When receiving the transmitted list, the receiving
先読み情報処理部303は、そのリストを基に、キャッシュ処理部305に先読みの指示を出す。
The prefetch
キャッシュ処理部305は、そのリストに含まれるすべてのデータに対して、以下の処理(図4におけるS210〜S230)を繰り返し実行する。
The
はじめに、キャッシュ処理部305は、そのデータをキャッシュメモリ307に格納した場合の、キャッシュメモリ307の使用量がキャッシュメモリ307の容量を超えないかを確認する(ステップS210)。容量を超える場合(ステップS210で「Yes」)、キャッシュ処理部305は、そのデータに関して処理を行わない。容量を超えない場合(ステップS210で「No」)、キャッシュ処理部305は、そのデータをキャッシュメモリに格納済か否かを判定する(ステップS220)。格納済の場合(ステップS220で「Yes」)、キャッシュ処理部305は、そのデータに関して処理を行わない。格納されていない場合(ステップS220で「No」)、キャッシュ処理部305は、そのデータを記憶装置306から読み込み、読み込んだデータをキャッシュメモリ307に格納する(ステップS230)。キャッシュ処理部305は、データ格納後のキャッシュメモリ307の内容を表すように、キャッシュ情報記憶部308を更新する。
First, the
リストに含まれるすべてのデータに対して処理が終わるまで、ステップS210からの処理を繰り返す(ステップS240)。 Until all the data included in the list is processed, the processing from step S210 is repeated (step S240).
ここまで、サーバ30がクライアント端末10から読み込み予定のリストを受け取ったときに、先読みする動作について説明した。サーバ30は、さらに、読み込み要求を受けとったときにも、読み込み対象データの次のデータを先読みして、キャッシュメモリ307に格納する。
So far, the operation of prefetching when the
次に、本実施形態におけるファイル読み込み処理の流れについて、図6および図7を用いて説明する。図6は、本発明の第2の実施形態に係る情報処理システムのファイル読み込み処理について、クライアント端末における処理を説明するフローチャートである。図7は、本発明の第2の実施形態に係る情報処理システムのファイル読み込み処理について、サーバにおける処理を説明するフローチャートである。 Next, the flow of the file reading process in the present embodiment will be described with reference to FIGS. FIG. 6 is a flowchart for explaining processing in the client terminal regarding file reading processing of the information processing system according to the second embodiment of the present invention. FIG. 7 is a flowchart for explaining processing in the server for file reading processing in the information processing system according to the second embodiment of the present invention.
アプリケーションから読み込み要求があった場合、ファイル処理部101は、まずクライアント端末10のキャッシュメモリ102にそのデータが格納されているか否かを確認する(ステップS310)。対象のデータが格納されている場合(ステップS310で「Yes」)、ファイル処理部101は、キャッシュメモリ102から、そのデータを読み込む(ステップS330)。もし、キャッシュメモリ102に対象のデータが格納されていない場合(ステップS310で「No」)、ファイル処理部101は、サーバ30に問い合わせる(ステップS320)。すなわち、ファイル処理部101は、キャッシュメモリ102に格納されていないデータを読み込むためのリクエストをサーバ4に送信する。
When there is a read request from the application, the
そして、ファイル処理部101は、ステップS320における問い合わせに対して渡されたデータ、またはステップS330により読み込まれたデータをアプリケーションに渡す(ステップS340)。
Then, the
サーバ30の受信部301は、クライアント端末10から問い合わせを受けて、その問い合わせ内容を表す情報を、アクセス処理部304に渡す。
The receiving
次に、アクセス処理部304は、キャッシュ情報記憶部308を参照して、キャッシュメモリ307にそのデータが格納されているか否かを判定する(ステップS410)。対象のデータが格納されている場合(ステップS410で「Yes」)、アクセス処理部304は、キャッシュメモリ307から、そのデータを読み込む(ステップS430)。もし、キャッシュメモリ307に対象のデータが格納されていない場合(ステップS410で「No」)、アクセス処理部304は、記憶装置306からデータを読み込む(ステップS420)。
Next, the
そして、サーバ30は、ステップS420またはステップS430により読み込まれたデータをクライアント端末10に渡す(ステップS440)。
Then, the
次に、本実施形態におけるプリフェッチ解放処理の流れについて、図8を用いて説明する。図8は、本発明の第2の実施形態に係る情報処理システムのプリフェッチ解放処理を説明するフローチャートである。 Next, the flow of prefetch release processing in this embodiment will be described with reference to FIG. FIG. 8 is a flowchart for explaining prefetch release processing of the information processing system according to the second embodiment of the present invention.
プリフェッチ解放処理は、キャッシュメモリ307に格納してから、あらかじめ定めた一定時間を過ぎたデータをキャッシュメモリ307から削除する処理である。プリフェッチ解放処理は、定期的に、例えば、あらかじめ定めた時間ごとに実行される。
The prefetch release process is a process for deleting from the
キャッシュ処理部305は、キャッシュメモリ307に格納されたすべてのデータに対して、以下の処理を行う。
The
キャッシュ処理部305は、キャッシュ情報格納部308を参照して、データが格納されてから、一定時間が経過しているかを判定する(ステップS510)。
The
一定時間が経過している場合(ステップS510で「Yes」)、キャッシュ処理部は、
キャッシュメモリ307からそのデータを削除する(ステップS520)。そして、キャッシュ処理部305は、データ削除後のキャッシュメモリ307の内容を表すように、キャッシュ情報記憶部308を更新する。
When the predetermined time has elapsed (“Yes” in step S510), the cache processing unit
The data is deleted from the cache memory 307 (step S520). Then, the
キャッシュ307に格納された、すべてのデータに対して処理が終わるまで、ステップS510からの処理を繰り返す(ステップS530)。 The processing from step S510 is repeated until the processing is completed for all data stored in the cache 307 (step S530).
以上、説明したように、第2の実施形態には、サーバに格納されたデータを効率的に読み込むことができるという効果がある。 As described above, the second embodiment has an effect that data stored in the server can be efficiently read.
その理由は、本実施形態に係る情報処理システムは、クライアント端末で動作するアプリケーションが読み込む予定のデータに関する情報を基に、サーバでプリフェッチ処理を行うからである。 The reason is that the information processing system according to the present embodiment performs prefetch processing at the server based on information related to data to be read by an application running on the client terminal.
これにより、サーバは、無駄なキャッシュをする可能性が格段に減り、より効率的なプリフェッチが可能となる。 As a result, the server has a much lower possibility of wasted cache, and more efficient prefetching is possible.
さらに、サーバは、必要なデータのみをキャッシュすることができ、管理および制御する情報を少なくすることができるため、必要となるメモリの量を削減することができる。 Furthermore, since the server can cache only necessary data and can reduce information to be managed and controlled, the amount of necessary memory can be reduced.
また、クライアント端末は、キューに格納されたリクエストがあらかじめ定めた一定量を超えたら、先読みが必要なデータに関する情報の生成とその情報のサーバへの送信を行うようにすればよい。そうすれば、クライアント端末は、クライアント端末とサーバの間の通信量を考慮した制御を行うことが可能である。 Further, when the number of requests stored in the queue exceeds a predetermined amount, the client terminal may generate information related to data that requires prefetching and transmit the information to the server. Then, the client terminal can perform control in consideration of the communication amount between the client terminal and the server.
(ハードウェア構成)
上述した実施形態において図1および図2に示した各部は、専用の装置または回路によって実現してもよいが、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることもできる。但し、これらの図面に示した各部の実装に際しては、様々な構成が想定され得る。このような場合のハードウェア環境の一例を、図9を参照して説明する。
(Hardware configuration)
1 and 2 in the above-described embodiment may be realized by a dedicated device or circuit, but can also be regarded as a function (processing) unit (software module) of a software program. However, various configurations can be envisaged when mounting each part shown in these drawings. An example of the hardware environment in such a case will be described with reference to FIG.
図9は、本発明の第1および第2の実施形態を実現可能なコンピュータ(情報処理装置)のハードウェア構成を例示的に説明する図である。即ち、図9は、図1に示したクライアント端末および図2に示した情報処理システムの全体または一部を実現可能なコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。 FIG. 9 is a diagram illustrating an exemplary hardware configuration of a computer (information processing apparatus) that can implement the first and second embodiments of the present invention. That is, FIG. 9 shows the configuration of the client terminal shown in FIG. 1 and the computer (information processing apparatus) that can realize the whole or part of the information processing system shown in FIG. Represents a hardware environment capable of realizing
図9に示した情報処理装置9000は、以下の装置を備え、これらがバス9007を介して接続された構成を有する。
The
・CPU(Central Processing Unit)9001、
・ディスプレイ9002、
・通信インタフェース(I/F)9003、
・ROM(Read Only Memory)9004、
・RAM(Random Access Memory)9005および
・ハードディスク装置(HD)9006。
CPU (Central Processing Unit) 9001
-
・ Communication interface (I / F) 9003,
・ ROM (Read Only Memory) 9004,
RAM (Random Access Memory) 9005 and Hard disk device (HD) 9006.
ハードディスク装置9006には、プログラム群9006Aと、各種の記憶情報9006Bとが格納されている。プログラム群9006Aは、例えば、上述した図1に示したクライアント端末および図2に示した情報処理システムの各ブロック(各部)に対応する機能を実現するためのコンピュータ・プログラムである。各種の記憶情報9006Bは、例えば、図2に示した記憶装置306である。通信インタフェース9003は、ネットワーク9100を介して外部装置と通信を実現する一般的な通信手段である。
The
そして、情報処理装置9000は、前述の実施形態の説明において参照したブロック図、あるいは、フローチャートの機能を実現可能なコンピュータ・プログラムを、当該ハードウェアのCPU9001が実行する。すなわち、CPU9001は、コンピュータ・プログラムを、図9に示す情報処理装置9000のハードウェア資源を用いて実行することによって本発明の実施形態の機能が達成される。具体的には、図2に示した情報処理システムを、情報処理装置9000によって実現する場合、情報処理装置9000は、図3、4、6〜8に示すフローチャートの処理ステップを実行するためのコンピュータ・プログラムをCPU9001が実行すればよい。また、情報処理装置9000内に供給されたコンピュータ・プログラムは、読み書き可能なRAM9005、またはハードディスク装置9006等の不揮発性の記憶デバイス(記憶媒体)に格納すればよい。
In the
また、上述の場合において、当該装置内へのコンピュータ・プログラムの供給方法は、現在では一般的な手順を採用することができる。その方法は、例えば、CD−ROM等の各種記憶媒体を介して当該装置内にインストールする方法や、インターネット等のネットワーク9100を介して外部からダウンロードする方法等である。そして、このような場合において、本発明の実施形態は、係るコンピュータ・プログラムを構成するコード或いは、そのコードが記録されたところの、コンピュータ読み取り可能な記憶媒体によって構成されると捉えることができる。
In the above-described case, a general procedure can be adopted as a method for supplying a computer program into the apparatus. The method includes, for example, a method of installing in the apparatus via various storage media such as a CD-ROM, and a method of downloading from the outside via a
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 While the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
1 情報端末
2 記憶部
3 情報送信部
4 サーバ
5 ファイル
10 クライアント端末
20 制御部
30 サーバ
101 ファイル処理部
102 キャッシュメモリ
201 リクエスト受付部
202 リクエスト処理部
203 先読み情報送信部
204 キュー
301 受信部
303 先読み情報処理部
304 アクセス処理部
305 キャッシュ処理部
306 記憶装置
307 キャッシュメモリ
308 キャッシュ情報記憶部
9000 情報処理装置
9001 CPU
9002 ディスプレイ
9003 通信インタフェース
9004 ROM
9005 RAM
9006 ハードディスク装置
9006A プログラム群
9006B 各種の記憶情報
9007 バス
9100 ネットワーク
DESCRIPTION OF
9002
9005 RAM
9006
Claims (8)
前記記憶部の内容を基に、そのファイルに含まれるアクセス予定のデータに関する情報を生成し、生成した前記情報をサーバがプリフェッチ処理に用いる情報として、前記ファイルを管理する前記サーバに送信する情報送信手段と
を備える
情報端末。 A storage unit for storing access request information for a file from an application running on its own terminal;
Based on the contents of the storage unit, information related to data to be accessed included in the file is generated, and the generated information is transmitted to the server managing the file as information used by the server for prefetch processing. And an information terminal.
前記情報送信手段は、アクセス予定の前記データが前記キャッシュメモリに格納されている場合に、そのデータを前記情報に含まないように制御する
請求項1記載の情報端末。 The information terminal according to claim 1, further comprising a cache memory,
2. The information terminal according to claim 1, wherein, when the data to be accessed is stored in the cache memory, the information transmitting unit controls the data not to be included in the information.
請求項1または2記載の情報端末。 The information transmitting unit generates information on data scheduled to be accessed based on the content of the access request information corresponding to a read request among the access request information stored in the storage unit, and the generated information The information terminal according to claim 1, wherein the information is transmitted to the server managing the file as information used by the server for prefetch processing.
前記記憶部の内容を基に、アクセス予定のデータに関する情報を生成し、生成した前記情報をサーバがプリフェッチ処理に用いる情報として、前記ファイルを管理する前記サーバに送信する
請求項1乃至3の何れか一項に記載の情報端末。 The information transmitting means, when the access request information stored in the storage unit exceeds a predetermined amount,
4. The information according to any one of claims 1 to 3, wherein information relating to data to be accessed is generated based on the contents of the storage unit, and the generated information is transmitted to the server managing the file as information used by the server for prefetch processing. An information terminal according to claim 1.
前記情報端末を識別する情報と、
前記ファイルを識別する情報と、
前記ファイルの読み込みを開始する位置を表す情報と、
前記ファイルを前記位置から読み込む量を表す情報と、
前記ファイルを前記位置から読み込む方向を表す情報と
を含む
請求項1乃至4の何れか一項に記載の情報端末。 The information is
Information for identifying the information terminal;
Information identifying the file;
Information indicating a position to start reading the file;
Information representing the amount of reading the file from the position;
The information terminal as described in any one of Claims 1 thru | or 4 containing the information showing the direction which reads the said file from the said position.
前記情報端末より送信された前記情報を基に前記ファイルから該当するデータを読み込み、前記キャッシュメモリに格納するキャッシュ処理手段とを
有する前記サーバと、
請求項1乃至5の何れか一項に記載の情報端末と
を備える
情報処理システム。 A cache memory that can be accessed faster than a storage device such as a disk;
The server having cache processing means for reading corresponding data from the file based on the information transmitted from the information terminal and storing the data in the cache memory;
An information processing system comprising the information terminal according to any one of claims 1 to 5.
データ読み込み方法。 Based on the contents of the storage unit that stores the access request information for the file from the application running on its own terminal, information on the data scheduled to be accessed contained in the file is generated, and the generated information is managed by the file A data reading method in which the server performs prefetch processing based on the information transmitted to the server.
コンピュータ・プログラム。 Based on the contents of the storage unit in which access request information for the file from the application is stored, information on the data scheduled to be included in the file is generated, and the generated information is used as information used by the server for prefetch processing. A computer program that causes a computer to execute processing to be transmitted to the server that manages files.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015175450A JP6707824B2 (en) | 2015-09-07 | 2015-09-07 | Information terminal, information processing system, data reading method, and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015175450A JP6707824B2 (en) | 2015-09-07 | 2015-09-07 | Information terminal, information processing system, data reading method, and computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017054162A true JP2017054162A (en) | 2017-03-16 |
JP6707824B2 JP6707824B2 (en) | 2020-06-10 |
Family
ID=58316568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015175450A Active JP6707824B2 (en) | 2015-09-07 | 2015-09-07 | Information terminal, information processing system, data reading method, and computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6707824B2 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04184652A (en) * | 1990-11-20 | 1992-07-01 | Nec Corp | Remote file read system |
JPH08153032A (en) * | 1994-11-29 | 1996-06-11 | Matsushita Electric Ind Co Ltd | Data look-ahead buffer method via network |
JP2005148868A (en) * | 2003-11-12 | 2005-06-09 | Hitachi Ltd | Data prefetch in storage device |
JP2011258016A (en) * | 2010-06-09 | 2011-12-22 | Fujitsu Ltd | Data management system, data management method, and data management program |
JP2013218505A (en) * | 2012-04-09 | 2013-10-24 | Hitachi Ltd | Communication device and system for relaying communication between client and server |
-
2015
- 2015-09-07 JP JP2015175450A patent/JP6707824B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04184652A (en) * | 1990-11-20 | 1992-07-01 | Nec Corp | Remote file read system |
JPH08153032A (en) * | 1994-11-29 | 1996-06-11 | Matsushita Electric Ind Co Ltd | Data look-ahead buffer method via network |
JP2005148868A (en) * | 2003-11-12 | 2005-06-09 | Hitachi Ltd | Data prefetch in storage device |
JP2011258016A (en) * | 2010-06-09 | 2011-12-22 | Fujitsu Ltd | Data management system, data management method, and data management program |
JP2013218505A (en) * | 2012-04-09 | 2013-10-24 | Hitachi Ltd | Communication device and system for relaying communication between client and server |
Also Published As
Publication number | Publication date |
---|---|
JP6707824B2 (en) | 2020-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6621543B2 (en) | Automatic update of hybrid applications | |
US9740435B2 (en) | Methods for managing content stored in cloud-based storages | |
US8984058B2 (en) | Pre-fetching remote resources | |
JP6062987B2 (en) | Network storage management system | |
JP5753665B2 (en) | Client, mediation server and method for providing cloud storage | |
RU2453911C2 (en) | Offline execution of web based applications | |
US20100235473A1 (en) | System and method of embedding second content in first content | |
JP6285870B2 (en) | High-speed application streaming with on-demand staging | |
KR101587631B1 (en) | Local apparatus based on cloud and method for reading and storing file | |
JP6188713B2 (en) | Autonomous network streaming | |
KR20100106609A (en) | Storage device having direct user access | |
US10747723B2 (en) | Caching with dynamic and selective compression of content | |
US20170153909A1 (en) | Methods and Devices for Acquiring Data Using Virtual Machine and Host Machine | |
CN107026879B (en) | Data caching method and background application system | |
KR102098415B1 (en) | Cache management | |
JP2017534953A (en) | Systems, methods, and computer program products for directly entering commands and / or content created in a local desktop application of a computing device into a web browser and vice versa | |
JP4554723B2 (en) | Managing network response buffering behavior | |
CN106657182B (en) | Cloud file processing method and device | |
JP5643449B1 (en) | Server and method for displaying display screen on terminal device | |
JP6707824B2 (en) | Information terminal, information processing system, data reading method, and computer program | |
CN107704596B (en) | Method, device and equipment for reading file | |
JP2018538637A (en) | Method and device for accelerating application execution | |
JP6039345B2 (en) | Image management apparatus, image management method, and program | |
CN111314396B (en) | Data processing method and device | |
US20210026809A1 (en) | Data caching method and node based on hyper-converged infrastructure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180809 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190319 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190516 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191015 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191210 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200421 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200504 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6707824 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |