JP2019144932A - Information processing device, information processing system, information processing method, and program - Google Patents
Information processing device, information processing system, information processing method, and program Download PDFInfo
- Publication number
- JP2019144932A JP2019144932A JP2018029587A JP2018029587A JP2019144932A JP 2019144932 A JP2019144932 A JP 2019144932A JP 2018029587 A JP2018029587 A JP 2018029587A JP 2018029587 A JP2018029587 A JP 2018029587A JP 2019144932 A JP2019144932 A JP 2019144932A
- Authority
- JP
- Japan
- Prior art keywords
- data
- cache
- information processing
- storage device
- processing apparatus
- 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
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
本発明は、データの処理に関し、特に、記憶装置にデータの保存する処理に関する。 The present invention relates to data processing, and more particularly to processing for storing data in a storage device.
コンピュータなどの情報処理装置は、可用性を高めるため、仮想マシンを動作させる仮想化基盤を備え、その仮想化基盤上で動作する仮想マシンにおいて所定のオペレーティングシステム及びアプリケーションを動作させる(例えば、特許文献1を参照)。 In order to increase availability, an information processing apparatus such as a computer includes a virtualization platform that operates a virtual machine, and operates a predetermined operating system and application in the virtual machine that operates on the virtualization platform (for example, Patent Document 1). See).
仮想マシンにおける通常の動作において、仮想マシンは、それぞれの仮想マシン毎に、記憶装置に確保された領域に接続する仮想的な接続機能を用いて、仮想的な記憶装置に対するアクセスを実現している。各仮想マシンは、他の仮想マシンと独立に動作する。そのため、複数の仮想マシンが通常のアプリケーションなどを実行している場合、仮想マシンからの記憶装置へのアクセスは、同時に多数発生する可能性が低く、分散されている。 In normal operation of a virtual machine, the virtual machine achieves access to the virtual storage device by using a virtual connection function for connecting to an area secured in the storage device for each virtual machine. . Each virtual machine operates independently of other virtual machines. For this reason, when a plurality of virtual machines are executing normal applications or the like, a large number of accesses to the storage device from the virtual machines are unlikely to occur at the same time and are distributed.
オペレーティングシステム及びアプリケーションは、バグの修正、又は、セキュリティの向上などのため、修正が必要となる場合がある。この修正は、オペレーティングシステムなどを実行している仮想マシンに、パッチファイルとして配布される。 The operating system and application may need to be corrected to correct bugs or improve security. This fix is distributed as a patch file to virtual machines running the operating system.
パッチファイルとして配布されるファイルの一例として、Hotfixがある。Hotfixは、使用を停止できないソフトウェア(例えば、オペレーティングシステム)に、危険度が高い深刻な脆弱性が発見された場合に提供されるファイルである。そのため、Hotfixは、対象となるオペレーティングシステムが動作する全ての仮想マシンに、可能な限り早急に配布される必要がある。 One example of a file distributed as a patch file is Hotfix. Hotfix is a file provided when a serious vulnerability with a high risk is found in software (for example, an operating system) that cannot be stopped. Therefore, Hotfix needs to be distributed as soon as possible to all virtual machines on which the target operating system operates.
また、アプリケーションが動作に用いるデータの更新としても、所定のデータが、ファイルとして仮想マシンに配布される。例えば、ウィルス対策アプリケーションに対して、ウィルスの検出に用いるウィルスパターンファイルが、配布される。特に危険度の高いウィルスが発見された場合、そのウィルスに対応したウィルスパターンファイルは、ウィルス対策アプリケーションが動作する全ての仮想マシンに、早急に配布される必要がある。なお、ウィルスパターンファイルへの追加用データファイル、及び、ウィルスパターンファイルの修正用のファイルは、「セキュリティ・パッチ」と呼ばれる場合がある。 In addition, predetermined data is distributed as a file to a virtual machine as an update of data used by an application for operation. For example, a virus pattern file used for virus detection is distributed to the antivirus application. In particular, when a virus with a high risk level is found, a virus pattern file corresponding to the virus needs to be immediately distributed to all virtual machines on which the antivirus application operates. Note that the data file for adding to the virus pattern file and the file for correcting the virus pattern file may be referred to as “security patch”.
このように、Hotfixのようなファイルは、複数の仮想マシンに対して、同時並行的に配布される必要がある。このようなファイルの配布は、元となるファイルに対して、複数の仮想マシンが、同時並行的に、アクセスすることとなる。その結果、元となるファイルを保存している記憶装置に対して、複数の仮想マシンからの多数のアクセスが、同時並行的に発生する。その結果、その記憶装置への過剰な負荷が、発生する可能性があった。 Thus, a file such as Hotfix needs to be distributed to a plurality of virtual machines in parallel. In such file distribution, a plurality of virtual machines simultaneously access the original file in parallel. As a result, a large number of accesses from a plurality of virtual machines occur simultaneously in parallel with respect to the storage device storing the original file. As a result, an excessive load on the storage device may occur.
また、記憶装置は、一般的に、アクセスに対する処理を並行的にではなく、連続的に処理する。そのため、記憶装置への同時並行的な多数のアクセスの発生は、記憶装置において多くの処理の待ち合わせを発生させ、システム全体における処理の遅延を発生させる可能性があった。 In addition, the storage device generally processes access processing continuously, not in parallel. For this reason, the occurrence of many simultaneous accesses to the storage device may cause many processing waits in the storage device and may cause processing delay in the entire system.
特許文献1に記載の発明は、仮想マシンのデータに対する要求数を低減するようにメモリのマッピングを操作するものであり、記憶装置に同時並行的に発生するアクセスを改善するものではない。 The invention described in Patent Document 1 operates memory mapping so as to reduce the number of requests for data of a virtual machine, and does not improve access that occurs simultaneously in a storage device.
本発明の目的は、上記問題点を解決し、記憶装置への同時並行的なアクセスの発生を低減する情報処理装置などを提供することにある。 An object of the present invention is to provide an information processing apparatus that solves the above-described problems and reduces the occurrence of concurrent access to a storage device.
本発明の一形態における情報処理装置は、記憶装置に接続され、データを保存するキャッシュと、データを、複数の仮想マシンが使用する多重使用データ、又は、一の仮想マシンが使用する単独使用データに分類する分類手段と、多重使用データの場合にデータをキャッシュに保存し、単独使用データの場合にデータを記憶装置に保存するデータ保存手段とを含む。 An information processing apparatus according to one embodiment of the present invention is connected to a storage device and stores a cache for storing data, multiple use data used by a plurality of virtual machines, or single use data used by one virtual machine And a data storage unit that stores data in a cache in the case of multiple use data and stores data in a storage device in the case of single use data.
本発明の一形態における情報処理システムは、上記の情報処理装置と、記憶装置と、情報処理装置を記憶装置に接続するネットワークとを含む。 An information processing system according to an aspect of the present invention includes the above information processing device, a storage device, and a network that connects the information processing device to the storage device.
本発明の一形態における情報処理方法は、記憶装置に接続され、データを保存するキャッシュを含む情報処理装置が、データを、複数の仮想マシンが使用する多重使用データ、又は、一の仮想マシンが使用する単独使用データに分類し、多重使用データの場合にデータをキャッシュに保存し、単独使用データの場合にデータを記憶装置に保存する。 An information processing method according to one embodiment of the present invention includes an information processing device that is connected to a storage device and includes a cache that stores data. The data is classified into single use data to be used, and data is stored in a cache in the case of multiple use data, and data is stored in a storage device in the case of single use data.
本発明の一形態におけるプログラムは、記憶装置に接続され、データを保存するキャッシュを含むコンピュータに、データを、複数の仮想マシンが使用する多重使用データ、又は、一の仮想マシンが使用する単独使用データに分類する処理と、多重使用データの場合にデータをキャッシュに保存し、単独使用データの場合にデータを記憶装置に保存する処理とを実行させる。 The program according to one embodiment of the present invention is a computer connected to a storage device and including a cache for storing data, and the data is used by multiple virtual machines used by a plurality of virtual machines or by a single virtual machine. A process of classifying the data into data and a process of storing data in a cache in the case of multiple use data and storing data in a storage device in the case of single use data are executed.
本発明に基づけば、記憶装置への同時並行的なアクセスの発生を低減するとの効果を奏することができる。 According to the present invention, it is possible to reduce the occurrence of concurrent access to the storage device.
次に、本発明の実施形態について図面を参照して説明する。 Next, embodiments of the present invention will be described with reference to the drawings.
なお、各図面は、本発明の実施形態を説明するためのものである。ただし、本発明は、各図面の記載に限られるわけではない。また、各図面の同様の構成には、同じ番号を付し、その繰り返しの説明を、省略する場合がある。また、以下の説明に用いる図面において、本発明の説明に関係しない部分の構成については、記載を省略し、図示しない場合もある。 Each drawing is for explaining an embodiment of the present invention. However, the present invention is not limited to the description of each drawing. Moreover, the same number is attached | subjected to the same structure of each drawing, and the repeated description may be abbreviate | omitted. Further, in the drawings used for the following description, the description of the configuration of the part not related to the description of the present invention is omitted, and there are cases where it is not illustrated.
なお、以下の説明において、保存対象を示す用語として「データ」を用いる。ただし、保存対象は、個別のデータに限定されない。保存対象は、データの集合(例えば、配列、構造体、ファイル、フォルダ、又は、記憶装置を論理的に分割した論理ユニット(又はパーティション))でもよい。以下、これらをまとめて「データ」と呼ぶ。 In the following description, “data” is used as a term indicating a storage target. However, the storage target is not limited to individual data. The storage target may be a collection of data (for example, an array, a structure, a file, a folder, or a logical unit (or partition) obtained by logically dividing a storage device). Hereinafter, these are collectively referred to as “data”.
<第1の実施形態>
以下、図面を参照して、第1の実施形態について説明する。
<First Embodiment>
The first embodiment will be described below with reference to the drawings.
[構成の説明]
まず、第1の実施形態に係る情報処理装置100の構成について、図面を参照して説明する。
[Description of configuration]
First, the configuration of the
図1は、本発明における第1の実施形態に係る情報処理装置100を含む情報処理システム10の構成の一例を示すブロック図である。
FIG. 1 is a block diagram illustrating an example of a configuration of an
図1に示されているように、情報処理システム10は、情報処理装置100と、記憶装置200と、ネットワーク400とを含む。
As illustrated in FIG. 1, the
ネットワーク400は、情報処理装置100と記憶装置200とを接続する。ネットワーク400は、限定されない。例えば、ネットワーク400は、情報処理装置100と記憶装置200とを接続する専用ネットワーク(例えば、Storage Area Network(SAN))でもよい。あるいは、ネットワーク400は、汎用の通信網(例えば、Loca Area Network(LAN)、インターネット、又は、電話回線)でもよい。
The
記憶装置200は、情報処理装置100から受信したデータを保存し、保存したデータを情報処理装置100に送信する。記憶装置200は、限定されない。例えば、記憶装置200は、磁気ディスク装置、Solid State Drive(SSD)、光磁気ディスク装置、又は、それらの装置の組合せ(例えば、ディスクアレイ装置)である。
The
情報処理装置100は、記憶装置200に接続されている。図1に示されているように、複数の情報処理装置100が、記憶装置200に接続されていてもよい。ただし、一つの情報処理装置100が、記憶装置200に接続されていてもよい。
The
また、情報処理装置100は、一つに限らず、複数の記憶装置200に接続されていてもよい。
The
情報処理装置100は、仮想化基盤106と、仮想マシン101とを含む。
The
仮想化基盤106は、一つ又は複数の仮想マシン101に実行環境を提供する。例えば、仮想化基盤106は、仮想マシン101に対して、データを保存する記憶装置200を仮想化した記憶装置としての機能を提供する。仮想化した記憶装置は、ネットワークストレージとしての機能を備えていてもよい。例えば、仮想化した記憶装置は、複数の仮想マシン101からアクセス可能であってもよい。
The
さらに、仮想化基盤106は、仮想マシン101に対して他の機能を提供してもよい。例えば、仮想化基盤106は、仮想マシン101に対して、仮想化した通信機能を提供してもよい。
Further, the
仮想化基盤106は、図1に示されていないプロセッサ及びメモリなどのハードウェアと、所定のソフトウェアとを用いて実現される。
The
仮想マシン101は、仮想化基盤106において、一般的なコンピュータとしての機能を実現する。例えば、仮想マシン101は、図示していない所定のオペレーティングシステムを実行し、そのオペレーティングシステム上において各種のアプリケーションを実行する。仮想マシン101は、単独のアプリケーションの実行に限らず、複数のアプリケーションで構成されたジョブを実行してもよい。
The
さらに、仮想マシン101は、他の仮想マシン101と連携してもよい。例えば、いずれか一の仮想マシン101が、仮想化基盤106が提供する通信機能を用いて、ウィルス対策アプリケーションのメーカーからウィルスパターンファイル(セキュリティ・パッチ)を入手し、他の仮想マシン101に配布してもよい。あるいは、いずれか一の仮想マシン101が、通信機能を用いて、オペレーティングシステムのメーカーからHotfixを入手し、他の仮想マシン101に配布してもよい。
Further, the
仮想マシン101は、仮想化基盤106と同様に、図1に示されていないプロセッサ及びメモリなどのハードウェアと、所定のソフトウェアとを用いて実現される。
Similar to the
さらに、第1の実施形態に係る情報処理装置100の構成の詳細を説明する。
Further, details of the configuration of the
まず、仮想マシン101の詳細を説明する。
First, details of the
仮想マシン101は、分類部103と、仮想ディスクドライバ105とを含む。
The
分類部103は、仮想化基盤106に保存を依頼するデータを、分類する。例えば、仮想マシン101が、新たなファイルを作成した場合、仮想マシン101は、作成したファイルを保存する。この場合、分類部103は、ファイルを分類する。
The
あるいは、仮想マシン101が、他の装置から取得したファイルを他の仮想マシン101に配布するために、ネットワークストレージ機能を備えた仮想的な記憶装置にファイルを保存する。この場合も、分類部103は、ファイルを分類する。
Alternatively, the
なお、分類部103は、仮想マシン101が保存する全てのデータを分類してもよいし、所定の種類のデータを分類してもよい。
The
分類の詳細としては、分類部103は、保存するデータを、複数の仮想マシン101が使用するデータ、又は、その仮想マシン101が単独で使用するデータに分類する。
As the details of the classification, the
以下、複数の仮想マシン101が使用するデータを、「多重使用データ」と呼ぶ。複数の仮想マシン101は、一つの情報処理装置100において動作する仮想マシン101に限らない。複数の仮想マシン101は、複数の情報処理装置100において動作する仮想マシン101でもよい。
Hereinafter, data used by a plurality of
また、仮想マシン101が単独で使用するデータを、「単独使用データ」と呼ぶ。
Further, data that the
多重使用データの一例は、オペレーティングシステムが用いるファイル、オペレーティングシステムの上で動作するアプリケーションが用いるファイル、又はアプリケーションが利用するライブラリである。多重使用ファイルのより具体的な一例は、セキュリティ・パッチ及びHotfixである。 An example of the multiple use data is a file used by the operating system, a file used by an application operating on the operating system, or a library used by the application. More specific examples of multi-use files are security patches and hotfixes.
単独使用データの一例は、仮想マシン101の動作状態を保存するログファイルである。
An example of the single use data is a log file that stores the operation state of the
分類部103は、所定のルールを用いてデータを分類する。
The
図9は、第1の実施形態に係る分類ルールの一例を示す図である。図9は、ファイルを分類の単位とした場合の例である。 FIG. 9 is a diagram illustrating an example of a classification rule according to the first embodiment. FIG. 9 shows an example in which a file is used as a classification unit.
「多重使用ファイル」が、多重使用データと判定されるファイルのルールである。[フォルダ]に示されているフォルダに含まるファイルは、多重使用データと判定される。[拡張子]に示されている拡張子を含むファイルは、多重使用データと判定される。 “Multiple use file” is a rule of a file that is determined to be multiuse data. Files included in the folder indicated in [Folder] are determined to be multi-use data. A file including the extension shown in [Extension] is determined to be multiple use data.
「単独使用ファイル」が、単独使用データと判定されるファイルのルールである。[フォルダ]に示されているフォルダに含まるファイルは、単独使用データと判定される。[拡張子]に示されている拡張子を含むファイルは、単独使用データと判定される。 The “single use file” is a rule of a file that is determined as single use data. The file included in the folder shown in [Folder] is determined as single use data. A file including the extension shown in [Extension] is determined as single use data.
分類部103は、ファイルに関する上記以外の情報を用いてもよい。例えば、属性が読み取り専用のファイルは、多くから参照されるファイルである場合が多い。そこで、分類部103は、読み取り専用の属性のファイルを多重使用ファイルに分類してもよい。
The
このように、分類部103は、ファイルが保存されている位置(例えば、フォルダ)、ファイルの名称(例えば、拡張子)、及び/又は、属性(例えば、読み取り専用の属性)を用いてファイルを分類してもよい。
In this way, the
図1を参照した説明に戻る。 Returning to the description with reference to FIG.
分類部103は、分類した結果をデータに付与してもよい。分類結果の付与の具体的なやり方は、データの所定の位置に結果を含ませることである。
The
データに結果を付与する場合、分類部103は、直接的にデータに分類した結果を付与してもよく、次に説明する仮想ディスクドライバ105に付与を依頼してもよい。
When assigning a result to data, the
仮想ディスクドライバ105は、仮想マシン101に対して、仮想化基盤106が提供する仮想化した記憶装置に対するデータの仲介機能(データを送信する機能とデータを受信する機能)を提供する。さらに、仮想ディスクドライバ105は、分類部103が分類した結果とともにデータを仮想化基盤106に送信する。データが分類結果を含む場合、仮想ディスクドライバ105は、データを仮想化基盤106に送信する。データが分類結果を含まない場合、仮想ディスクドライバ105は、分類結果とデータとを、仮想化基盤106に送信する。
The
仮想化した記憶装置とは、仮想化基盤106が記憶装置200及びキャッシュ107を仮想化して、仮想マシン101に提供する記憶装置である。
The virtualized storage device is a storage device that the
次に、仮想化基盤106の詳細を説明する。
Next, details of the
仮想化基盤106は、データ保存部120と、キャッシュ107と、送受信キュー109と、多重化部108とを含む。
The
キャッシュ107は、仮想マシン101から保存を依頼されたデータの少なくとも一部を保存する。キャッシュ107は、仮想化基盤106が動作する情報処理装置100のメモリを用いて構成される。キャッシュ107は、複数の仮想マシン101からアクセス可能である。キャッシュ107は、複数の仮想マシン101から共有可能な領域を備えている共有キャッシュである。
The
仮想マシン101で動作するアプリケーションなどからのキャッシュ107へのアクセスは、記憶装置200へのアクセスに対して高速である。一般的に、キャッシュ107に対するアクセス時間は、記憶装置200に対するアクセス時間に比べ、数十分の一から数百分の一である。そのため、キャッシュ107へのアクセスにおける待ち合わせが発生しても、待ち合わせ時間は短い。その結果、キャッシュ107へのアクセスは、記憶装置200へのアクセスに比べ、競合が発生しにくい。
Access to the
以下の説明において、キャッシュ107は、キャッシュ107におけるデータを管理する機能を含む。例えば、以下の説明において、キャッシュ107は、保存しているデータを記憶装置200に書き出す処理を実行する。ただし、これは、第1の実施形態を限定するものではない。例えば、情報処理装置100は、図示しないキャッシュ107を制御するキャッシュ制御部を備えていてもよい。この場合、キャッシュ制御部が、キャッシュ107におけるデータの移動などを制御する。
In the following description, the
キャッシュ107におけるデータの構造は、限定されない。キャッシュ107におけるデータの構造は、仮想化基盤106の仕様に沿って決定されればよい。
The data structure in the
なお、キャッシュ107に保存されたデータは、一般的に、バックグラウンドで動作する保存処理が、所定の周期、又は、所定のタイミングで、所定のキャッシュ・アルゴリズムを用いて記憶装置200に書き込む。情報処理装置100は、一般的なキャッシュ・アルゴリズムを用いればよい。キャッシュ・アルゴリズムは、例えば、Least Recently Used(LRU)、又は、Least Frequently Used(LFU)である。
The data stored in the
なお、キャッシュ107は、キャッシュ107における空き領域が所定の量より少なくなるまで、記憶装置200に書き出したデータを保持してもよい。
Note that the
送受信キュー109は、記憶装置200に保存するデータを送信し、記憶装置200から保存しているデータを受信するキューである。送受信キュー109は、記憶装置200と情報処理装置100との間における処理の時間的な差を吸収するため、データの先入れ先出し処理を実行する。なお、送受信キュー109は、データの先入れ先出し処理に加え、優先度に基づいた処理を実行してもよい。
The transmission /
データ保存部120は、仮想マシン101から、分類結果とともにデータを受信すると、分類結果を基にデータをキャッシュ107又は記憶装置200に保存する。
When the
具体的には、データ保存部120は、次のように動作する。
Specifically, the
「多重使用データ」は、複数の仮想マシン101から同時並行的にアクセスされる。記憶装置200への同時並行的なアクセスを避けるため、データ保存部120は、多重使用データに分類されたデータをキャッシュ107(共有キャッシュ)に保存する。
The “multiple use data” is accessed in parallel from a plurality of
「単独使用データ」は、仮想マシン101から同時並行的にはアクセスされない。そこで、「単独使用データ」の場合、データ保存部120は、送受信キュー109を介して、単独使用データに分類されたデータを記憶装置200に保存する。
The “single use data” is not accessed from the
キャッシュ107は、メモリを用いて構成されている。メモリは、情報処理装置100の電源断などでデータが消失する可能性がある。信頼性を向上するためには、キャッシュ107に保存されているデータは、望ましくは、他の情報処理装置100などとで多重化された方がよい。
The
また、複数の装置がデータを共有する場合、一般的なシステムでは、共有されるデータは、複数の装置からアクセス可能な記憶装置に保存される。この場合、複数の装置が、その記憶装置にアクセスする。その結果、記憶装置への同時並行的なアクセスが発生する可能性がある。 When a plurality of devices share data, in a general system, the shared data is stored in a storage device accessible from the plurality of devices. In this case, a plurality of devices access the storage device. As a result, concurrent access to the storage device may occur.
しかし、他の情報処理装置100がキャッシュ107にそのデータを保存すると、他の情報処理装置100において動作する仮想マシン101は、そのデータへのアクセスとして、キャッシュ107へのアクセスを実行する。その結果、他の情報処理装置100から記憶装置200へのアクセスが低減される。
However, when the other
そこで、多重化部108は、他の情報処理装置100にデータの保存を依頼して、キャッシュ107に保存したデータの多重化を実行する。多重化部108は、図示しない所定の通信網を介して他の情報処理装置100の多重化部108との通信を実現している。
Therefore, the
多重化部108は、キャッシュ107にデータが保存されると、他の情報処理装置100に対して、そのデータを他の情報処理装置100のキャッシュ107に保存することを依頼する。
When data is stored in the
多重化部108は、キャッシュ107に保存された全てのデータではなく、一部のデータを多重化してもよい。例えば、仮想マシン101は、処理速度を関係で、その仮想マシン101が単独で一時的に使用するデータをキャッシュ107に保存する場合がある。この場合、多重化部108は、そのデータを多重化しなくてもよい。
The
あるいは、多重化部108は、所定の基準を基に、保存を依頼する情報処理装置100を選択してもよい。例えば、多重化部108は、データを作成した仮想マシン101、又は、仮想マシン101において動作するジョブがデータを共有する情報処理装置100に対して、多重化を依頼してもよい。
Alternatively, the
さらに、多重化部108は、保存を依頼するデータを管理するための情報を保持してもよい。例えば、他の情報処理装置100が、所定の処理を終了するまで、多重化の依頼に応答できない場合がある。そこで、多重化部108は、多重化の依頼先となる情報処理装置100毎に、データの多重化を依頼するための管理情報(例えば、リスト)を作成し、管理情報に沿って多重化を依頼してもよい。
Further, the
多重化部108は、他の情報処理装置100から、データのキャッシュ107への保存の依頼を受信すると、依頼元の情報処理装置100と関連付けてそのデータをキャッシュ107に保存する。多重化部108は、依頼されたデータと依頼元の情報処理装置100とを関連付けた情報を保持する。
When the
既に説明したとおり、他の情報処理装置100がキャッシュ107にデータを保存すると、他の情報処理装置100において動作する仮想マシン101からそのデータへのアクセスは、キャッシュ107へのアクセスとなる。その結果、他の情報処理装置100から記憶装置200へのアクセスが、低減される。
As already described, when another
さらに、多重化部108は、キャッシュ107に保存したデータを記憶装置200に書き出した場合、保存を依頼した他の情報処理装置100に、データを記憶装置200に保存したことを通知してもよい。その際、多重化部108は、記憶装置200に書き出したデータについて、他の情報処理装置100に、データの削除を依頼してもよい。つまり、多重化部108は、記憶装置200に書き出したデータの多重化をやめてもよい。この場合、他の情報処理装置100におけるキャッシュ107の使用可能容量が、増加する。なお、他の情報処理装置100において動作する仮想マシン101がそのデータを使用中の場合、他の情報処理装置100は、その仮想マシン101がデータの使用を終了するまで、キャッシュ107にデータを保存してもよい。
Further, when the data stored in the
多重化部108は、キャッシュ107に保存したデータの保存が必要なくなった場合(例えば、そのデータを使用したジョブ又はアプリケーションの終了)、データの保存を依頼した他の情報処理装置100に、保存したデータの削除を依頼する。他の情報処理装置100の多重化部108は、削除の依頼を受けたデータを削除する。ただしこの場合も、他の情報処理装置100において動作する仮想マシン101がそのデータを使用中の場合、他の情報処理装置100は、その仮想マシン101がデータの使用を終了するまで、キャッシュ107にデータを保存してもよい。
When the data stored in the
[動作の説明]
次に、第1の実施形態に係る情報処理装置100の動作について、図面を参照して説明する。
[Description of operation]
Next, the operation of the
図2は、第1の実施形態に係る仮想マシン101におけるデータの書き込み動作の一例を示すフロー図である。
FIG. 2 is a flowchart illustrating an example of a data write operation in the
仮想マシン101においてデータの書き込みが発生した場合、分類部103は、所定の分類ルール(例えば、図9に示されている分類ルール)に基づいて、データを、多重使用データ又は単独使用データに分類する(ステップS321)。
When data is written in the
データが多重使用データの場合(ステップS322でYes)、分類部103は、データに「多重使用データ」を示す分類結果を付与する(ステップS323)。
If the data is multi-use data (Yes in step S322), the
データが単独使用データの場合(ステップS322でNo)、分類部103は、データに「単独使用データ」を示す分類結果を付与する(ステップS324)。
If the data is single use data (No in step S322), the
分類部103が分類結果を付与するやり方は、限定されない。例えば、情報処理装置100は、仮想マシン101が仮想化基盤106に送信するデータにおいて未使用の領域に、分類結果として使用する領域(例えば、フラグ)を確保してもよい。あるいは、情報処理装置100は、データの形式を拡張して、新たな領域を追加してもよい。
The manner in which the
なお、仮想マシン101は、分類結果をデータに付与せず、別情報として動作してもよい。例えば、分類部103は、分類結果とデータとを仮想ディスクドライバ105に渡してもよい。
Note that the
仮想ディスクドライバ105は、仮想化基盤106に、分類結果とデータとを送信し、データの保存を依頼する(ステップS325)。
The
図3は、第1の実施形態に係るデータ保存部120におけるデータを保存する動作の一例を示すフロー図である。
FIG. 3 is a flowchart illustrating an example of an operation of storing data in the
仮想化基盤106のデータ保存部120は、仮想マシン101からデータの保存の依頼を受けると、データとともに送信された分類結果を確認する(ステップS331)。
When receiving the data storage request from the
分類結果が多重使用データの場合(ステップS332でYes)、データ保存部120は、データをキャッシュ107に保存する。
If the classification result is multiple use data (Yes in step S332), the
分類結果が単独使用データの場合(ステップS332でNo)、データ保存部120は、データを送受信キュー109に登録する(ステップS334)。
If the classification result is single use data (No in step S332), the
送受信キュー109は、登録されたデータを記憶装置200に保存する(ステップS335)。
The transmission /
図4は、第1の実施形態に係るキャッシュ107におけるデータを保存する動作の一例を示すフロー図である。図4に示されている動作において、キャッシュ107は、データの重複を回避する。キャッシュ107は、重複回避のため、ハッシュ値を用いる。なお、キャッシュ107は、重複回避のために別のやり方を用いてもよい。
FIG. 4 is a flowchart showing an example of an operation for storing data in the
キャッシュ107は、データ保存部120から保存するためのデータを受け取ると以下の動作を実行する(ステップS341)。
When the
キャッシュ107は、受信したデータが、既にキャッシュ107に保存済みのデータであるか否かを確認する(ステップS342)。より詳細には、キャッシュ107は、次のような確認を実行する。まず、キャッシュ107は、保存を依頼されたデータ(依頼データ)のハッシュ値を算出する。そして、キャッシュ107は、キャッシュ107に保存されているデータ(保存済みのデータ)のハッシュ値と、算出した依頼データのハッシュ値とを比較する。
The
データのハッシュ値が一致した場合、キャッシュ107は、保存済みのデータと依頼データと比較する。
When the hash values of the data match, the
保存済みデータと依頼データとが一致した場合、キャッシュ107は、保存済みデータがあると判定する。
If the saved data and the requested data match, the
ハッシュ値が一致しない場合又はデータが一致しない場合、キャッシュ107は、保存済みのデータがないと判定する。
If the hash values do not match or the data do not match, the
データが保存されている場合(ステップS342でYes)、キャッシュ107は、処理を終了する。なお、構造体のように、データが複数の内容を含み、キャッシュ107が一部の内容が一致した場合に一致と判定する場合、キャッシュ107は、受信したデータを用いて、保存済みのデータを更新する(ステップS343)。
If the data is stored (Yes in step S342), the
データが保存されていない場合(ステップS342でNo)、キャッシュ107は、データを保存できるか否かを確認する(ステップS344)。具体的には、キャッシュ107は、データを保存するための空き領域がキャッシュ107にあるか否かを確認する。
When data is not stored (No in step S342), the
保存する空き領域がない場合(ステップS344でNo)、キャッシュ107は、所定の手法に沿って、キャッシュ107に保存されているデータの一部を記憶装置200に書き出す(ステップS345)。キャッシュ107は、所定の手法として、LRU又はLFUなど、バックグラウンドで動作するキャッシュ・アルゴリズムと同じ手法を用いればよい。そして、キャッシュ107は、書き出したデータの領域を開放する。そして、キャッシュ107は、ステップS344に戻る。つまり、キャッシュ107は、受信したデータを保存できるまで、領域の開放を繰り返す。
If there is no free space to be stored (No in step S344), the
保存する空き領域がある場合(ステップS344でYes)、キャッシュ107は、受信したデータを保存する(ステップS346)。
If there is a free area to be saved (Yes in step S344), the
キャッシュ107は、適宜、保存するデータに関する管理情報を更新する。
The
なお、キャッシュ107が重複の回避を管理しない場合、キャッシュ107は、ステップS342及びステップS343を含まなくてもよい。
Note that if the
図8は、第1の実施形態に係るキャッシュ107が保存するデータを管理する情報の一例を示す図である。
FIG. 8 is a diagram illustrating an example of information for managing data stored in the
図8に示されている管理情報は、キャッシュ107が所定のデータのブロックを用いてデータを管理する場合の管理情報である。管理情報は、キャッシュ107に保存されてもよく、図示しない情報処理装置100における他のメモリに保存されてもよい。
The management information shown in FIG. 8 is management information when the
管理情報は、ブロック識別子と、依頼先識別子と、先頭アドレスとを含む。さらに、管理情報は、保存するデータに関する情報の組を少なくとも一つ含む。情報の組は、次アドレスと、データアドレスと、フラグと、依頼元識別子と、ハッシュ値とを含む。 The management information includes a block identifier, a request destination identifier, and a head address. Furthermore, the management information includes at least one set of information related to data to be stored. The set of information includes a next address, a data address, a flag, a request source identifier, and a hash value.
ただし、図8に示されている管理情報及び情報の組は、例示である。管理情報及び情報の組は、他の情報を含んでもよい。管理情報及び情報の組は、情報の一部を含まなくてもよい。管理情報及び情報の組は、キャッシュ107の管理のやり方に沿って決定される。
However, the management information and the set of information shown in FIG. 8 are examples. The set of management information and information may include other information. The set of management information and information may not include part of the information. Management information and a set of information are determined in accordance with the management method of the
ブロック識別子は、ブロックを一意に識別するための識別子(管理情報の識別子)である。ブロック識別子は、他の情報を含んでもよい。例えば、ブロックに種別がある場合、ブロック識別子は、種別を含んでもよい。 The block identifier is an identifier (management information identifier) for uniquely identifying a block. The block identifier may include other information. For example, when the block has a type, the block identifier may include the type.
依頼先識別子は、データを保存しているキャッシュ107を含む情報処理装置100の識別子である。他の情報処理装置100の多重化部108から多重化を依頼されたデータの場合、キャッシュ107を含む情報処理装置100は、依頼先となる。そのため、図8は、キャッシュ107を含む情報処理装置100の識別子を「依頼先識別子」と表現している。
The request destination identifier is an identifier of the
先頭アドレスは、最初の情報の組が保存されているアドレスである。なお、図8に示されている管理情報において、組の大きさは、一定である。そのため、先頭アドレスは、最初の組の開始アドレスを保持する。組の大きさが変化する場合、先頭アドレスは、最初の組の開始アドレスに加え、組に長さを含んでもよい。ただし、情報の組が、長さを含んでもよい。 The start address is an address where the first set of information is stored. In the management information shown in FIG. 8, the size of the set is constant. For this reason, the start address holds the start address of the first set. When the size of the set changes, the start address may include the length of the set in addition to the start address of the first set. However, the set of information may include a length.
次アドレスは、次の組のアドレスである。次アドレスは、先頭アドレスと同様に、組の長さを含んでもよい。 The next address is the next set of addresses. The next address may include the length of the set as with the head address.
次の組がない場合、次アドレスは、次の組がないことを示す情報(例えば、自分のアドレス、又は、ブランク)を保持する。 If there is no next set, the next address holds information indicating that there is no next set (for example, own address or blank).
データアドレスは、キャッシュ107におけるデータの保存アドレスである。
The data address is a data storage address in the
フラグは、キャッシュ107に保存されているデータが記憶装置200に保存されたか否かを示す情報である。仮想マシン101からの依頼を基にキャッシュ107に保存されたデータのフラグの初期状態は、「未保存」である。キャッシュ107に保存されたデータが記憶装置200に保存されると、フラグは、「未保存」から「保存済み」に変更される。なお、キャッシュ107に保存されたデータが記憶装置200から読み出したデータの場合、フラグの初期値は「保存済み」である。また、キャッシュ107において「保存済み」のデータを変更した場合、フラグは、「未保存」に変更される。
The flag is information indicating whether data saved in the
フラグは、キャッシュ107におけるデータと、記憶装置200におけるデータとが一致しているか否かを示す情報である。
The flag is information indicating whether the data in the
依頼元識別子は、データの保存を依頼した情報処理装置100の識別子である。自装置の仮想マシン101のデータの場合、依頼元識別子は、自装置の識別子となる。他の情報処理装置100の多重化部108から保存を依頼されたデータの場合、依頼元識別子は、依頼してきた情報処理装置100の識別子である。
The request source identifier is an identifier of the
依頼元識別子は、他の情報を含んでもよい。例えば、依頼元識別子は、情報処理装置100の識別子に加え、仮想マシン101の識別子を含んでもよい。
The request source identifier may include other information. For example, the request source identifier may include the identifier of the
ハッシュ値は、保存されているデータのハッシュ値である。 The hash value is a hash value of stored data.
図5は、第1の実施形態に係るキャッシュ107におけるデータの書き出しの動作の一例を示すフロー図である。
FIG. 5 is a flowchart showing an example of the data write operation in the
キャッシュ107は、バックグラウンドの動作として所定の周期、又は、所定のタイミングにおいて、次に説明する動作を実行する。さらに、キャッシュ107は、データ保存部120からデータの保存を依頼されたときに保存する領域がない場合にも、ステップS353以降の動作を実行して領域を確保する。
The
キャッシュ107は、キャッシュ107において領域の開放が必要か否かを確認する(ステップS351)。領域の開放が必要か否かの判定条件は、キャッシュ107を管理するやり方に沿って決定されればよい。例えば、開放が必要な場合とは、キャッシュ107の空き領域が、所定の閾値より少ない場合である。あるいは、開放が必要な場合とは、キャッシュ107に保存されているデータに対して、所定の時間を越えてアクセスがない場合である。
The
領域の開放が必要でない場合(ステップS352でNo)、キャッシュ107は、動作を終了する。
If it is not necessary to release the area (No in step S352), the
領域の開放が必要な場合(ステップS352でYes)、キャッシュ107は、記憶装置200に書き出すデータを選択する(ステップS353)。キャッシュ107は、所定のキャッシュ・アルゴリズム(例えば、LRU又はLFU)を用いてデータを選択する。
If the area needs to be released (Yes in step S352), the
キャッシュ107は、選択したデータを記憶装置200に書き出す。具体的には、キャッシュ107は、選択してデータを送受信キュー109に追加する(ステップS354)。
The
キャッシュ107は、データが送受信キュー109から記憶装置200に保存されると、選択したデータ(書き出したデータ)の領域を開放する(ステップS355)。なお、キャッシュ107は、データを送受信キュー109に追加したときに、領域を開放してもよい。
When the data is stored in the
なお、キャッシュ107は、適宜、キャッシュ107に保存するデータに関する管理情報を更新する。
Note that the
さらに、キャッシュ107は、送受信キュー109の状態を基づいて、動作を変更してもよい。
Further, the
例えば、キャッシュ107は、送受信キュー109に積まれたデータ量に応じて、送受信キュー109に追加するデータ量を変更してもよい。具体的には、キャッシュ107は、送受信キュー109に積まれたデータ量が所定の閾値より少ない場合に追加するデータ量を、送受信キュー109に積まれたデータ量がその閾値より多い場合に比べ、多くしてもよい。
For example, the
図6は、第1の実施形態に係る多重化部108における多重化の依頼を送信する動作の一例を示すフロー図である。
FIG. 6 is a flowchart illustrating an example of an operation of transmitting a multiplexing request in the
多重化部108は、データ保存部120において、多重使用データと分類されたデータがキャッシュ107に保存されたか否かを確認する(ステップS361)。ここにおけるデータの保存は、データの追加及びデータの更新を含む。
The
データが保存されていない場合(ステップS361でNo)、多重化部108は、処理を終了する。
If no data is stored (No in step S361), the
データが保存された場合(ステップS361でYes)、多重化部108は、他の情報処理装置100の多重化部108に、多重使用データと分類されてキャッシュ107に保存されたデータの保存を依頼する(ステップS362)。依頼の際、多重化部108は、データとともに情報処理装置100の識別子を送信する。
If the data has been saved (Yes in step S361), the
図7は、第1の実施形態に係る多重化部108における多重化の依頼を受信した際の動作の一例を示すフロー図である。
FIG. 7 is a flowchart illustrating an example of an operation when a multiplexing request is received in the
多重化部108は、他の情報処理装置100の多重化部108から依頼を受信する(ステップS371)。
The
その依頼を基に、多重化部108は、データをキャッシュ107に保存する(ステップS372)。多重化部108は、データとともに受け取った他の情報処理装置100の識別子をデータと関連付けて保存する。
Based on the request, the
なお、情報処理装置100は、信頼性を向上させるため、他の情報処理装置100から受け取りキャッシュ107に保存したデータを記憶装置200にも保存してよい。なお、保存を依頼した情報処理装置100においてデータの多重化が不要となった場合、多重化部108は、他の情報処理装置100から保存を依頼されたデータを、キャッシュ107(及び、記憶装置200)から削除する。
Note that the
[効果の説明]
次に第1の実施形態に係る情報処理装置100に効果を説明する。
[Description of effects]
Next, effects of the
第1の実施形態に係る情報処理装置100は、記憶装置200への同時並行的なアクセスの発生を低減するとの効果を得ることができる。
The
その理由は、次のとおりである。 The reason is as follows.
情報処理装置100は、記憶装置200に接続されている。情報処理装置100は、仮想マシン101と、仮想化基盤106とを含む。仮想マシン101は、分類部103を含む。分類部103は、データを、複数の仮想マシン101が使用する多重使用データ、又は、一の仮想マシン101が使用する単独使用データに分類する。仮想化基盤106は、キャッシュ107と、データ保存部120とを含む。キャッシュ107は、データを保存する。データ保存部120は、多重使用データの場合にデータをキャッシュ107に保存し、単独使用データの場合にデータを記憶装置200に保存する。
The
仮想マシン101は、さらに、仮想ディスクドライバ105を含む。仮想ディスクドライバ105は、データを仲介する。具体的には、仮想ディスクドライバ105は、分類の結果とデータとを仮想化基盤106に送信する。
The
仮想化基盤106は、さらに、送受信キュー109を含む。送受信キュー109は、データを記憶装置200に送信する。具体的には、送受信キュー109は、記憶装置200に同期してデータを送信する。
The
データ保存部120は、分類部103の分類結果を基に、複数の仮想マシン101からアクセスされるデータ(多重使用データ)をキャッシュ107に保存する。そのため、複数の仮想マシン101からそのデータへのアクセスは、キャッシュ107へのアクセスとなる。その結果、記憶装置200への同時並行的なアクセスの発生は、低減される。
The
さらに、情報処理装置100は、キャッシュ107に保存されたデータの信頼性を向上するとの効果を奏する。
Further, the
その理由は、多重化部108が、他の情報処理装置100に、キャッシュ107に保存されたデータの保存を依頼するためである。
The reason is that the
さらに、他の情報処理装置100は、上記の多重化部108の動作を基にデータをキャッシュ107に保存する。そのため、他の情報処理装置100におけるそのデータへのアクセスは、記憶装置200へのアクセスではなく、他の情報処理装置100のキャッシュ107へのアクセスとなる。その結果、情報処理装置100は、さらに記憶装置200へのアクセスを低減するとの効果を奏することができる。
Further, the other
また、データ保存部120は、複数の仮想マシン101からアクセスされるデータをキャッシュ107に保存する。データ保存部120は、一つの仮想マシン101からアクセスされるデータを記憶装置200に保存する。そのため、仮想マシン101の全てのデータをキャッシュ107に保存する場合に比べ、情報処理装置100は、キャッシュ107において必要される容量を削減できる。
In addition, the
[実施形態の概要]
ここまで説明した仮想マシン101及び仮想化基盤106に含まれる構成の位置は、一例である。これらの構成の位置は、変更となってもよい。例えば、データ保存部120は、各仮想マシン101に含まれていてもよい。
[Outline of Embodiment]
The positions of the configurations included in the
図面を参照して第1の実施形態に係る情報処理装置100の概要を説明する。
An overview of the
図10は、第1の実施形態に係る情報処理装置100の概要の一例である情報処理装置150の構成を示すブロック図である。
FIG. 10 is a block diagram illustrating a configuration of an
情報処理装置150は、記憶装置200に接続されている。情報処理装置150は、キャッシュ107と、分類部103と、データ保存部120とを含む。キャッシュ107は、データを保存する。分類部103は、データを、複数の仮想マシン101が使用する多重使用データ、又は、一の仮想マシン101が使用する単独使用データに分類する。データ保存部120は、多重使用データの場合にデータをキャッシュ107に保存し、単独使用データの場合にデータを記憶装置200に保存する。
The
このように構成された情報処理装置150は、情報処理装置100と同様の効果を得ることができる。
The
その理由は、情報処理装置150の各構成が、情報処理装置100の構成と同様に動作するためである。
The reason is that each configuration of the
なお、情報処理装置150は、本発明の実施形態における最小構成である。
The
[ハードウェア構成]
次に、情報処理装置100及び150のハードウェア構成について、情報処理装置100を用いて説明する。
[Hardware configuration]
Next, the hardware configuration of the
例えば、情報処理装置100の各構成部は、ハードウェア回路で構成されてもよい。
For example, each component of the
あるいは、情報処理装置100において、各構成部は、ネットワークを介して接続した複数の装置を用いて、構成されてもよい。
Alternatively, in the
あるいは、情報処理装置100において、複数の構成部は、1つのハードウェアで構成されてもよい。
Alternatively, in the
あるいは、情報処理装置100は、プロセッサと、メモリとを含むコンピュータ装置として実現されてもよい。プロセッサは、例えば、Central Processing Unit(CPU)、又は、Micro Processing Unit(MPU)である。メモリは、例えば、Read Only Memory(ROM)と、Random Access Memory(RAM)である。
Alternatively, the
情報処理装置100は、上記構成に加え、さらに、入出力接続回路(IOC:Input and Output Circuit)を含むコンピュータ装置として実現されてもよい。情報処理装置100は、上記構成に加え、さらに、ネットワークインターフェース回路(NIC:Network Interface Circuit)を含むコンピュータ装置として実現されてもよい。
In addition to the above configuration, the
図11は、第1の実施形態に係る情報処理装置100のハードウェア構成の一例である情報処理装置600の構成を示すブロック図である。
FIG. 11 is a block diagram illustrating a configuration of an
情報処理装置600は、CPU610と、ROM620と、RAM630と、内部記憶装置640と、IOC650と、NIC680とを含み、コンピュータ装置を構成している。
The
CPU610は、ROM620からプログラムを読み込む。そして、CPU610は、読み込んだプログラムに基づいて、RAM630と、内部記憶装置640と、IOC650と、NIC680とを制御する。そして、CPU610を含むコンピュータは、これらの構成を制御し、図1に示されている、仮想マシン101と、仮想化基盤106としての各機能を実現する。
The
CPU610は、各機能を実現する際に、RAM630又は内部記憶装置640を、プログラムの一時記憶媒体として使用してもよい。
When realizing each function, the
また、CPU610は、コンピュータで読み取り可能にプログラムを記憶した記憶媒体700が含むプログラムを、図示しない記憶媒体読み取り装置を用いて読み込んでもよい。あるいは、CPU610は、NIC680を介して、図示しない外部の装置からプログラムを受け取り、RAM630又は内部記憶装置640に保存して、保存したプログラムを基に動作してもよい。
The
ROM620は、CPU610が実行するプログラム及び固定的なデータを記憶する。ROM620は、例えば、P−ROM(Programmable−ROM)又はフラッシュROMである。
The
RAM630は、CPU610が実行するプログラム及びデータを一時的に記憶する。RAM630は、例えば、D−RAM(Synamic−RAM)である。RAM630の一部は、キャッシュ107として動作する。
The
内部記憶装置640は、情報処理装置600が長期的に保存するデータ及びプログラムを記憶する。また、内部記憶装置640は、CPU610の一時記憶装置として動作してもよい。内部記憶装置640は、例えば、ハードディスク装置、光磁気ディスク装置、SSD又はディスクアレイ装置である。
The
ここで、ROM620と内部記憶装置640は、不揮発性(non−transitory)の記憶媒体である。一方、RAM630は、揮発性(transitory)の記憶媒体である。そして、CPU610は、ROM620、内部記憶装置640、又は、RAM630に記憶されているプログラムを基に動作可能である。つまり、CPU610は、不揮発性記憶媒体又は揮発性記憶媒体を用いて動作可能である。
Here, the
IOC650は、CPU610と、入力機器660及び表示機器670とのデータを仲介する。IOC650は、例えば、IOインターフェースカード又はUSB(Universal Serial Bus)カードである。さらに、IOC650は、USBのような有線に限らず、無線を用いてもよい。
The
入力機器660は、情報処理装置600の操作者からの入力指示を受け取る機器である。入力機器660は、例えば、キーボード、マウス又はタッチパネルである。
The
表示機器670は、情報処理装置600の操作者に情報を表示する機器である。表示機器670は、例えば、液晶ディスプレイである。
The
NIC680は、ネットワークを介した、図示しない外部の装置とのデータのやり取りを中継する。NIC680は、例えば、LANカードである。さらに、NIC680は、有線に限らず、無線を用いてもよい。NIC680は、送受信キュー109の一部として動作してもよい。
The
このように構成された情報処理装置600は、情報処理装置100と同様の効果を得ることができる。
The
その理由は、情報処理装置600のCPU610が、プログラムに基づいて情報処理装置100における各構成と同様の機能を実現できるためである。
The reason is that the
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成及び詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 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.
本発明は、仮想マシン、及び/又は仮想デスクトップなどを用いる情報処理装置において利用可能である。 The present invention can be used in an information processing apparatus using a virtual machine and / or a virtual desktop.
10 情報処理システム
100 情報処理装置
101 仮想マシン
103 分類部
105 仮想ディスクドライバ
106 仮想化基盤
107 キャッシュ
108 多重化部
109 送受信キュー
120 データ保存部
150 情報処理装置
200 記憶装置
400 ネットワーク
600 情報処理装置
610 CPU
620 ROM
630 RAM
640 内部記憶装置
650 IOC
660 入力機器
670 表示機器
680 NIC
700 記憶媒体
DESCRIPTION OF
620 ROM
630 RAM
640
660
700 storage media
Claims (10)
データを保存するキャッシュと、
前記データを、複数の仮想マシンが使用する多重使用データ、又は、一の前記仮想マシンが使用する単独使用データに分類する分類手段と、
前記多重使用データの場合に前記データを前記キャッシュに保存し、前記単独使用データの場合に前記データを前記記憶装置に保存するデータ保存手段と
を含む
情報処理装置。 Connected to the storage device,
A cache to store data,
Classifying means for classifying the data into multiple use data used by a plurality of virtual machines or single use data used by one virtual machine;
A data storage unit that stores the data in the cache in the case of the multiple use data, and stores the data in the storage device in the case of the single use data.
前記仮想マシンを動作させる仮想化基盤と
を備え、
前記仮想マシンが、
前記分類手段と、
分類した結果と前記データとを前記仮想化基盤に送信するデータ仲介手段と
を含み、
前記仮想化基盤が、
前記キャッシュと、
前記記憶装置に前記データを送信するデータ送信手段と
を含み、
前記データ保存手段が、前記結果が前記単独使用データの場合に前記データ送信手段を用いて前記データを前記記憶装置に保存する
請求項1に記載の情報処理装置。 The virtual machine;
A virtualization platform for operating the virtual machine,
The virtual machine is
The classification means;
Data mediating means for transmitting the classified result and the data to the virtualization platform,
The virtualization infrastructure is
The cache;
Data transmitting means for transmitting the data to the storage device,
The information processing apparatus according to claim 1, wherein the data storage unit stores the data in the storage device using the data transmission unit when the result is the single use data.
前記キャッシュに前記データを保存した場合、他の情報処理装置に、前記データの保存を依頼し、
他の情報処理装置から前記データの保存を依頼された場合、依頼された前記データを前記キャッシュに保存する
多重化手段をさらに含む請求項2に記載の情報処理装置。 The virtualization infrastructure is
When the data is stored in the cache, the other information processing device is requested to store the data,
The information processing apparatus according to claim 2, further comprising: a multiplexing unit that stores the requested data in the cache when the other data processing apparatus requests the storage of the data.
前記記憶装置と、
前記情報処理装置を前記記憶装置に接続するネットワークと
を含む情報処理システム。 The information processing apparatus according to any one of claims 1 to 3,
The storage device;
An information processing system comprising: a network connecting the information processing device to the storage device.
データを保存するキャッシュを含む情報処理装置が、
前記データを、複数の仮想マシンが使用する多重使用データ、又は、一の前記仮想マシンが使用する単独使用データに分類し、
前記多重使用データの場合に前記データを前記キャッシュに保存し、前記単独使用データの場合に前記データを前記記憶装置に保存する
情報処理方法。 Connected to the storage device,
An information processing apparatus including a cache for storing data is
The data is classified into multiple use data used by a plurality of virtual machines or single use data used by one virtual machine,
An information processing method, wherein the data is stored in the cache in the case of the multiple use data, and the data is stored in the storage device in the case of the single use data.
前記仮想マシンを動作させる仮想化基盤と
を備え、
前記仮想マシンが、
前記データを、前記多重使用データ、又は、前記単独使用データに分類し、
分類した結果と前記データとを前記仮想化基盤に送信し、
前記仮想化基盤が、
前記キャッシュを含み、
前記多重使用データの場合に前記データを前記キャッシュに保存し、前記単独使用データの場合に前記データを前記記憶装置に保存する
請求項5に記載の情報処理方法。 The virtual machine;
A virtualization platform for operating the virtual machine,
The virtual machine is
Classifying the data into the multiple use data or the single use data;
Send the classification result and the data to the virtualization platform,
The virtualization infrastructure is
Including the cache;
The information processing method according to claim 5, wherein the data is stored in the cache in the case of the multiple use data, and the data is stored in the storage device in the case of the single use data.
前記キャッシュに前記データを保存した場合、他の情報処理装置に、前記データの保存を依頼し、
他の情報処理装置から前記データの保存を依頼された場合、依頼された前記データを前記キャッシュに保存する
請求項6に記載の情報処理方法。 The virtualization infrastructure is
When the data is stored in the cache, the other information processing device is requested to store the data,
The information processing method according to claim 6, wherein when requested to save the data from another information processing apparatus, the requested data is saved in the cache.
データを保存するキャッシュを含むコンピュータに、
前記データを、複数の仮想マシンが使用する多重使用データ、又は、一の前記仮想マシンが使用する単独使用データに分類する処理と、
前記多重使用データの場合に前記データを前記キャッシュに保存し、前記単独使用データの場合に前記データを前記記憶装置に保存する処理と
を実行させるプログラム。 Connected to the storage device,
On the computer that contains the cache that stores the data,
A process of classifying the data into multiple use data used by a plurality of virtual machines or single use data used by one virtual machine;
A program for storing the data in the cache in the case of the multi-use data and for storing the data in the storage device in the case of the single use data.
前記仮想マシンを動作させる仮想化基盤としての処理と
を備え、
前記仮想マシンとしての処理が、
前記データを、前記多重使用データ、又は、前記単独使用データに分類する処理と、
分類した結果と前記データとを前記仮想化基盤に送信する処理と、
を含み、
前記仮想化基盤としての処理が、
前記キャッシュとしての処理と、
前記多重使用データの場合に前記データを前記キャッシュに保存し、前記単独使用データの場合に前記データを前記記憶装置に保存する処理と
を含む請求項8に記載のプログラム。 Processing as the virtual machine;
And a process as a virtualization platform for operating the virtual machine,
The process as the virtual machine is
A process of classifying the data into the multiple use data or the single use data;
Processing for transmitting the classified result and the data to the virtualization platform;
Including
The process as the virtualization platform is
Processing as the cache;
The program according to claim 8, further comprising: storing the data in the cache in the case of the multiple use data, and storing the data in the storage device in the case of the single use data.
前記キャッシュに前記データを保存した場合、他の情報処理装置に、前記データの保存を依頼する処理と、
他の情報処理装置から前記データの保存を依頼された場合、依頼された前記データを前記キャッシュに保存する
請求項9に記載のプログラム。 The process as the virtualization platform is
When the data is stored in the cache, a process for requesting the other information processing apparatus to store the data;
The program according to claim 9, wherein when requested to save the data from another information processing apparatus, the requested data is saved in the cache.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018029587A JP7110615B2 (en) | 2018-02-22 | 2018-02-22 | Information processing device, information processing system, information processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018029587A JP7110615B2 (en) | 2018-02-22 | 2018-02-22 | Information processing device, information processing system, information processing method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019144932A true JP2019144932A (en) | 2019-08-29 |
JP7110615B2 JP7110615B2 (en) | 2022-08-02 |
Family
ID=67772485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018029587A Active JP7110615B2 (en) | 2018-02-22 | 2018-02-22 | Information processing device, information processing system, information processing method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7110615B2 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0683782A (en) * | 1992-03-30 | 1994-03-25 | Internatl Business Mach Corp <Ibm> | Method of data processing control and computer system |
JPH09259042A (en) * | 1996-03-25 | 1997-10-03 | Hitachi Ltd | Method and device for memory management |
JP2012527704A (en) * | 2009-05-19 | 2012-11-08 | ヴイエムウェア インク | Shortcut I / O in virtual machine system |
US20170003999A1 (en) * | 2015-06-30 | 2017-01-05 | Symantec Corporation | Data access accelerator |
-
2018
- 2018-02-22 JP JP2018029587A patent/JP7110615B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0683782A (en) * | 1992-03-30 | 1994-03-25 | Internatl Business Mach Corp <Ibm> | Method of data processing control and computer system |
JPH09259042A (en) * | 1996-03-25 | 1997-10-03 | Hitachi Ltd | Method and device for memory management |
JP2012527704A (en) * | 2009-05-19 | 2012-11-08 | ヴイエムウェア インク | Shortcut I / O in virtual machine system |
US20170003999A1 (en) * | 2015-06-30 | 2017-01-05 | Symantec Corporation | Data access accelerator |
Also Published As
Publication number | Publication date |
---|---|
JP7110615B2 (en) | 2022-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10579364B2 (en) | Upgrading bundled applications in a distributed computing system | |
US10552337B2 (en) | Memory management and device | |
US10496613B2 (en) | Method for processing input/output request, host, server, and virtual machine | |
US10838829B2 (en) | Method and apparatus for loading data from a mirror server and a non-transitory computer readable storage medium | |
WO2019237791A1 (en) | Virtualized cache implementation method and physical machine | |
US20180307535A1 (en) | Computer system and method for controlling computer | |
US20140012940A1 (en) | Systems, Methods and Apparatus for a Virtual Machine Cache | |
EP3885903A1 (en) | Cloud desktop upgrade method, device, cloud server, and storage medium | |
KR20120068454A (en) | Apparatus for processing remote page fault and method thereof | |
US20150220481A1 (en) | Arithmetic processing apparatus, information processing apparatus, and control method of arithmetic processing apparatus | |
JP2019057151A (en) | Memory system and control method | |
US9021208B2 (en) | Information processing device, memory management method, and computer-readable recording medium | |
WO2015118865A1 (en) | Information processing device, information processing system, and data access method | |
US20190340120A1 (en) | Method, apparatus for data management, and non-transitory computer-readable storage medium for storing program | |
WO2017126003A1 (en) | Computer system including plurality of types of memory devices, and method therefor | |
US11675545B2 (en) | Distributed storage system and storage control method | |
CN107832097B (en) | Data loading method and device | |
JP6311365B2 (en) | Storage area management device, storage area management method, and storage area management program | |
JPWO2008149657A1 (en) | I / O control system, I / O control method, and I / O control program | |
US10430287B2 (en) | Computer | |
JP2013015990A (en) | Information processing system, information processing program and information processing method | |
JP7110615B2 (en) | Information processing device, information processing system, information processing method, and program | |
US10824640B1 (en) | Framework for scheduling concurrent replication cycles | |
US9594701B2 (en) | Information processing apparatus, information processing method, and non-transitory computer readable medium | |
CN114185815A (en) | Method, equipment and system for realizing memory key value storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210115 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20211020 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20211227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220104 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220204 |
|
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: 20220621 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220704 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7110615 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |