JP2002099465A - Cache control method - Google Patents
Cache control methodInfo
- Publication number
- JP2002099465A JP2002099465A JP2000295441A JP2000295441A JP2002099465A JP 2002099465 A JP2002099465 A JP 2002099465A JP 2000295441 A JP2000295441 A JP 2000295441A JP 2000295441 A JP2000295441 A JP 2000295441A JP 2002099465 A JP2002099465 A JP 2002099465A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- file
- data
- management table
- monitor management
- 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.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【課題】階層化されたキャッシュ領域を効率的に利用す
ることで、データベースシステムの応答時間の向上、な
らびにスループットの向上を図る。
【解決手段】階層化されたキャッシュ領域を有する計算
機システムにおいて、データのアクセス特性に応じて、
ファイル単位に、利用するキャッシュ領域を決定する。
(57) [Summary] [PROBLEMS] To improve the response time and throughput of a database system by efficiently using a hierarchical cache area. In a computer system having a hierarchical cache area, according to data access characteristics,
The cache area to be used is determined for each file.
Description
【0001】[0001]
【発明の属する技術分野】本発明は、大量のデータを保
持する計算機システム上で、頻繁にアクセスするデータ
への高速アクセスを実現するために用意したキャッシュ
領域の制御方法に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for controlling a cache area prepared for realizing high-speed access to frequently accessed data on a computer system holding a large amount of data.
【0002】[0002]
【従来の技術】基幹計算機システム等で取り扱うデータ
量ならびに処理量が、年々増加の一途を辿っている。2. Description of the Related Art The amount of data and the amount of processing handled by a backbone computer system and the like are increasing year by year.
【0003】一般に、データベースシステムでは、応答
性能やスループットの向上を図るために、計算機ノード
上に、ワークエリアを確保し、その領域に頻繁にアクセ
スするデータを配置すること(以降、キャッシングと呼
ぶ)で、データが格納されている外部記憶装置へのアク
セス回数を削減する工夫をしている。In general, in a database system, in order to improve response performance and throughput, a work area is secured on a computer node and frequently accessed data is arranged in the area (hereinafter, referred to as caching). In order to reduce the number of accesses to the external storage device in which data is stored.
【0004】その一つの例として、特開平11−110
270号公報を挙げることができる。特開平11−11
0270号では、キャッシュメモリを有効に活用して、
多数のファイルを取り扱うことを可能にするファイル管
理システムおよびファイル管理方法を開示している。As one example, Japanese Patent Application Laid-Open No. H11-110
No. 270 can be mentioned. JP-A-11-11
In No. 0270, use the cache memory effectively,
Disclosed is a file management system and a file management method that can handle a large number of files.
【0005】また、外部記憶装置上においても、特開2
000−172449号公報や、特開2000−181
798号公報に開示されているようなディスクキャッシ
ュ装置とよばれる半導体記憶装置を用いて、データのキ
ャッシングを行い、アクセス時間の短縮を図っている。[0005] Further, on an external storage device, Japanese Patent Laid-Open No.
000-172449 and JP-A-2000-181.
Data caching is performed using a semiconductor memory device called a disk cache device as disclosed in Japanese Patent Publication No. 798 to shorten the access time.
【0006】こうした入出力時間の削減によって、処理
性能の向上を図る工夫がなされている一方で、複数の計
算機ノードを用いて、パラレルにデータの検索処理を実
施する形態も出現している。While measures have been devised to improve processing performance by reducing the input / output time, there has also emerged an embodiment in which data retrieval processing is performed in parallel using a plurality of computer nodes.
【0007】このような形態では、計算機ノード間で共
用するデータへのアクセスの高速化を図るために、特開
平5−88966号公報に記されているように、計算機
ノード間の共用デバイスとして拡張記憶装置を利用し
て、計算機ノード間で共用するデータをキャッシングす
る方法が開示されている。In such an embodiment, in order to speed up access to data shared between computer nodes, as described in Japanese Patent Laid-Open Publication No. Hei 5-88966, it is extended as a shared device between computer nodes. A method of caching data shared between computer nodes using a storage device is disclosed.
【0008】[0008]
【発明が解決しようとする課題】しかし、一つの計算機
ノードが複数のキャッシュを使い分けるケースにおいて
は、同一のデータを、重複して複数のキャッシュ領域に
ステージングしてしまい、キャッシュ領域の利用効率を
低下させるという問題点がある。However, in the case where one computer node uses a plurality of caches, the same data is redundantly staged in a plurality of cache areas, and the use efficiency of the cache area is reduced. There is a problem to make it.
【0009】例えば、実記憶装置上に配置したキャッシ
ュ(以降、メモリキャッシュと呼ぶ)と、ディスク装置
が用意しているキャッシュ(以降、ディスクキャッシュ
と呼ぶ)とが具備されたシステムにおいて、特に、参照
更新を頻繁に繰り返すようなデータは、メモリキャッシ
ュとディスクキャッシュの各々に配置される可能性が大
きく、キャッシュ領域の利用効率の低下を招く。For example, in a system provided with a cache arranged on a real storage device (hereinafter referred to as a memory cache) and a cache prepared by a disk device (hereinafter referred to as a disk cache), in particular, refer to Data that is frequently updated is more likely to be placed in each of the memory cache and the disk cache, which causes a decrease in the use efficiency of the cache area.
【0010】このようなケースでは、再参照性が高く、
かつ参照頻度が更新頻度よりも高いデータをメモリキャ
ッシュに配置し、上述したような参照更新を頻繁に繰り
返すようなデータは、ディスクキャッシュに配置した方
が効率的である。[0010] In such a case, re-referencing is high,
In addition, it is more efficient to arrange data in which the reference frequency is higher than the update frequency in the memory cache, and to arrange the data in which the above-mentioned reference update is frequently repeated, in the disk cache.
【0011】さらに、複数の計算機ノードを用いて、パ
ラレルにデータ検索処理を行う場合においては、上記キ
ャッシング領域の利用方法について、以下に記述するよ
うな問題点が生ずる。Further, in the case of performing data search processing in parallel using a plurality of computer nodes, the following problem arises in the use of the caching area.
【0012】まず、実記憶装置上に配置したキャッシュ
(以降、メモリキャッシュと呼ぶ)は、各計算機ノード
上に配置されることになる。よって、同一のデータが、
複数のメモリキャッシュに配置される可能性がある。そ
のため、ある計算機ノードでデータの更新をした時に、
データの整合性を保証するために、その計算機ノードは
他の計算機ノードに対して、更新した旨、通知する処理
をしなければならない。また、その通知を受けた他の計
算機ノードのメモリキャッシュに、更新されたデータを
保持していた場合は、そのデータを無効化する手続きを
とらなければならない。First, a cache (hereinafter referred to as a memory cache) arranged on a real storage device is arranged on each computer node. Therefore, the same data
It may be located in multiple memory caches. Therefore, when data is updated on a certain computer node,
In order to guarantee data consistency, the computer node must perform a process of notifying other computer nodes of the update. If the updated data is stored in the memory cache of another computer node that has received the notification, a procedure for invalidating the data must be taken.
【0013】よって、計算機ノードが増加するにつれ、
上述したようなデータ更新が発生した時に必要となる、
データ更新の通知処理ならびに、データの無効化処理の
オーバヘッドが大きくなるという問題点が生ずる。Therefore, as the number of computer nodes increases,
It is necessary when data update as described above occurs,
There is a problem that the overhead of the data update notification process and the data invalidation process increases.
【0014】一方、ディスクキャッシュの場合は、オリ
ジナルなデータが格納された外部記憶装置に対応して用
意される。そのため、データが複数のキャッシュに配置
されるということはない。よって、データの更新に付随
して実行しなければならないという処理はない。On the other hand, in the case of a disk cache, it is prepared corresponding to an external storage device in which original data is stored. Therefore, data is not allocated to a plurality of caches. Therefore, there is no processing that must be executed in conjunction with updating of data.
【0015】しかし、ディスクキャッシュは、メモリキ
ャッシュに比べ処理時間を要するという問題点がある。
例えば、データベースシステムの入力要求に対しては、
オペレーティングシステムが実入力動作を実行させるた
めの手続き処理を行ったあと、実入力動作が開始され、
その処理の中で対象となるデータがディスクキャッシュ
上に存在した場合に、初めてキャッシュヒットとなり、
アクセスできることになる。However, there is a problem that the disk cache requires more processing time than the memory cache.
For example, for the input request of the database system,
After the operating system performs a procedural process for executing the actual input operation, the actual input operation is started,
If the target data exists in the disk cache during the process, a cache hit occurs for the first time,
You will be able to access it.
【0016】上述したように、メモリキャッシュやディ
スクキャッシュには一長一短がある。その他、メモリキ
ャッシュとディスクキャッシュ、さらには拡張記憶装置
に設けたキャッシュ等、複数のキャッシュを組み合わせ
て、データベース処理を行うようなケースでは、各キャ
ッシュが独自にキャッシュ上に配置するデータの制御を
行っていると、同一のデータが複数のキャッシュに重複
して格納される可能性がある。そのため、キャッシュの
利用効率が大幅に低減するという問題点も生ずる。As described above, the memory cache and the disk cache have advantages and disadvantages. In addition, in a case where database processing is performed by combining a plurality of caches such as a memory cache and a disk cache, and a cache provided in an extended storage device, each cache independently controls data to be arranged on the cache. In such a case, there is a possibility that the same data is redundantly stored in a plurality of caches. Therefore, there is also a problem that the use efficiency of the cache is greatly reduced.
【0017】本発明の目的は、上述されたような階層化
されたキャッシュ領域を効率的に利用することで、デー
タベースシステムの応答時間の向上、ならびにスループ
ットの向上を図ることにある。An object of the present invention is to improve the response time and the throughput of the database system by efficiently using the above-described hierarchical cache area.
【0018】[0018]
【課題を解決するための手段】上記課題を解決するため
に、一つの計算機ノードが、階層化された2つ以上のキ
ャッシュ領域を有し、当該計算機ノードで動作するプロ
グラムがアクセスするデータを、当該各キャッシュ領域
に配置するキャッシュ制御方法において、当該各キャッ
シュ領域に配置するデータが属するファイル識別子を登
録するステップと、当該各キャッシュ領域を利用するフ
ァイルの参照処理の更新処理との割合を目標値としてあ
らかじめ定めるステップと、当該各キャッシュ領域に配
置された上記ファイルの上記データに対して、当該ファ
イル単位に、参照要求と更新要求の回数をモニタリング
するステップと、当該モニタリングするステップにより
選られた当該参照要求と当該更新要求の回数の割合が、
上記目標値を満足していないファイルに属するデータが
格納された領域を、当該ファイル以外のデータをキャッ
シングする領域として利用するステップとを設ける。In order to solve the above problems, one computer node has two or more hierarchized cache areas, and stores data accessed by a program operating on the computer node. In the cache control method for allocating to each of the cache areas, the ratio between the step of registering the file identifier to which the data to be allocated to each of the cache areas belongs and the update processing of the reference processing of the file using each of the cache areas is set to the target value And a step of monitoring the number of reference requests and update requests for the data of the file arranged in each cache area for each file in the file unit. The ratio between the number of reference requests and the number of update requests is
Using an area storing data belonging to a file that does not satisfy the target value as an area for caching data other than the file.
【0019】複数の計算機ノードで構成された計算機シ
ステムにおいても、同様なステップを設けることで解決
する。In a computer system constituted by a plurality of computer nodes, the problem is solved by providing similar steps.
【0020】[0020]
【発明の実施の形態】図1から図7を用いて、本発明の
実施の形態を説明する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described with reference to FIGS.
【0021】図1は、第1の実施の形態を表す構成図で
ある。FIG. 1 is a configuration diagram showing the first embodiment.
【0022】100は計算機を表し、中央処理装置(C
PU)200と、主記憶装置(MS)300で構成され
る。Reference numeral 100 denotes a computer, and a central processing unit (C)
PU) 200 and a main storage device (MS) 300.
【0023】MS100上には、ユーザプログラム40
0とMSキャッシュ用モニタ処理500、MSキャッシ
ュ用モニタ管理テーブル600、MSキャッシュ処理1
300、ならびにMSキャッシュから構成される。On the MS 100, a user program 40
0, MS cache monitor processing 500, MS cache monitor management table 600, MS cache processing 1
300 and an MS cache.
【0024】そして、外部記憶装置の駆動を制御するデ
ィスク制御装置1700が、計算機100に接続され、
ディスク制御装置1700は、ディスク1800の動作
を制御している。ディスク制御装置1700には、ディ
スクキャッシュ1750が装備され、データの入出力操
作が行われる度に、データのキャッシングを行い、再参
照時の応答時間の短縮を図っている。このディスクキャ
ッシュ1750に配置されるデータは、FIFO(Fi
rst In First Out)、もしくはLRU
(Least Recently Used)の制御に
従い、データのステージングやデステージングを行って
いる。A disk controller 1700 for controlling the driving of the external storage device is connected to the computer 100,
The disk control device 1700 controls the operation of the disk 1800. The disk control device 1700 is provided with a disk cache 1750, which caches data every time an input / output operation of data is performed, thereby shortening the response time at the time of re-reference. The data arranged in the disk cache 1750 is stored in a FIFO (Fi
rst In First Out) or LRU
(Least Recently Used), and performs data staging and destaging.
【0025】また、ディスク1800には、ユーザプロ
グラム群400が、動作中にアクセスするファイルA1
810やファイルB1820など、多くのファイルが配
置されている。The disk 1800 stores a file A1 accessed by the user program group 400 during operation.
Many files such as 810 and file B1820 are arranged.
【0026】ユーザプログラム群400が、動作中に入
出力要求(GET/PUT)を発行すると、MSキャッ
シュ処理1300に制御が渡る。MSキャッシュ処理1
300は、特開平11−110270号公報に開示され
ているように、MS300上に、MSキャッシュを用意
し、データをキャッシングすることで、実入出力動作を
削減するものである。本発明の実施の形態では、ファイ
ル単位に、キャッシュへの常駐化ならびに、常駐化の解
除を行えるものとする。When the user program group 400 issues an input / output request (GET / PUT) during operation, control passes to the MS cache processing 1300. MS cache processing 1
As disclosed in Japanese Patent Application Laid-Open No. H11-110270, an MS cache is prepared on the MS 300 and data is cached to reduce actual input / output operations. In the embodiment of the present invention, resident in the cache and release of resident can be performed in file units.
【0027】そして、ユーザプログラム400から、入
出力要求を受ける度に、MSキャッシュ処理1300
は、MSキャッシュ用モニタ処理500を呼び出す。M
Sキャッシュ用モニタ処理500は、ユーザプログラム
400からのファイルへのアクセス状況をモニタリング
し、予め定められた基準を満足しているか否かを判断
し、MSキャッシュ1400へのファイル単位でのデー
タのステージングやデステージングをMSキャッシュ処
理1300に指示する。指示を受けたMSキャッシュ処
理は、その指示に従い、ファイル単位でのMSキャッシ
ュへのステージングやデステージングを行う。Each time an input / output request is received from the user program 400, the MS cache processing 1300 is executed.
Calls the monitoring process 500 for the MS cache. M
The S cache monitoring process 500 monitors the access status of the file from the user program 400, determines whether or not a predetermined criterion is satisfied, and staging of the data to the MS cache 1400 in file units. And destaging to the MS cache processing 1300. The MS cache process that has received the instruction performs staging and destaging to the MS cache in file units according to the instruction.
【0028】図2は、MSキャッシュ用モニタ管理テー
ブル600の構成図である。MSキャッシュ用モニタ管
理テーブル600には、MSキャッシュ1400にデー
タをキャッシングするファイルの名称や、ファイル毎の
アクセス状況、ならびにファイル毎のデータをキャッシ
ングする条件を格納している。FIG. 2 is a configuration diagram of the monitor management table 600 for MS cache. The MS cache monitor management table 600 stores the name of the file whose data is to be cached in the MS cache 1400, the access status of each file, and the conditions for caching the data of each file.
【0029】ここで、データをキャッシングするファイ
ルの名称やデータをキャッシングする条件は、計算機シ
ステムのシステムパラメタに予め定義されている。そし
て、システム立ち上げ時に、MSキャッシュ用モニタ管
理テーブル600用の領域が確保され、システムパラメ
タに定義されているファイル名称ならびにキャッシング
する条件が登録される。Here, the name of the file for caching data and the conditions for caching data are defined in advance in system parameters of the computer system. When the system is started, an area for the MS cache monitor management table 600 is secured, and the file name defined in the system parameter and the caching condition are registered.
【0030】次に、MSキャッシュ用モニタ管理テーブ
ルの構造600を説明する。Next, the structure 600 of the monitor management table for MS cache will be described.
【0031】MSキャッシュ用モニタ管理テーブルの構
造600は、MSキャッシュ1400上にデータをキャ
ッシングするファイル毎に、有効フラグ610とファイ
ル名称620、参照回数630、更新回数640、なら
びにしきい値650が登録されている。In the structure 600 of the monitor management table for MS cache, a valid flag 610, a file name 620, a reference count 630, an update count 640, and a threshold 650 are registered for each file whose data is to be cached on the MS cache 1400. Have been.
【0032】有効フラグ610がONの場合、対応する
ファイルのデータがMSキャッシュ1400上に配置で
きる状態にあることを示している。そして、有効フラグ
620がOFFの場合、対応するファイルのデータがM
Sキャッシュ1400上に配置できない状態にあること
を示している。なお、この有効フラグ610は、システ
ム立ち上げ時には、すべてONの状態とする。When the valid flag 610 is ON, it indicates that the data of the corresponding file can be arranged in the MS cache 1400. When the valid flag 620 is OFF, the data of the corresponding file is M
This indicates that it cannot be placed on the S cache 1400. It should be noted that all of the valid flags 610 are turned on when the system is started.
【0033】620はファイル名を格納するフィールド
である。620には、MSキャッシュ1400を利用す
る候補のファイル名称が格納される。そして、各ファイ
ルのアクセス状況を格納するフィールドが630と64
0である。630には、参照要求のあった延べ回数が格
納され、640には、更新要求のあった延べ回数が格納
される。そして、650には、対応するファイルがMS
キャッシュ1400を利用することができる条件(しき
い値)が格納されている。本発明の実施の形態では、参
照率を格納している。参照率は、参照回数/(参照回数
+更新回数)で求めることができる。キャッシングする
か否かを判別する時に、参照回数630と参照回数64
0から参照率を求め、対応するしきい値よりも大きけれ
ば、キャッシングを行い、小さい値であれば、キャッシ
ングを停止する。A field 620 stores a file name. 620 stores a file name of a candidate using the MS cache 1400. The fields for storing the access status of each file are 630 and 64.
0. 630 stores the total number of reference requests, and 640 stores the total number of update requests. Then, in 650, the corresponding file is MS
A condition (threshold) that can use the cache 1400 is stored. In the embodiment of the present invention, the reference ratio is stored. The reference rate can be obtained by reference frequency / (reference frequency + update frequency). When determining whether to perform caching, the number of references 630 and the number of references 64 are determined.
The reference rate is calculated from 0, and if it is larger than the corresponding threshold value, caching is performed, and if it is smaller, caching is stopped.
【0034】上記MSキャッシュ用モニタ管理テーブル
600を用いて、MSキャッシュモニタ処理500がど
のように動作するかを図3を用いて説明する。Using the MS cache monitor management table 600, how the MS cache monitor process 500 operates will be described with reference to FIG.
【0035】MSキャッシュモニタ処理500は、ユー
ザプログラム400から入出力要求を受けたMSキャッ
シュ処理1300が動作する度に、MSキャッシュ処理
1300から呼び出される。The MS cache monitor process 500 is called from the MS cache process 1300 each time the MS cache process 1300 that receives an input / output request from the user program 400 operates.
【0036】まず、505で、アクセス要求があったフ
ァイルが、MSキャッシュ用モニタ管理テーブル600
に登録されているかを、ファイル名620をキーに検索
する。登録されている場合は510に進み、登録されて
いない場合は550に進み、処理を終了して呼び出し元
に戻る。First, at 505, the file requested to be accessed is stored in the monitor management table 600 for MS cache.
Is searched using the file name 620 as a key. If it is registered, the process proceeds to 510, and if it is not registered, the process proceeds to 550 to end the process and return to the caller.
【0037】510では、当該ファイルをキャッシング
するか否かの判断するためのモニタリングをする否かを
判別する。この判別では、参照回数630と更新回数6
40の総和が10000の倍数になっているか否かで判
断する。倍数になっていた場合は515に進み、倍数に
なっていない場合は525へ進む。At 510, it is determined whether or not monitoring for determining whether to cache the file is performed. In this determination, the reference count 630 and the update count 6
Judgment is made based on whether or not the sum of 40 is a multiple of 10,000. If it is a multiple, go to 515; if not, go to 525.
【0038】515では、対象ファイルがキャッシング
をするための条件を満足しているか否かを判別する。こ
の判別は、上述したように参照度で行う。参照度がしき
い値650よりも大きい場合、キャッシングをするため
の条件を満足していると判断し、520に進む。一方、
参照度がしきい値650よりも小さい場合、キャッシン
グをするための条件を満足していないと判断し、530
へ進む。At 515, it is determined whether or not the target file satisfies the conditions for caching. This determination is made based on the reference level as described above. If the reference degree is larger than the threshold value 650, it is determined that the condition for caching is satisfied, and the process proceeds to 520. on the other hand,
If the reference degree is smaller than the threshold value 650, it is determined that the condition for caching is not satisfied, and 530
Proceed to.
【0039】520では、有効フラグ610がONであ
るか否かを識別する。有効フラグがONである場合は5
25で進み、OFFである場合には535へ進む。At 520, it is determined whether or not the valid flag 610 is ON. 5 when the valid flag is ON
Proceed at 25 and proceed to 535 if it is OFF.
【0040】525では、ファイルのアクセス要求が、
参照であった場合には参照回数630をカウントアップ
し、更新要求であった場合には更新回数650をカウン
トアップして、550へ進み、呼び出し元に戻る。At 525, the file access request is
If it is a reference, the number of references 630 is counted up, and if it is an update request, the number of updates 650 is counted up, the process proceeds to 550, and returns to the caller.
【0041】一方、515において、キャッシングをす
るための条件を満足していないと判断した場合は、53
0にてデステージングの処理を行う。デステージング処
理では、アクセス要求のあったファイルに対応する有効
フラグ610をOFFにし、MSキャッシュ処理130
0に対して、当該ファイルのデータをキャッシングして
いる領域を、未使用状態にすることを要求する。この要
求により、魅しよう状態になった領域は、他のファイル
のデータをキャッシングするために利用されることにな
る。この手続きを完了した後525へ進む。On the other hand, if it is determined in 515 that the conditions for caching are not satisfied, 53
At 0, the destaging process is performed. In the destaging process, the valid flag 610 corresponding to the file requested to be accessed is turned off, and the MS cache process 130
0 requests that the area that caches the data of the file be placed in an unused state. With this request, the region that has been attracted is used for caching data of another file. After completing this procedure, go to 525.
【0042】さらに、520で、有効フラグ610がO
FFであると判別された場合について述べる。このケー
スは、ファイルをキャッシングする条件は満足している
が、有効フラグがOFFであるために、データがキャッ
シングされていないことを意味している。そこで、ま
ず。535で参照回数630と更新回数640をゼロク
リアして、次回以降のモニタリングに備える。そして、
540にて、有効フラグをONにして、キャッシングの
開始を指示し、525へ進む。Further, at 520, the valid flag 610 is set to O
The case where it is determined to be FF will be described. This case indicates that the condition for caching the file is satisfied, but the data is not cached because the valid flag is OFF. So first. At 535, the reference count 630 and the update count 640 are cleared to zero to prepare for the next and subsequent monitoring. And
At 540, the valid flag is turned on to instruct the start of caching, and the process proceeds to 525.
【0043】次に、第2の実施の形態について、図4か
ら図6を用いて説明する。Next, a second embodiment will be described with reference to FIGS.
【0044】第2の実施の形態では、主記憶装置と拡張
記憶装置、ならびにディスク制御装置の各々にキャッシ
ュを設けたケースである。In the second embodiment, a cache is provided in each of the main storage device, the extended storage device, and the disk control device.
【0045】図4を用いて、システムの構成を説明す
る。The configuration of the system will be described with reference to FIG.
【0046】この場合、MS300のMSキャッシュ1
400が第1の階層のキャッシュとなり、ES1600
のESキャッシュ1650が第2の階層のキャッシュ、
ディスク制御装置1800のディスクキャッシュ185
0が第3の階層のキャッシュとなる。In this case, MS cache 1 of MS 300
400 is the first tier cache and ES1600
ES cache 1650 of the second hierarchy,
Disk cache 185 of the disk controller 1800
0 is the cache of the third hierarchy.
【0047】以下、図1に示した第1の実施の形態との
違いを説明する。Hereinafter, differences from the first embodiment shown in FIG. 1 will be described.
【0048】図1のMSキャッシュ処理1300に代わ
り、MS/ESキャッシュ処理1500を用意する。こ
のMS/ESキャッシュ処理1500は、ユーザプログ
ラム400から、ファイルへの入力要求を受けると、M
Sキャッシュ1400に該当するデータが格納されてい
るか検索し、なければ、ESキャッシュ1650を検索
する。そして、MSキャッシュ1400あるいはESキ
ャッシュ1650に、該当するデータが格納されている
場合は、そのデータをユーザプログラムに渡すことで、
実入力操作を削減する。MSキャッシュ1400とES
キャッシュ1650の両方に、該当するデータが存在し
ない場合には、実入力命令を発行して、ディスク180
0から入力する。An MS / ES cache process 1500 is prepared instead of the MS cache process 1300 in FIG. When the MS / ES cache processing 1500 receives a file input request from the user program 400,
It searches whether the corresponding data is stored in the S cache 1400, and if not, searches the ES cache 1650. When the corresponding data is stored in the MS cache 1400 or the ES cache 1650, the data is passed to the user program,
Reduce actual input operations. MS Cache 1400 and ES
If the corresponding data does not exist in both of the caches 1650, a real input command is issued and the disk 180 is deleted.
Input from 0.
【0049】一方、ユーザプログラム400から、デー
タの出力要求があった場合、まず、MSキャッシュ上に
データを配置する旨、MSキャッシュ用モニタ管理テー
ブル600に記載されている場合は、データをMSキャ
ッシュ1400に配置した後、データをディスク180
0に出力する。MSキャッシュ用モニタ管理テーブル6
00ではなくESキャッシュ用モニタ管理テーブル10
00に記載されていた場合は、ESキャッシュ1650
に書き込んだ後、当該データをディスク1800に出力
する。On the other hand, when there is a data output request from the user program 400, first, the data is placed on the MS cache, and if the data is described in the MS cache monitor management table 600, the data is transferred to the MS cache. After placing the data on the disk 1400,
Output to 0. Monitor management table 6 for MS cache
Monitor management table for ES cache 10 instead of 00
00, the ES cache 1650
After that, the data is output to the disk 1800.
【0050】MS/ESキャッシュ処理1500は、M
Sキャッシュ1400に対するデータを操作、もしくは
データ検索をする度に、MSキャッシュ用モニタ処理7
00を呼び出す。そして、ESキャッシュ1650に対
するデータ操作もしくはデータ検索をする度に、ESキ
ャッシュ用モニタ処理900を呼び出す。The MS / ES cache processing 1500
Each time the S cache 1400 is manipulated or searched for data, the MS cache monitor process 7
Call 00. Then, each time a data operation or data search is performed on the ES cache 1650, the ES cache monitor process 900 is called.
【0051】そして、第1の実施の形態同様、MSキャ
ッシュ1400に配置するデータを動的に制御するのが
MSキャッシュ用モニタ処理700であり、ESキャッ
シュ1650に配置するデータを動的に制御するのが、
ESキャッシュ用モニタ処理900である。そして、各
々に対応して、管理テーブルを用意する。MSキャッシ
ュ用モニタ処理700はMSキャッシュ用モニタ管理テ
ーブル800を利用し、ESキャッシュ用モニタ処理9
00は、ESキャッシュ用モニタ管理テーブル1000
を利用する。As in the first embodiment, the MS cache monitor process 700 dynamically controls data to be allocated to the MS cache 1400, and dynamically controls data to be allocated to the ES cache 1650. But
This is the ES cache monitor process 900. Then, a management table is prepared for each. The MS cache monitor process 700 uses the MS cache monitor management table 800, and the ES cache monitor process 9
00 is the ES cache monitor management table 1000
Use
【0052】MSキャッシュ用モニタ管理テーブル80
0とESキャッシュ用モニタ管理テーブル1000の構
造は同一である。そして、第1の実施の形態で説明した
MSキャッシュ用モニタ管理テーブル600とも同一で
ある。Monitor management table 80 for MS cache
0 and the structure of the ES cache monitor management table 1000 are the same. This is the same as the MS cache monitor management table 600 described in the first embodiment.
【0053】システムの立ち上げ時に、この2つのテー
ブルは生成され、同一のファイル名称が登録される。し
かし、しきい値は、MSキャッシュ1400とESキャ
ッシュ1650とで異なる。さらに、同一ファイルに対
する有効フラグはMSキャッシュ用モニタ管理テーブル
800とESキャッシュ用モニタ管理テーブル1000
のどちらか一方だけが、ONになる。すなわち、MSキ
ャッシュ1400とESキャッシュ1650の両方に、
同じファイルのデータがキャッシングされることはな
い。When the system is started, these two tables are generated and the same file name is registered. However, the threshold is different between the MS cache 1400 and the ES cache 1650. Further, the valid flag for the same file is stored in the monitor management table 800 for the MS cache and the monitor management table 1000 for the ES cache.
Only one of them is turned ON. That is, in both the MS cache 1400 and the ES cache 1650,
No data in the same file is cached.
【0054】次に、図5を用いてMSキャッシュ用モニ
タ処理700の処理の流れを説明する。Next, the flow of the MS cache monitor process 700 will be described with reference to FIG.
【0055】まず、705で、アクセス要求があったフ
ァイルが、MSキャッシュ用モニタ管理テーブルに登録
されているかを、ファイル名をキーに検索する。登録さ
れている場合は710に進み、登録されていない場合は
750に進み、処理を終了して呼び出し元に戻る。First, in step 705, a search is performed using the file name as a key to determine whether the file requested to be accessed is registered in the monitor management table for MS cache. If it has been registered, the process proceeds to 710; if it has not been registered, the process proceeds to 750 to end the process and return to the caller.
【0056】710では、当該ファイルをキャッシング
するか否かの判断するためのモニタリングをする否かを
判別する。この判別では、参照回数と更新回数の総和が
10000の倍数になっているか否かで判断する。倍数
になっていた場合は715に進み、倍数になっていない
場合は730へ進む。At 710, it is determined whether or not monitoring for determining whether to cache the file is performed. In this determination, it is determined whether or not the sum of the reference count and the update count is a multiple of 10,000. If it is a multiple, go to 715; otherwise, go to 730.
【0057】715では、第1の実施の形態同様、対象
ファイルが伽寝具する条件を満足するか否かを判断す
る。満足している場合は720へ進み、満足していない
場合は730へ進む。720では、MSキャッシュ用モ
ニタ管理テーブル800のアクセス対象ファイルの有効
フラグがONとなっているが否かをチェックする。ON
である場合は725へ進み、OFFである場合は740
へ進む。725では、アクセス要求が参照要求であった
場合、MSキャッシュ用モニタ管理テーブル800の該
当するファイル名に対応する参照回数を更新し、更新要
求であった場合、MSキャッシュ用モニタ管理テーブル
800の該当するファイル名に対応する更新回数を更新
する。At 715, as in the first embodiment, it is determined whether or not the target file satisfies the condition for sleeping. If satisfied, proceed to 720; if not, proceed to 730. At 720, it is checked whether or not the valid flag of the access target file in the MS cache monitor management table 800 is ON. ON
If yes, go to 725; if off, 740
Proceed to. In step 725, if the access request is a reference request, the number of references corresponding to the corresponding file name in the MS cache monitor management table 800 is updated. The update count corresponding to the file name to be updated is updated.
【0058】715にて、キャッシング条件を満足しな
いと判断された場合、730でMSキャッシュ1400
からのデステージングをする。具体的には、MSキャッ
シュ用モニタ管理テーブル800内の該当するファイル
名に対応した有効フラグをOFFにする。そして、MS
/ESキャッシュ処理1300に対して、当該ファイル
のデータをキャッシングしているMSキャッシュ140
0内の領域を、未使用状態にすることを要求する。そし
て、735で、ESキャッシュへのステージング操作を
行う。具体的には、ESキャッシュ用モニタ管理テーブ
ル1000内の該当ファイルに対応する有効フラグをO
Nにして、725へ進む。If it is determined at 715 that the caching condition is not satisfied, then at 730 the MS cache 1400
Destaging from. Specifically, the validity flag corresponding to the corresponding file name in the MS cache monitor management table 800 is turned off. And MS
For the / ES cache processing 1300, the MS cache 140 caching the data of the file
Requests that the area in 0 be unused. Then, at 735, a staging operation to the ES cache is performed. Specifically, the valid flag corresponding to the file in the ES cache monitor management table 1000 is set to O.
Set N and proceed to 725.
【0059】また、720において、MSキャッシュ用
モニタ管理テーブル800の該当ファイルに対応する有
効フラグがOFFであると判断された場合は、740
で、MSキャッシュ用モニタ管理テーブル800の該当
ファイルに対応する参照回数のフィールドと更新回数の
フィールドを0クリアする。If it is determined in 720 that the valid flag corresponding to the file in the MS cache monitor management table 800 is OFF, the process proceeds to 740.
Then, the field of the number of references and the field of the number of updates corresponding to the file in the MS cache monitor management table 800 are cleared to zero.
【0060】そして、745で、MSキャッシュへのス
テージング操作をする。具体的には、ESキャッシュモ
ニタ管理テーブル1000の該当ファイルに対応する有
効フラグがONであった場合は、それをOFFにし、M
S/ESキャッシュ処理1300に対して、当該ファイ
ルのデータをキャッシングしているESキャッシュ16
50内の領域を、未使用状態にすることを要求する。そ
して、MSキャッシュ用モニタ管理テーブル800の該
当ファイルの有効フラグをONにして、725へ進む。Then, at 745, a staging operation to the MS cache is performed. Specifically, when the valid flag corresponding to the file in the ES cache monitor management table 1000 is ON, the valid flag is turned OFF, and M
For the S / ES cache processing 1300, the ES cache 16 caching the data of the file
Request that the area in 50 be unused. Then, the validity flag of the corresponding file in the MS cache monitor management table 800 is turned ON, and the process proceeds to 725.
【0061】次に、図6を用いて、ESキャッシュ用モ
ニタ処理900の処理の流れを説明する。Next, the flow of the ES cache monitor process 900 will be described with reference to FIG.
【0062】まず、705で、アクセス要求があったフ
ァイルが、MSキャッシュ用モニタ管理テーブルに登録
されているかを、ファイル名をキーに検索する。登録さ
れている場合は710に進み、登録されていない場合は
750に進み、処理を終了して呼び出し元に戻る。First, in step 705, a search is performed using the file name as a key to determine whether the file requested to be accessed is registered in the monitor management table for MS cache. If it has been registered, the process proceeds to 710; if it has not been registered, the process proceeds to 750 to end the process and return to the caller.
【0063】710では、当該ファイルをキャッシング
するか否かの判断するためのモニタリングをする否かを
判別する。この判別では、参照回数と更新回数の総和が
10000の倍数になっているか否かで判断する。倍数
になっていた場合は715に進み、倍数になっていない
場合は730へ進む。At 710, it is determined whether or not monitoring for determining whether to cache the file is performed. In this determination, it is determined whether or not the sum of the reference count and the update count is a multiple of 10,000. If it is a multiple, go to 715; otherwise, go to 730.
【0064】715では、第1の実施の形態同様、対象
ファイルがキャッシングする条件を満足するか否かを判
断する。満足している場合は720へ進み、満足してい
ない場合は730へ進む。720では、MSキャッシュ
用モニタ管理テーブル800のアクセス対象ファイルの
有効フラグがONとなっているが否かをチェックする。
ONである場合は725へ進み、OFFである場合は7
40へ進む。725では、アクセス要求が参照要求であ
った場合、MSキャッシュ用モニタ管理テーブル800
の該当するファイル名に対応する参照回数を更新し、更
新要求であった場合、MSキャッシュ用モニタ管理テー
ブル800の該当するファイル名に対応する更新回数を
更新する。At 715, it is determined whether or not the target file satisfies the caching condition as in the first embodiment. If satisfied, proceed to 720; if not, proceed to 730. At 720, it is checked whether or not the valid flag of the access target file in the MS cache monitor management table 800 is ON.
If it is ON, proceed to 725; if it is OFF, 7
Proceed to 40. At 725, if the access request is a reference request, the MS cache monitor management table 800
In the case of an update request, the update count corresponding to the corresponding file name in the MS cache monitor management table 800 is updated.
【0065】715において、キャッシング条件を満足
しないと判断された場合、730でMSキャッシュ14
00からのデステージングをする。具体的には、MSキ
ャッシュ用モニタ管理テーブル800内の該当するファ
イル名に対応した有効フラグをOFFにする。そして、
MS/ESキャッシュ処理1300に対して、当該ファ
イルのデータをキャッシングしているMSキャッシュ1
400内の領域を、未使用状態にすることを要求する。
そして、735で、ESキャッシュへのステージング操
作を行う。具体的には、ESキャッシュ用モニタ管理テ
ーブル1000内の該当ファイルに対応する有効フラグ
をONにして、725へ進む。If it is determined at 715 that the caching condition is not satisfied, then at 730 the MS cache 14
Destaging from 00. Specifically, the validity flag corresponding to the corresponding file name in the MS cache monitor management table 800 is turned off. And
For the MS / ES cache processing 1300, the MS cache 1 caching the data of the file
Request that the area in 400 be unused.
Then, at 735, a staging operation to the ES cache is performed. More specifically, the validity flag corresponding to the file in the ES cache monitor management table 1000 is turned ON, and the process proceeds to 725.
【0066】また、720において、MSキャッシュ用
モニタ管理テーブル800の該当ファイルに対応する有
効フラグがOFFであると判断された場合は、740
で、MSキャッシュ用モニタ管理テーブル800の該当
ファイルに対応する参照回数のフィールドと更新回数の
フィールドを0クリアする。If it is determined in 720 that the valid flag corresponding to the file in the MS cache monitor management table 800 is OFF, the process proceeds to 740.
Then, the field of the number of references and the field of the number of updates corresponding to the file in the MS cache monitor management table 800 are cleared to zero.
【0067】そして、745で、MSキャッシュへのス
テージング操作をする。具体的には、ESキャッシュモ
ニタ管理テーブル1000の該当ファイルに対応する有
効フラグがONであった場合は、それをOFFにし、M
S/ESキャッシュ処理1300に対して、当該ファイ
ルのデータをキャッシングしているESキャッシュ16
50内の領域を、未使用状態にすることを要求する。そ
して、MSキャッシュ用モニタ管理テーブル800の該
当ファイルの有効フラグをONにして、725へ進む。Then, at 745, a staging operation to the MS cache is performed. Specifically, when the valid flag corresponding to the file in the ES cache monitor management table 1000 is ON, the valid flag is turned OFF, and M
For the S / ES cache processing 1300, the ES cache 16 caching the data of the file
Request that the area in 50 be unused. Then, the validity flag of the corresponding file in the MS cache monitor management table 800 is turned ON, and the process proceeds to 725.
【0068】次に、図6を用いて、ESキャッシュ用モ
ニタ処理900の処理の流れを説明する。Next, the flow of the ES cache monitor process 900 will be described with reference to FIG.
【0069】まず、905で、アクセス要求があったフ
ァイルが、ESキャッシュ用モニタ管理テーブル100
0に登録されているかを、ファイル名をキーに検索す
る。登録されている場合は910に進み、登録されてい
ない場合は950に進み、処理を終了して呼び出し元に
戻る。First, at 905, the file requested to be accessed is stored in the ES cache monitor management table 100.
0 is searched using the file name as a key. If registered, the process proceeds to 910; if not registered, the process proceeds to 950 to end the process and return to the caller.
【0070】910では、当該ファイルをキャッシング
するか否かの判断するためのモニタリングをする否かを
判別する。この判別では、参照回数と更新回数の総和が
10000の倍数になっているか否かで判断する。倍数
になっていた場合は915に進み、倍数になっていない
場合は930へ進む。At 910, it is determined whether or not monitoring for determining whether to cache the file is performed. In this determination, it is determined whether or not the sum of the reference count and the update count is a multiple of 10,000. If it is a multiple, go to 915; if not, go to 930.
【0071】915では、第1の実施の形態同様、対象
ファイルがキャッシングする条件を満足するか否かを判
断する。満足している場合は920へ進み、満足してい
ない場合は930へ進む。920では、ESキャッシュ
用モニタ管理テーブル1000のアクセス対象ファイル
の有効フラグがONとなっているが否かをチェックす
る。ONである場合は925へ進み、OFFである場合
は935へ進む。925では、アクセス要求が参照要求
であった場合、ESキャッシュ用モニタ管理テーブル1
000の該当するファイル名に対応する参照回数を更新
し、更新要求であった場合、ESキャッシュ用モニタ管
理テーブル1000の該当するファイル名に対応する更
新回数を更新する。At 915, it is determined whether or not the target file satisfies the caching condition as in the first embodiment. If satisfied, proceed to 920; otherwise, proceed to 930. At 920, it is checked whether or not the valid flag of the access target file in the ES cache monitor management table 1000 is ON. If it is ON, proceed to 925; if it is OFF, proceed to 935. At 925, if the access request is a reference request, the ES cache monitor management table 1
000, the update count corresponding to the corresponding file name in the ES cache monitor management table 1000 is updated.
【0072】915において、キャッシング条件を満足
しないと判断された場合、930でESキャッシュ16
50からのデステージングをする。具体的には、ESキ
ャッシュ用モニタ管理テーブル1000内の該当するフ
ァイル名に対応した有効フラグをOFFにする。そし
て、MS/ESキャッシュ処理1300に対して、当該
ファイルのデータをキャッシングしているESキャッシ
ュ1650内の領域を、未使用状態にすることを要求
し、725へ進む。If it is determined at 915 that the caching condition is not satisfied, the ES cache 16 is determined at 930.
Destaging from 50. Specifically, the validity flag corresponding to the corresponding file name in the ES cache monitor management table 1000 is turned off. Then, it requests the MS / ES cache processing 1300 to make the area in the ES cache 1650 that caches the data of the file into an unused state, and proceeds to 725.
【0073】また、920において、MSキャッシュ用
モニタ管理テーブル1000の該当ファイルに対応する
有効フラグがOFFであると判断された場合、935
で、MSキャッシュ用管理テーブル800内の当該ファ
イルに対応する有効フラグがONであるか否かをチェッ
クする。有効フラグがONである場合は、すでに、MS
キャッシュ1400で、このファイルがキャッシングさ
れていることを示している。この場合は925に進む。
有効フラグがOFFである場合は、MSキャッシュ14
00にも、キャッシングされていないことを示すので、
ESキャッシュへの配置をするために、940で、ES
キャッシュ用モニタ管理テーブル1400の当該ファイ
ルに対応する参照回数と更新回数のフィールドをゼロク
リアする。そして、945でESキャッシュ1650へ
のステージングをするための手続きをとる。具体的に
は、ESキャッシュ用モニタ管理テーブル1400の当
該ファイルに対応する有効フラグをONにする。これら
の手続きが完了した後、925に進む。If it is determined in 920 that the valid flag corresponding to the file in the monitor management table for MS cache 1000 is OFF, 935 is set.
Then, it is checked whether the valid flag corresponding to the file in the MS cache management table 800 is ON. If the valid flag is ON, MS
The cache 1400 indicates that this file has been cached. In this case, proceed to 925.
If the valid flag is OFF, the MS cache 14
Since 00 indicates that it is not cached,
To place in the ES cache, at 940, the ES
The reference count and update count fields corresponding to the file in the cache monitor management table 1400 are cleared to zero. Then, at 945, a procedure for staging to the ES cache 1650 is taken. Specifically, the valid flag corresponding to the file in the ES cache monitor management table 1400 is turned ON. After these procedures are completed, the process proceeds to 925.
【0074】次に、第3の実施の形態として、本発明を
クラスタ構成の計算機システムで適用した場合につい
て、図7を用いて説明する。Next, as a third embodiment, a case where the present invention is applied to a computer system having a cluster configuration will be described with reference to FIG.
【0075】図7では、100と100―1の2つの計
算機から構成されている。FIG. 7 is composed of two computers 100 and 100-1.
【0076】この2つの計算機は、ES1600とディ
スク1800を共有している。特に、ディスク1800
は、ディスク制御装置1700を介して共有している。
各計算機上のメモリ(300と300―1)には、各
々、MSキャッシュ(1400と1400―1)が用意
され、データのキャッシングをしている。さらに、共有
されているES1600にはESキャッシュ1650が
用意され、ディスク制御装置1700にはディスクキャ
ッシュ1750が用意されて、100と100―1とで
共有して利用している。The two computers share the ES 1600 and the disk 1800. In particular, disc 1800
Are shared via the disk controller 1700.
MS caches (1400 and 1400-1) are provided in the memories (300 and 300-1) on each computer, respectively, to cache data. Further, an ES cache 1650 is prepared for the shared ES 1600, and a disk cache 1750 is prepared for the disk control device 1700, which is shared and used by 100 and 100-1.
【0077】この計算機システム構成において、MSキ
ャッシュ1400とMSキャッシュ1400−1との間
でのデータの整合性は、MS/ESキャッシュ処理15
00とMS/ESキャッシュモニタ処理1500−1と
の間で、計算機間の通信手段を用いることで、保証され
ている。In this computer system configuration, the data consistency between the MS cache 1400 and the MS cache 1400-1 is determined by the MS / ES cache processing 15
00 and the MS / ES cache monitor process 1500-1 are guaranteed by using communication means between computers.
【0078】次に、計算機100と計算機100―1と
の関係を説明する。この2つの計算機は、マスタとスレ
ーブの関係にある。計算機100がマスタで、計算機1
00―1がスレーブとなっている。そして、スレーブ側
の計算機100−1には、MSキャッシュ用レポート処
理1100と、ESキャッシュ用レポート処理1200
とが設けられている。Next, the relationship between the computer 100 and the computer 100-1 will be described. These two computers are in a master-slave relationship. Computer 100 is the master and computer 1
00-1 is a slave. The slave computer 100-1 has an MS cache report process 1100 and an ES cache report process 1200.
Are provided.
【0079】MSキャッシュ用レポート処理1100
は、MS/ESキャッシュ処理1500−1がデータの
アクセス要求に応じて、MSキャッシュ1400−1へ
のデータ操作、もしくはデータ検索を行う度に、MS/
ESキャッシュ処理1500−1から呼び出される。そ
して、800−1に登録されたファイルについて、参照
回数と更新回数をカウントし、定期的に、マスタである
MSキャッシュモニタ700にレポートする。また、M
Sキャッシュモニタ700から、ファイル単位のMSキ
ャッシュへのステージングもしくはデステージングの指
示に応じて、MS/ESキャッシュ処理1500−1に
MSキャッシュへのステージングもしくはデステージン
グの要求を発行する。MS Cache Report Processing 1100
Each time the MS / ES cache processing 1500-1 performs a data operation or a data search on the MS cache 1400-1 in response to a data access request, the MS / ES cache processing 1500-1
It is called from the ES cache processing 1500-1. Then, for the file registered in 800-1, the number of times of reference and the number of updates are counted, and the file is periodically reported to the MS cache monitor 700, which is the master. Also, M
The S cache monitor 700 issues a staging or destaging request to the MS cache to the MS / ES cache processing 1500-1 in response to a staging or destaging instruction to the MS cache in file units.
【0080】ESキャッシュ用レポート処理1200
は、MS/ESキャッシュ処理1500−1が、データ
のアクセス要求に応じて、ESキャッシュ1650−1
へのデータ操作、もしくはデータ検索を行う度に、MS
/ESキャッシュ処理1500−1から呼び出される。
そして、1000−1に登録されたファイルについて、
参照回数と更新回数をカウントし、定期的に、マスタで
あるESキャッシュモニタ700にレポートする。ES Cache Report Processing 1200
Indicates that the MS / ES cache processing 1500-1 executes the ES cache 1650-1 in response to a data access request.
Each time you perform data search or data search, MS
/ ES cache processing 1500-1.
Then, for the file registered in 1000-1,
The number of times of reference and the number of updates are counted, and the count is periodically reported to the ES cache monitor 700 which is the master.
【0081】一方、マスタ側のMSキャッシュ用モニタ
処理700では、スレーブ側のMSキャッシュレポート
処理1100から報告された情報を、MSキャッシュ用
モニタ管理テーブル800に登録する。同様に、ESキ
ャッシュ用モニタ処理900は、ESキャッシュ用レポ
ート処理1200から報告された情報を、ESキャッシ
ュ用モニタ管理テーブル1000に登録する。On the other hand, in the master side MS cache monitor processing 700, the information reported from the slave side MS cache report processing 1100 is registered in the MS cache monitor management table 800. Similarly, the ES cache monitor process 900 registers the information reported from the ES cache report process 1200 in the ES cache monitor management table 1000.
【0082】以上、本発明の実施の形態として、MSキ
ャッシュとESキャッシュ、ならびにディスクキャッシ
ュを階層化して、制御する形態を説明した。しかし、階
層化された計算機ノード上に配置するMSキャッシュを
階層化して、同じように制御することも可能である。As described above, the embodiment of the present invention has been described in which the MS cache, the ES cache, and the disk cache are hierarchized and controlled. However, it is also possible to hierarchize the MS caches arranged on the hierarchized computer nodes and control the same.
【0083】[0083]
【発明の効果】本発明によれば、階層化されたキャッシ
ュ領域を有する計算機システムにおいて、データのアク
セス特性に応じて、ファイル単位に、利用するキャッシ
ュ領域を決定することができる。これにより、データ更
新時に、データの整合性をとるために発生するプロセッ
サ間通信の抑止、参照比率の高いデータのアクセス速度
が高いキャッシュ領域への優先配置により、データベー
スシステムのスループット向上、ならびに応答性能向上
を図ることができる。According to the present invention, in a computer system having a hierarchical cache area, a cache area to be used can be determined for each file in accordance with data access characteristics. As a result, when updating data, suppression of inter-processor communication that occurs to ensure data consistency, priority placement of data with a high reference ratio in a cache area with a high access speed improves the throughput of the database system, and response performance. Improvement can be achieved.
【図1】第1の実施の形態を表すシステムの構成図。FIG. 1 is a configuration diagram of a system representing a first embodiment.
【図2】MSキャッシュ用モニタ管理テーブルの構造
図。FIG. 2 is a structural diagram of an MS cache monitor management table;
【図3】第1の実施の形態におけるMSキャッシュ用モ
ニタ処理のフローチャート。FIG. 3 is a flowchart of an MS cache monitoring process according to the first embodiment;
【図4】第2の実施の形態を表すシステムの構成図。FIG. 4 is a configuration diagram of a system representing a second embodiment.
【図5】第2の実施の形態におけるMSキャッシュ用モ
ニタ処理のフローチャート。FIG. 5 is a flowchart of an MS cache monitoring process according to the second embodiment;
【図6】第2の実施の形態におけるESキャッシュ用モ
ニタ処理のフローチャート。FIG. 6 is a flowchart of an ES cache monitoring process according to the second embodiment;
【図7】本発明をクラスタ構成のシステムに適用した場
合の構成図。FIG. 7 is a configuration diagram when the present invention is applied to a cluster configuration system.
100…計算機、200…CPU、300…主記憶装
置、400…ユーザプロプログラム、500…第1の実
施の形態におけるMSキャッシュ用モニタ処理、600
…第1の実施の形態におけるMSキャッシュ用モニタ管
理テーブル、700…第2の実施の形態におけるMSキ
ャッシュ用モニタ処理、800…第2の実施の形態にお
けるMSキャッシュ用モニタ管理テーブル、900…E
Sキャッシュ用モニタ管理テーブル、1000…ESキ
ャッシュ用モニタ管理テーブル、1100…MSキャッ
シュ用レポート処理、1200…ESキャッシュ用レポ
ート処理、1300…MSキャッシュ処理、1400…
MSキャッシュ、1500…MS/ESキャッシュ処
理、1600…拡張記憶装置、1650…ESキャッシ
ュ、1700…ディスク制御装置、1750…ディスク
キャッシュ、1800…ディスク。Reference numeral 100: computer, 200: CPU, 300: main storage device, 400: user pro program, 500: monitoring process for MS cache in the first embodiment, 600
... MS cache monitor management table in the first embodiment, 700... MS cache monitor processing in the second embodiment, 800... MS cache monitor management table in the second embodiment, 900.
S cache monitor management table, 1000: ES cache monitor management table, 1100: MS cache report processing, 1200: ES cache report processing, 1300: MS cache processing, 1400 ...
MS cache, 1500: MS / ES cache processing, 1600: extended storage device, 1650: ES cache, 1700: disk control device, 1750: disk cache, 1800: disk.
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 12/08 557 G06F 12/08 557 3/06 302 3/06 302A 12/00 514 12/00 514K 15/16 645 15/16 645 (72)発明者 秋葉 千江子 神奈川県横浜市戸塚区戸塚町5030番地 株 式会社日立製作所ソフトウェア開発本部内 (72)発明者 清井 雅広 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 (72)発明者 市川 正也 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 Fターム(参考) 5B005 JJ13 KK02 KK13 MM11 PP11 QQ04 UU26 UU32 UU33 UU41 VV03 5B045 DD12 DD18 5B065 BA01 CE12 CH01 5B082 FA12 ──────────────────────────────────────────────────続 き Continued on the front page (51) Int.Cl. 7 Identification symbol FI Theme coat ゛ (Reference) G06F 12/08 557 G06F 12/08 557 3/06 302 3/06 302A 12/00 514 12/00 514K 15 / 16 645 15/16 645 (72) Inventor Chieko Akiba 5030 Totsuka-cho, Totsuka-ku, Yokohama-shi, Kanagawa Prefecture Inside the Software Development Division, Hitachi, Ltd. Hitachi, Ltd. System Development Laboratory (72) Inventor Masaya Ichikawa 1099 Ozenji, Aso-ku, Kawasaki City, Kanagawa Prefecture F-term in Hitachi, Ltd. System Development Laboratory F-term (reference) 5B005 JJ13 KK02 KK13 MM11 PP11 QQ04 UU26 UU32 UU33 UU41 VV03 5B045 DD12 DD18 5B065 BA01 CE12 CH01 5B082 FA12
Claims (1)
つ以上のキャッシュ領域を有し、 当該計算機ノードで動作するプログラムがアクセスする
データを、当該キャッシュ領域に配置するキャッシュ制
御方法において、 当該各キャッシュ領域に配置するデータが属するファイ
ル識別子を登録するステップと、 当該各キャッシュ領域を利用するファイルの参照処理の
更新処理との割合を目標値としてあらかじめ定めるステ
ップと、 当該各キャッシュ領域に配置された上記ファイルの上記
データに対して、当該ファイル単位に、参照要求と更新
要求の回数をモニタリングするステップと、 当該モニタリングするステップにより選られた当該参照
要求と当該更新要求の回数の割合が、上記目標値を満足
していないファイルに属するデータが格納された領域
を、当該ファイル以外のデータをキャッシングする領域
として利用するステップとを有することを特徴とするキ
ャッシュ制御方法。1. One computer node is composed of two hierarchical nodes.
Registering a file identifier to which data to be allocated to each cache area belongs, in a cache control method having at least one cache area and allocating data accessed by a program operating on the computer node to the cache area; A step of preliminarily setting a ratio of a reference process of a file that uses each cache area to an update process as a target value; and A step of monitoring the number of requests and update requests, and an area where data belonging to a file whose ratio of the number of reference requests and update requests selected by the monitoring step does not satisfy the target value is stored. To cache data other than the file. Cache control method characterized by comprising the steps of: utilizing as an area for.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000295441A JP2002099465A (en) | 2000-09-25 | 2000-09-25 | Cache control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000295441A JP2002099465A (en) | 2000-09-25 | 2000-09-25 | Cache control method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2002099465A true JP2002099465A (en) | 2002-04-05 |
Family
ID=18777865
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000295441A Pending JP2002099465A (en) | 2000-09-25 | 2000-09-25 | Cache control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2002099465A (en) |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005285058A (en) * | 2004-03-31 | 2005-10-13 | Hitachi Ltd | Cache management method for storage device |
| JP2008140184A (en) * | 2006-12-01 | 2008-06-19 | Fujitsu Ltd | Data center, cache server and method |
| WO2014007249A1 (en) * | 2012-07-05 | 2014-01-09 | 株式会社日立製作所 | I/o node and control method of cache memory provided in plurality of calculation nodes |
| JP2014232350A (en) * | 2013-05-28 | 2014-12-11 | 株式会社日立製作所 | Computer system, cache control method and server |
| JP2015075818A (en) * | 2013-10-07 | 2015-04-20 | 株式会社日立製作所 | Computer system, cache management method, and computer |
| JP2015087837A (en) * | 2013-10-29 | 2015-05-07 | 株式会社日立製作所 | Computer system and data arrangement control method |
| US9811410B2 (en) | 2014-03-18 | 2017-11-07 | Toshiba Memory Corporation | Data transfer device, data transfer method, and non-transitory computer readable medium |
| WO2019123519A1 (en) * | 2017-12-18 | 2019-06-27 | 三菱電機株式会社 | Information processing device, information processing method, and information processing program |
-
2000
- 2000-09-25 JP JP2000295441A patent/JP2002099465A/en active Pending
Cited By (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005285058A (en) * | 2004-03-31 | 2005-10-13 | Hitachi Ltd | Cache management method for storage device |
| JP2008140184A (en) * | 2006-12-01 | 2008-06-19 | Fujitsu Ltd | Data center, cache server and method |
| US8068512B2 (en) | 2006-12-01 | 2011-11-29 | Fujitsu Limited | Efficient utilization of cache servers in mobile communication system |
| US9811465B2 (en) | 2012-07-05 | 2017-11-07 | Hitachi, Ltd. | Computer system and cache control method |
| WO2014007249A1 (en) * | 2012-07-05 | 2014-01-09 | 株式会社日立製作所 | I/o node and control method of cache memory provided in plurality of calculation nodes |
| JPWO2014007249A1 (en) * | 2012-07-05 | 2016-06-02 | 株式会社日立製作所 | Method for controlling cache memories provided in I/O node and multiple computing nodes |
| JP2014232350A (en) * | 2013-05-28 | 2014-12-11 | 株式会社日立製作所 | Computer system, cache control method and server |
| US9591096B2 (en) | 2013-05-28 | 2017-03-07 | Hitachi, Ltd. | Computer system, cache control method, and server |
| JP2015075818A (en) * | 2013-10-07 | 2015-04-20 | 株式会社日立製作所 | Computer system, cache management method, and computer |
| JP2015087837A (en) * | 2013-10-29 | 2015-05-07 | 株式会社日立製作所 | Computer system and data arrangement control method |
| US9811410B2 (en) | 2014-03-18 | 2017-11-07 | Toshiba Memory Corporation | Data transfer device, data transfer method, and non-transitory computer readable medium |
| US10698758B2 (en) | 2014-03-18 | 2020-06-30 | Toshiba Memory Corporation | Data transfer device, data transfer method, and non-transitory computer readable medium |
| WO2019123519A1 (en) * | 2017-12-18 | 2019-06-27 | 三菱電機株式会社 | Information processing device, information processing method, and information processing program |
| JPWO2019123519A1 (en) * | 2017-12-18 | 2020-04-02 | 三菱電機株式会社 | Information processing apparatus, information processing method, and information processing program |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8108629B2 (en) | Method and computer for reducing power consumption of a memory | |
| JP4631301B2 (en) | Cache management method for storage device | |
| US6216199B1 (en) | Hardware mechanism for managing cache structures in a data storage system | |
| JP4116413B2 (en) | Prefetch appliance server | |
| US6928451B2 (en) | Storage system having means for acquiring execution information of database management system | |
| US8112587B2 (en) | Shared data prefetching with memory region cache line monitoring | |
| US8825959B1 (en) | Method and apparatus for using data access time prediction for improving data buffering policies | |
| JPH08129457A (en) | Method and apparatus for expansion,reduction and redistribution of external storage structure | |
| JP2005196602A (en) | System configuration change method in non-shared database management system | |
| US20130232310A1 (en) | Energy efficiency in a distributed storage system | |
| WO1999041668A1 (en) | Compression store free-space management | |
| WO2018040167A1 (en) | Data caching method and apparatus | |
| US8656119B2 (en) | Storage system, control program and storage system control method | |
| CN119201452A (en) | Hierarchical memory page management method and system based on random dynamic access memory and heterogeneous memory | |
| CN107870954A (en) | A distributed database extension method and device | |
| JP3701890B2 (en) | Reserving reclaimed space for compressed memory systems | |
| CN105376269B (en) | Virtual machine storage system and its implementation and device | |
| JP2002099465A (en) | Cache control method | |
| JPH06332625A (en) | File data multiplexing method and data processing system | |
| JPH11143779A (en) | Paging processing system for virtual storage device | |
| JP5098120B2 (en) | Computer system and database management system program | |
| JP5147296B2 (en) | Computer system, database management method and program | |
| JP5261809B2 (en) | Computer system and database management system program | |
| US11086876B2 (en) | Storing derived summaries on persistent memory of a storage device | |
| JPH11224164A (en) | Magnetic disk subsystem |