JP2773986B2 - Storage system control method - Google Patents
Storage system control methodInfo
- Publication number
- JP2773986B2 JP2773986B2 JP3019037A JP1903791A JP2773986B2 JP 2773986 B2 JP2773986 B2 JP 2773986B2 JP 3019037 A JP3019037 A JP 3019037A JP 1903791 A JP1903791 A JP 1903791A JP 2773986 B2 JP2773986 B2 JP 2773986B2
- Authority
- JP
- Japan
- Prior art keywords
- file
- area
- stored
- buffer storage
- storage device
- 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.)
- Expired - Fee Related
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明は、大容量低価格の2次記
憶装置とこの2次記憶装置に記憶されたファイルの写し
を記憶する高速バッファ記憶装置とを全体的に制御し、
アクセス要求元からのファイルアクセスに対して高速バ
ッファ記憶装置を効果的に使用する記憶システム制御方
式に関する。BACKGROUND OF THE INVENTION The present invention controls a large-capacity and low-cost secondary storage device and a high-speed buffer storage device for storing a copy of a file stored in the secondary storage device.
The present invention relates to a storage system control method that effectively uses a high-speed buffer storage device for a file access from an access request source.
【0002】[0002]
【従来の技術】現在の記憶システムにおいては、大容量
低価格の記憶装置(光ディスク等)が実用化され、記憶
システムの一構成要素として商用に供されている。大容
量低価格の記憶装置を用いれば、大容量の記憶システム
を低価格で構成できる利点がある。しかし、磁気ディス
ク装置等に比較してアクセス速度や転送速度が遅く、磁
気ディスク装置で構成された記憶システムよりシステム
の性能は低下している。これを避けるため、記憶装置内
の一部のファイルの写しを保持する高速で小容量なバッ
ファ記憶装置を設け、要求ファイルがバッファ記憶装置
内に存在していたら、直ちにファイルを要求元に転送す
る方式(通常ステージング方式またはキャッシング方式
と呼ばれている)が採用されている。本発明では、ステ
ージング方式に基づき説明を行うため、大容量低価格の
記憶装置を2次記憶装置と呼ぶこととする。2. Description of the Related Art In a current storage system, a large-capacity low-priced storage device (such as an optical disk) has been put to practical use and is commercially available as one component of the storage system. Use of a large-capacity low-priced storage device has an advantage that a large-capacity storage system can be configured at low cost. However, the access speed and the transfer speed are lower than that of a magnetic disk device or the like, and the performance of the system is lower than that of a storage system constituted by magnetic disk devices. To avoid this, a high-speed and small-capacity buffer storage device that holds a copy of a part of the file in the storage device is provided, and if the requested file exists in the buffer storage device, the file is immediately transferred to the request source. A method (usually called a staging method or a caching method) is employed. In the present invention, a large-capacity low-priced storage device will be referred to as a secondary storage device in order to explain based on the staging method.
【0003】ステージング方式においては、通常バッフ
ァ記憶装置内に2次記憶装置の一部のファイルの写しを
保持する方法が採られている。バッファ記憶装置は一般
的に高価であり小容量なため、記憶容量には制限があ
り、保持しておくファイル数も制限される。したがっ
て、バッファ記憶装置内に要求されたファイルが存在し
ないとき、2次記憶装置にアクセスする必要が生じる。[0003] In the staging system, a method is generally employed in which a copy of a part of a file in a secondary storage device is held in a buffer storage device. Since the buffer storage device is generally expensive and has a small capacity, the storage capacity is limited, and the number of files to be stored is also limited. Therefore, when the requested file does not exist in the buffer storage device, it is necessary to access the secondary storage device.
【0004】一方、一ファイルの容量は近年大きくなる
傾向にある。例えば、文書ファイリングシステムにおい
て、文書、表、図面等を統一的に管理するため、すべて
イメージデータとして記憶しておきたいという要求があ
る。このようなシステムにおいては、一文書がA4版で
100頁に及ぶ場合がある。イメージデータを圧縮して
も、一文書で10MB近くなり、一ファイル10MBの
容量になってしまう。このような大容量のファイルをバ
ッファ記憶装置に保持すると、バッファ記憶装置は小容
量のため、保持できるファイル数が益々少なくなってし
まう。On the other hand, the capacity of one file has been increasing in recent years. For example, in a document filing system, there is a demand that all documents, tables, drawings, and the like be stored as image data in order to manage them in a unified manner. In such a system, one document may cover 100 pages in A4 size. Even if image data is compressed, the size of one document is close to 10 MB, and the capacity of one file is 10 MB. When such a large-capacity file is stored in the buffer storage device, the buffer storage device has a small capacity, so that the number of files that can be stored is further reduced.
【0005】[0005]
【発明が解決しようとする課題】前述したように従来の
ステージング方式では、バッファ記憶装置は小容量のた
めに保持できるファイル数が少なく、要求されたファイ
ルがバッファ記憶装置内に存在しない場合が頻発する。
このような場合、2次記憶装置にアクセスする必要が生
じ、システムのスループットを低下させるという欠点が
あった。As described above, in the conventional staging method, the buffer storage device has a small capacity, so that the number of files that can be held is small, and the requested file often does not exist in the buffer storage device. I do.
In such a case, it is necessary to access the secondary storage device, and there is a disadvantage that the system throughput is reduced.
【0006】本発明は、上記に鑑みてなされたもので、
その目的とするところは、バッファ記憶装置に記憶され
たファイルに対するヒット率を大幅に向上し、システム
のスループットを向上した記憶システム制御方式を提供
することにある。[0006] The present invention has been made in view of the above,
It is an object of the present invention to provide a storage system control method in which a hit rate for a file stored in a buffer storage device is significantly improved, and a system throughput is improved.
【0007】[0007]
【課題を解決するための手段】上記目的を達成するた
め、本発明の記憶システム制御方式は、全ファイルを記
憶している大容量の2次記憶手段と、該2次記憶手段に
記憶されているファイルのうちの一部のファイルの全体
および前記2次記憶手段に記憶されているファイルのう
ちの残りの一部のファイルの一部を記憶する高速なバッ
ファ記憶手段と、所望のファイルに対してアクセスが生
じたとき、該所望のファイルが前記バッファ記憶手段内
に記憶されているか否かを判定する判定手段と、該判定
手段の判定結果に基づいて前記所望のファイルの全体が
前記バッファ記憶手段に記憶されていると判定されたと
き、前記所望のファイルの全体を前記バッファ記憶手段
から読み出し、前記所望のファイルの一部が前記バッフ
ァ記憶手段に記憶されていると判定されたとき、前記所
望のファイルの一部を前記バッファ記憶手段から読み出
すとともに該所望のファイルの残りの部分を前記2次記
憶手段から読み出し、前記所望のファイルが前記バッフ
ァ記憶手段に記憶されていないと判定されたとき、前記
所望のファイルを前記2次記憶手段から読み出すように
制御する読み出し制御手段と、ファイルへのアクセス回
数に基づいて前記バッファ記憶手段に記憶されるファイ
ルを決定する決定手段とを有することを要旨とする。In order to achieve the above object, a storage system control method according to the present invention comprises: a large-capacity secondary storage means for storing all files; High-speed buffer storage means for storing the entirety of some of the files and the remaining part of the files stored in the secondary storage means; A determination unit that determines whether the desired file is stored in the buffer storage unit when an access occurs, and the entirety of the desired file is stored in the buffer storage based on the determination result of the determination unit. When it is determined that the desired file is stored in the buffer storage unit, the entirety of the desired file is read out from the buffer storage unit, and a part of the desired file is stored in the buffer storage unit. When it is determined that the file has been read, a part of the desired file is read from the buffer storage means, and a remaining part of the desired file is read from the secondary storage means, and the desired file is stored in the buffer storage means. When it is determined that the file is not stored, a read control unit that controls to read the desired file from the secondary storage unit and a file to be stored in the buffer storage unit are determined based on the number of times of access to the file. It is a gist of the present invention to have a determining means for performing the determination.
【0008】[0008]
【作用】本発明の記憶システム制御方式では、大容量の
2次記憶手段に記憶されているファイルのうちの一部の
ファイルの全体および残りの一部のファイルの一部を高
速処理が可能なバッファ記憶手段に記憶し、所望のファ
イルに対してアクセスが生じたとき、該所望のファイル
が前記バッファ記憶手段内に記憶されているか否かを判
定し、所望のファイルの全体がバッファ記憶手段に記憶
されているとき、所望のファイルの全体をバッファ記憶
手段から読み出し、所望のファイルの一部がバッファ記
憶手段に記憶されているとき、所望のファイルの一部を
バッファ記憶手段から読み出すとともに所望のファイル
の残りの部分を2次記憶手段から読み出し、所望のファ
イルがバッファ記憶手段に記憶されていないとき、所望
のファイルを2次記憶手段から読み出すように制御して
いる。また前記バッファ記憶手段へのファイルの記憶に
際しては、決定手段がファイルへのアクセス回数に基づ
いて前記バッファ記憶手段に記憶されるファイルを決定
するようにしている。According to the storage system control method of the present invention, it is possible to perform high-speed processing on all of the files and some of the remaining files among the files stored in the large-capacity secondary storage means. When the desired file is accessed in the buffer storage means, it is determined whether or not the desired file is stored in the buffer storage means, and the entire desired file is stored in the buffer storage means. When stored, the entirety of the desired file is read from the buffer storage means. When a part of the desired file is stored in the buffer storage means, a part of the desired file is read from the buffer storage means and the desired file is read. The remaining part of the file is read from the secondary storage means, and when the desired file is not stored in the buffer storage means, the desired file is And it is controlled so as to read from 憶 means. When storing a file in the buffer storage unit, the determination unit determines a file to be stored in the buffer storage unit based on the number of accesses to the file.
【0009】[0009]
【実施例】以下、図面を用いて本発明の実施例を説明す
る。Embodiments of the present invention will be described below with reference to the drawings.
【0010】図1は本発明の一実施例に係わる記憶シス
テム制御方式の構成を示すブロック図である。同図に示
す記憶システム制御方式は、1つ以上の制御装置10と
接続された2次記憶装置20、バッファ記憶装置30か
らなる。バッファ記憶装置30はファイル全体領域3
1、ファイル一部領域32に分割されている。ファイル
全体領域31は一個のファイルの全体を複数ファイル保
持しておく領域、ファイル一部領域32は一個のファイ
ルの先頭からの一部を複数ファイル保持しておく領域で
ある。ファイルの先頭からの一部を保持しておく理由は
次のようである。制御装置10から2次記憶装置20へ
ファイルアクセス要求をしてからファイルが制御装置1
0に転送開始されるまでの時間と、制御装置10がファ
イル要求元との間でファイルの先頭からの一部を処理す
る時間とをほぼ等しくなるようにする。ファイルの先頭
からの一部を処理している間に、それに引き続いたファ
イルを2次記憶装置20から転送し、時間遅れを生じな
いで一ファイルを連続的に処理する。この連続性を保つ
ために、必要なファイルの先頭からの一部をファイル一
部領域32に保持しておく。ファイルの先頭からの一部
に必要な記憶容量は、記憶システム全体の要求性能、機
能等、2次記憶装置20の性能、構成等、バッファ記憶
装置30の性能、容量等を勘案して決定する。FIG. 1 is a block diagram showing a configuration of a storage system control system according to an embodiment of the present invention. The storage system control method shown in FIG. 1 includes a secondary storage device 20 and a buffer storage device 30 connected to one or more control devices 10. The buffer storage device 30 stores the entire file area 3
1. It is divided into a file partial area 32. The whole file area 31 is an area for holding a plurality of files of one entire file, and the file partial area 32 is an area for holding a plurality of files from the beginning of one file. The reason for keeping a part from the beginning of the file is as follows. After a file access request is made from the control device 10 to the secondary storage device 20, the file is
The time until the transfer is started to 0 and the time when the control device 10 processes a part of the file from the head of the file with the file request source are set to be substantially equal. While processing a part of the file from the beginning, the subsequent file is transferred from the secondary storage device 20, and one file is continuously processed without a time delay. In order to maintain this continuity, a part of the required file from the beginning is held in the file partial area 32. The storage capacity required for a part of the file from the beginning is determined in consideration of the required performance and functions of the entire storage system, the performance and configuration of the secondary storage device 20, the performance and capacity of the buffer storage device 30, and the like. .
【0011】制御装置10と2次記憶装置20は、接続
線40で接続されている。制御装置10とバッファ記憶
装置30は接続線50で接続されている。制御装置10
はファイルテーブル11、バッファ記憶容量テーブル1
2を具備している。The control device 10 and the secondary storage device 20 are connected by a connection line 40. The control device 10 and the buffer storage device 30 are connected by a connection line 50. Control device 10
Is the file table 11, the buffer storage capacity table 1
2 is provided.
【0012】図2は各テーブルの構成例を示したもので
ある。図2(a)はファイルテーブル11の構成を示
す。このファイルテーブル11は、記憶システムに保持
されている全ファイルに関し、ファイルのファイル名、
バッファ記憶装置30に該当ファイルが存在しているか
否かを示すステージング識別フラグ、該当ファイル全体
の容量、該当ファイルの先頭からの一部をファイル一部
領域32に保持すべき時の容量、該当ファイルへの最新
アクセス時間、該当ファイルへのアクセス回数が記憶さ
れている。ステージング識別フラグには、バッファ記憶
装置30が該当ファイルの写しを保持していない時には
例えば0を、該当ファイルの全体の写しを保持している
(ファイル全体領域31に保持している)時には例えば
1を、該当ファイルの先頭からの一部の写しを保持して
いる(ファイル一部領域32に保持している)時には例
えば2を、該当ファイルがバッファ記憶装置30には保
持しているが2次記憶装置20には保持していない時に
は例えば3を記憶する。また、該当ファイルをバッファ
記憶装置30と2次記憶装置20両方に保持している
が、バッファ記憶装置30内のファイル全体領域31、
ファイル一部領域32に保持しているファイルが更新さ
れている時には例えば各々4,5をステージング識別フ
ラグに記憶する。該当ファイルへのアクセス回数は、2
次記憶装置20内のファイル、及びファイル一部領域3
2内のファイルにアクセスしたときの通算回数を計数す
るものであり、後述するスレッシュホールドαが設けら
れている。FIG. 2 shows a configuration example of each table. FIG. 2A shows the configuration of the file table 11. This file table 11 contains the file names of the files for all the files held in the storage system.
A staging identification flag indicating whether or not the file exists in the buffer storage device 30; the capacity of the entire file; the capacity when a part from the beginning of the file is to be held in the file partial area 32; The latest access time to the file and the number of times to access the file are stored. In the staging identification flag, for example, 0 when the buffer storage device 30 does not hold a copy of the file, and 1 when the buffer storage device 30 holds a copy of the entire file (in the entire file area 31). Is stored in the buffer storage device 30 when a copy of the file from the beginning of the file is held (held in the file partial area 32), for example. When not stored in the storage device 20, for example, 3 is stored. The corresponding file is stored in both the buffer storage device 30 and the secondary storage device 20, but the entire file area 31 in the buffer storage device 30,
When the file held in the file partial area 32 is updated, for example, 4 and 5, respectively, are stored in the staging identification flag. The number of accesses to the file is 2
File in the secondary storage device 20 and file partial area 3
2 is a counter for counting the total number of times of accessing the file in 2, and a threshold α described later is provided.
【0013】図2(b)はバッファ記憶容量テーブル1
2の構成を示す。ファイル全体領域31、ファイル一部
領域32の既使用容量と未使用容量が記憶されており、
既使用容量は後述する各々スレッシュホールドβ,γが
設けられている。FIG. 2B shows a buffer storage capacity table 1.
2 is shown. The used capacity and the unused capacity of the entire file area 31 and the partial file area 32 are stored.
The used capacity is provided with thresholds β and γ, respectively, which will be described later.
【0014】図3はファイルの新規書き込み時における
制御フロー例を示したものである。新規ファイル61を
記憶システムに書き込む必要が生じた場合(ステップ6
00)、制御装置10はバッファ記憶容量テーブル12
を参照し、ファイル全体領域31の既使用容量があるス
レッシュホールドβを越えているか否かを判定する(ス
テップ601)。βを越えていなかったら、接続線50
を通じてバッファ記憶装置30内のファイル全体領域3
1の未使用領域に新規ファイル61を書き込み、ファイ
ルテーブル11、バッファ記憶容量テーブル12を更新
する(ステップ604)。以後、テーブル類の更新は必
要に応じて行うこととして記述を省略するが、特に説明
が必要な場合は記述する。FIG. 3 shows an example of a control flow when a file is newly written. When it is necessary to write the new file 61 into the storage system (step 6)
00), the control device 10
, It is determined whether or not the used capacity of the entire file area 31 exceeds a certain threshold β (step 601). If it does not exceed β, connect line 50
File area 3 in buffer storage device 30 through
The new file 61 is written in the unused area of No. 1 and the file table 11 and the buffer storage capacity table 12 are updated (step 604). Hereinafter, updating of the tables and the like will be performed as needed, and the description will be omitted. However, if description is particularly necessary, the description will be made.
【0015】βを越えていたら、バッファ記憶容量テー
ブル12を参照し、ファイル一部領域32の既使用容量
があるスレッシュホールドγを越えているか否かを判定
する(ステップ602)。γを越えていなかったら、フ
ァイルテーブル11の最新アクセス時間を参照し、公知
のLRU(Least Recently Used)アルゴリズム等を用い
てファイル全体領域31からファイル一部領域32へ移
す(デステージングと呼ぶ)べきファイル62を決定
し、ファイル一部領域32の未使用領域にファイル62
の先頭から一部を書き込み、ファイル全体領域31のフ
ァイル62の領域を未使用領域とし、ファイルテーブル
11のファイル62に関するアクセス回数を0とする
(ステップ603)。その後、新規ファイル61をファ
イル全体領域31の未使用領域に書き込む(ステップ6
04)。If it exceeds β, it is determined whether or not the used capacity of the file partial area 32 exceeds a certain threshold γ by referring to the buffer storage capacity table 12 (step 602). If it does not exceed γ, the latest access time of the file table 11 is referred to, and the entire file area 31 is moved to the file partial area 32 by using a known LRU (Least Recently Used) algorithm or the like (referred to as destaging). The file 62 is determined, and the file 62 is stored in an unused area of the file partial area 32.
Is written from the beginning, the area of the file 62 of the entire file area 31 is set as an unused area, and the number of accesses to the file 62 of the file table 11 is set to 0 (step 603). Thereafter, the new file 61 is written to an unused area of the entire file area 31 (step 6).
04).
【0016】γを越えていたら、LRUアルゴリズム等
を用いてファイル一部領域32から2次記憶装置20へ
デステージングすべきファイル63を決定し、ファイル
63の領域を未使用領域とし、ファイルテーブル11の
ファイル63に関するアクセス回数に1を減じて更新す
る(ステップ605)。その後、ファイル全体領域31
からファイル一部領域32の未使用領域にファイル62
の先頭から一部を書き込み、ファイル全体領域31のフ
ァイル62の領域を未使用領域とし、ファイルテーブル
11のファイル62に関するアクセス回数に1を減じて
更新する(ステップ603)。ファイル全体領域31の
未使用領域に新規ファイル61を書き込む(ステップ6
04)。If the value exceeds γ, the file 63 to be destaged from the partial file area 32 to the secondary storage device 20 is determined using the LRU algorithm or the like, the area of the file 63 is set as an unused area, and the file table 11 is used. The number of times of access to the file 63 is updated by subtracting 1 (step 605). Then, the entire file area 31
From the file 62 to the unused area of the file partial area 32
Is written from the beginning, the area of the file 62 in the entire file area 31 is set as an unused area, and the number of accesses to the file 62 in the file table 11 is updated by subtracting 1 (step 603). The new file 61 is written in the unused area of the entire file area 31 (step 6).
04).
【0017】図4はファイルの読みだし時における制御
フロー例を示したものである。ファイル71を記憶シス
テムから読みだす必要が生じた場合(ステップ70
0)、制御装置10はファイルテーブル11を参照し、
ファイル全体領域31に該当ファイル71が存在するか
を判定する(ステップ701)。ファイル71が存在し
たら、ファイル全体領域31からファイル71を読みだ
し、必要な処理を行う(ステップ702)。FIG. 4 shows an example of a control flow at the time of reading a file. When it is necessary to read the file 71 from the storage system (step 70)
0), the control device 10 refers to the file table 11 and
It is determined whether the corresponding file 71 exists in the entire file area 31 (step 701). If the file 71 exists, the file 71 is read from the entire file area 31 and necessary processing is performed (step 702).
【0018】ファイル71が存在しなかったら、ファイ
ルテーブル11を参照し、ファイル一部領域32にファ
イル71の先頭からの一部が存在するかを判定する(ス
テップ703)。ファイル71の先頭からの一部がファ
イル一部領域32に存在したら、ファイル一部領域32
からファイル71を読みだす(ステップ704)。これ
と同時に、ファイル一部領域32に記憶されているファ
イル71の一部に引き続いたファイル71の残りを読み
だすべく、接続線40を通じて2次記憶装置20へ命令
する(ステップ705)。2次記憶装置20はファイル
71の残りの部分を該当媒体から読みだして接続線40
を通じて制御装置10に転送し、制御装置10は必要な
処理を行う(ステップ706)。If the file 71 does not exist, it is determined whether or not a part from the beginning of the file 71 exists in the file partial area 32 by referring to the file table 11 (step 703). If a part from the beginning of the file 71 exists in the file partial area 32, the file partial area 32
The file 71 is read out from (step 704). At the same time, a command is sent to the secondary storage device 20 through the connection line 40 to read the rest of the file 71 following the part of the file 71 stored in the file partial area 32 (step 705). The secondary storage device 20 reads the remaining portion of the file 71 from the corresponding medium and
The control device 10 performs necessary processing (step 706).
【0019】さらに、制御装置10はファイルテーブル
11のファイル71に関するアクセス回数に1を加えて
更新し、アクセス回数があるスレッシュホールドαを越
えているかを判定する(ステップ707)。αを越えて
いなかったら終了する。αを越えていたら、ファイル全
体領域31の既使用容量がβを越えているかを判定する
(ステップ708)。βを越えていなかったら、ファイ
ル71の全体をファイル全体領域31の未使用領域に書
き込む(ステップ709)。βを越えていたら、バッフ
ァ記憶容量テーブル12を参照し、ファイル一部領域3
2の既使用容量がγを越えていないかを判定する(ステ
ップ710)。γを越えていなかったら、LRUアルゴ
リズム等を用いてファイル全体領域31からファイル一
部領域32へデステージングすべきファイル72を決定
し、ファイル一部領域32の未使用領域にファイル72
の先頭から一部を書き込み、ファイル一部領域32のフ
ァイル72の領域を未使用領域とし、ファイルテーブル
11のファイル72に関するアクセス回数に1を減じて
更新する(ステップ711)。その後、ファイル71を
ファイル全体領域31の未使用領域に書き込む(ステッ
プ712)。Further, the control device 10 updates the number of accesses to the file 71 in the file table 11 by adding 1, and determines whether the number of accesses exceeds a certain threshold α (step 707). If it does not exceed α, the processing ends. If it exceeds α, it is determined whether the used capacity of the entire file area 31 exceeds β (step 708). If β has not been exceeded, the entire file 71 is written to an unused area of the entire file area 31 (step 709). If it exceeds β, the buffer storage capacity table 12 is referred to and the file partial area 3
It is determined whether or not the used capacity of No. 2 has exceeded γ (step 710). If it does not exceed γ, the file 72 to be destaged from the entire file area 31 to the partial file area 32 is determined using the LRU algorithm or the like, and the file 72 is stored in an unused area of the partial file area 32.
Of the file 72 in the file partial area 32 is set as an unused area, and the number of accesses to the file 72 in the file table 11 is reduced by 1 and updated (step 711). Thereafter, the file 71 is written to an unused area of the entire file area 31 (step 712).
【0020】ステップ710においてγを越えていた
ら、LRUアルゴリズム等を用いてファイル一部領域3
2から2次記憶装置20へデステージングすべきファイ
ル73を決定し、ファイル73の領域を未使用領域と
し、ファイルテーブル11のファイル73に関するアク
セス回数に1を減じて更新する(ステップ713)。そ
の後、ファイル全体領域31からファイル一部領域32
の未使用領域にファイル72を書き込む。ファイル全体
領域31のファイル72の領域を未使用領域とし、ファ
イルテーブル11のファイル72に関するアクセス回数
に1を減じて更新する(ステップ711)。ファイル全
体領域31の未使用領域にファイル71を書き込む(ス
テップ712)。If it exceeds γ in step 710, the file partial area 3 is
The file 73 to be destaged from the second to the secondary storage device 20 is determined, the area of the file 73 is set as an unused area, and the number of accesses to the file 73 in the file table 11 is reduced by 1 and updated (step 713). After that, the entire file area 31 to the partial file area 32
The file 72 is written in the unused area of. The area of the file 72 in the entire file area 31 is set as an unused area, and the number of accesses to the file 72 in the file table 11 is updated by subtracting 1 (step 711). The file 71 is written in an unused area of the entire file area 31 (step 712).
【0021】ステップ703のチェックにおいて、ファ
イル71の一部がファイル一部領域32に存在しなかっ
たら、ファイル71を読みだすように2次記憶装置20
へ命令する(ステップ714)。2次記憶装置20はフ
ァイル71を読みだして制御装置10に転送し、制御装
置10は必要な処理を行う(ステップ715)。さら
に、制御装置10はバッファ記憶容量テーブル12を参
照し、ファイル一部領域32の既使用容量がγを越えて
いるかを判定する(ステップ716)。γを越えていな
かったら、ファイル71の先頭の一部をファイル一部領
域32の未使用領域に書き込む(ステップ717)。γ
を越えていたら、LRUアルゴリズム等を用いてファイ
ル一部領域32から2次記憶装置20へデステージング
すべきファイル73を決定する。ファイル73の領域を
未使用領域とし、ファイルテーブル11のファイル73
に関するアクセス回数に1を減じて更新する(ステップ
718)。その後、ファイル一部領域32の未使用領域
にファイル71の先頭の一部を書き込む(ステップ71
7)。If it is determined in step 703 that a part of the file 71 does not exist in the file partial area 32, the secondary storage device 20 reads the file 71 so that the file 71 is read.
(Step 714). The secondary storage device 20 reads the file 71 and transfers it to the control device 10, and the control device 10 performs necessary processing (step 715). Further, the control device 10 refers to the buffer storage capacity table 12 and determines whether the used capacity of the file partial area 32 exceeds γ (step 716). If it does not exceed γ, a part of the head of the file 71 is written to an unused area of the file partial area 32 (step 717). γ
Is exceeded, the file 73 to be destaged from the file partial area 32 to the secondary storage device 20 is determined using the LRU algorithm or the like. The area of the file 73 is set as an unused area, and the file 73 of the file table 11 is used.
The number of times of access is reduced by 1 and updated (step 718). Thereafter, a part of the head of the file 71 is written into an unused area of the file partial area 32 (step 71).
7).
【0022】図5はファイルの更新時における制御フロ
ー例を示したものである。ファイル81を更新する必要
が生じた場合(ステップ800)、制御装置10はファ
イルテーブル11を参照し、ファイル全体領域31に該
当ファイル81が存在するかを判定する(ステップ80
1)。ファイル81が存在したら、ファイル全体領域3
1のファイル81を更新する(ステップ802)。ファ
イル81が存在しなかったら、ファイルテーブル11を
参照し、ファイル一部領域32にファイル81の先頭か
らの一部が存在するかを判定する(ステップ803)。FIG. 5 shows an example of a control flow when updating a file. When the file 81 needs to be updated (step 800), the control device 10 refers to the file table 11 and determines whether the file 81 exists in the entire file area 31 (step 80).
1). If the file 81 exists, the entire file area 3
The first file 81 is updated (step 802). If the file 81 does not exist, it is determined whether or not a part from the beginning of the file 81 exists in the file partial area 32 by referring to the file table 11 (step 803).
【0023】ファイル81の先頭からの一部がファイル
一部領域32に存在したら、ファイル一部領域32のフ
ァイル81の先頭からの一部を更新する(ステップ80
4)。もしファイル81の先頭からの一部に引き続いた
ファイル81の残りの部分を更新する必要があれば、フ
ァイル81の残りの部分を読みだすように2次記憶装置
20へ命令する(ステップ805)。2次記憶装置20
はファイル81の残りの部分を読みだして制御装置10
に転送し、制御装置10はファイル81の残りの部分を
更新する(ステップ806)。さらに、制御装置10は
ファイルテーブル11のファイル81に関するアクセス
回数に1を加えて更新し、アクセス回数がαを越えてい
るかを判定する(ステップ807)。αを越えていなか
ったら終了する。If a part of the file 81 from the beginning exists in the file partial area 32, a part of the file 81 in the file partial area 32 from the beginning is updated (step 80).
4). If it is necessary to update the remaining part of the file 81 following the part from the beginning of the file 81, the secondary storage device 20 is instructed to read the remaining part of the file 81 (step 805). Secondary storage device 20
Reads out the rest of the file 81 and
And the control device 10 updates the remaining part of the file 81 (step 806). Further, the control device 10 updates the number of accesses to the file 81 in the file table 11 by adding 1 to the file, and determines whether the number of accesses exceeds α (step 807). If it does not exceed α, the processing ends.
【0024】αを越えていたら、ファイル全体領域31
がβを越えているかを判定する(ステップ808)。β
を越えていなかったら、ファイル81の全体をファイル
全体領域31の未使用領域に書き込む(ステップ80
9)。βを越えていたら、ファイルテーブル11を参照
し、ファイル一部領域32の既使用領域がγを越えてい
るかを判定する(ステップ810)。γを越えていなか
ったら、LRUアルゴリズム等を用いてファイル全体領
域31からファイル一部領域32へデステージングすべ
きファイル82を決定し、ファイル一部領域32の未使
用領域にファイル82の先頭から一部を書き込む。ファ
イル一部領域32のファイル82の領域を未使用領域と
し、ファイルテーブル11のファイル82に関するアク
セス回数に1を減じて更新する(ステップ811)。そ
の後、ファイル81をファイル全体領域31の未使用領
域に書き込む(ステップ812)。ステップ810のチ
ェックでγを越えていたら、LRUアルゴリズム等を用
いてファイル一部領域32から2次記憶装置20へデス
テージングすべきファイル83を決定する。ファイル8
3の領域を未使用領域とし、ファイルテーブル11のフ
ァイル83に関するアクセス回数に1を減じて更新する
(ステップ813)。その後、ファイル全体領域31か
らファイル一部領域32の未使用領域にファイル82を
書き込み、ファイル全体領域31のファイル82の領域
を未使用領域とし、ファイルテーブル11のファイル8
2に関するアクセス回数に1を減じて更新する(ステッ
プ811)。ファイル全体領域31の未使用領域にファ
イル81を書き込む(ステップ812)。If it exceeds α, the entire file area 31
Is greater than β (step 808). β
Otherwise, the entire file 81 is written to an unused area of the entire file area 31 (step 80).
9). If it exceeds β, it is determined whether the used area of the file partial area 32 exceeds γ by referring to the file table 11 (step 810). If it does not exceed γ, the file 82 to be destaged from the entire file area 31 to the partial file area 32 is determined by using the LRU algorithm or the like, and the unused area of the partial file area 32 is shifted from the beginning of the file 82 by one. Write the part. The area of the file 82 in the file partial area 32 is set as an unused area, and the number of accesses to the file 82 in the file table 11 is updated by subtracting 1 (step 811). Thereafter, the file 81 is written to an unused area of the entire file area 31 (step 812). If the value exceeds γ in the check in step 810, the file 83 to be destaged from the partial file area 32 to the secondary storage device 20 is determined using the LRU algorithm or the like. File 8
The area of No. 3 is set as an unused area, and the number of accesses to the file 83 in the file table 11 is updated by subtracting 1 (step 813). After that, the file 82 is written from the entire file area 31 to an unused area of the file partial area 32, the area of the file 82 of the entire file area 31 is set as an unused area, and the file 8 of the file table 11 is used.
The number of accesses for 2 is updated by subtracting 1 (step 811). The file 81 is written in an unused area of the entire file area 31 (step 812).
【0025】ステップ803のチェックにおいてファイ
ル81の一部がファイル一部領域32に存在しなかった
ら、ファイル81を読みだすように2次記憶装置20へ
命令する(ステップ814)。2次記憶装置20はファ
イル81を読みだして制御装置10に転送する。制御装
置10はファイル81を更新し、ファイルテーブル11
のファイル81に関するアクセス回数に1を加えて更新
する(ステップ815)。さらに、制御装置10はバッ
ファ記憶容量テーブル12を参照し、ファイル一部領域
32の既使用容量がγを越えていないかを判定する(ス
テップ816)。γを越えていなかったら、ファイル8
1の先頭の一部をファイル一部領域32の未使用領域に
書き込む(ステップ817)。γを越えていたら、LR
Uアルゴリズム等を用いてファイル一部領域32から2
次記憶装置20へデステージングすべきファイル83を
決定する。ファイル83の領域を未使用領域とし、ファ
イルテーブル11のファイル83に関するアクセス回数
に1を減じて更新する(ステップ818)。その後、フ
ァイル一部領域32の未使用領域にファイル81の先頭
の一部を書き込む(ステップ817)。If a part of the file 81 does not exist in the file partial area 32 in the check in the step 803, a command is issued to the secondary storage device 20 to read the file 81 (step 814). The secondary storage device 20 reads the file 81 and transfers it to the control device 10. The control device 10 updates the file 81 and updates the file table 11
The number of accesses to the file 81 is incremented by 1 and updated (step 815). Further, the control device 10 refers to the buffer storage capacity table 12 and determines whether the used capacity of the file partial area 32 does not exceed γ (step 816). If it does not exceed γ, file 8
The first part of 1 is written to an unused area of the file partial area 32 (step 817). If γ is exceeded, LR
Using the U algorithm or the like, the file partial area 32 to 2
The file 83 to be destaged to the next storage device 20 is determined. The area of the file 83 is set as an unused area, and the number of accesses to the file 83 in the file table 11 is updated by subtracting 1 (step 818). Thereafter, a part of the head of the file 81 is written in an unused area of the file partial area 32 (step 817).
【0026】なお、新規ファイル61、更新ファイル8
1の2次記憶装置20への書き込みは、ファイルテーブ
ル11のステージング識別フラグを参照し、システムの
要求性能等を勘案してリアルタイムで行うかオフライン
で行うかを決めれば良い。The new file 61 and the updated file 8
1 may be written to the secondary storage device 20 by referring to the staging identification flag of the file table 11 and determining whether to perform the processing in real time or offline in consideration of the required performance of the system.
【0027】以上本実施例では、2次記憶装置20は固
定媒体記憶装置のように述べたが、可換媒体を自動的に
交換する媒体自動交換型記憶装置(駆動装置、媒体自動
交換装置、媒体格納庫等から構成される)でも、本実施
例により当業者に容易に理解されるであろう。また、本
実施例で用いたテーブル類の書式、制御フロー例は一例
であって、本発明の具体的な実施方法に応じて任意に設
計し得るものである。In this embodiment, the secondary storage device 20 is described as a fixed medium storage device. However, an automatic medium exchange type storage device (drive device, automatic medium exchange device, However, those skilled in the art can easily understand the present embodiment by using the present embodiment. Further, the format of the tables and the example of the control flow used in the present embodiment are merely examples, and can be arbitrarily designed according to a specific implementation method of the present invention.
【0028】[0028]
【発明の効果】以上説明したように、本発明によれば、
2次記憶手段に記憶されているファイルのうちの一部の
ファイルの全体および残りの一部のファイルの一部をバ
ッファ記憶手段に記憶し、所望のファイルに対してアク
セスが生じたとき、該所望のファイルが前記バッファ記
憶手段内に記憶されているか否かを判定し、所望のファ
イルの全体がバッファ記憶手段に記憶されているとき、
所望のファイルの全体をバッファ記憶手段から読み出
し、所望のファイルの一部がバッファ記憶手段に記憶さ
れているとき、所望のファイルの一部をバッファ記憶手
段から読み出すとともに所望のファイルの残りの部分を
2次記憶手段から読み出し、所望のファイルがバッファ
記憶手段に記憶されていないとき、所望のファイルを2
次記憶手段から読み出すように制御しているので、従来
の方式に比較して、大量のファイルをバッファ記憶手段
に記憶することができ、バッファ記憶手段に記憶された
ファイルに対するヒット率を飛躍的に高めることがで
き、更に所望のファイルの一部がバッファ記憶手段に記
憶しているときには、所望のファイルをバッファ記憶手
段から読み出している間に、2次記憶手段をアクセスし
て、該2次記憶手段から該所望のファイルの残りの部分
を遅れなく読み出すことができ、システムの性能の低下
を防止することができる。また、バッファ記憶手段に記
憶するファイルはアクセス回数により決定されるので、
例えば間違ったファイルへのアクセス(このようなアク
セスは通常1回のみである)に対して、間違ったファイ
ルをバッファ記憶手段にステージングすることを防止
し、バッファ記憶手段を有効に活用することができる。As described above, according to the present invention,
The whole of a part of the files stored in the secondary storage means and a part of the remaining part of the files are stored in the buffer storage means, and when a desired file is accessed, the It is determined whether or not a desired file is stored in the buffer storage means, and when the entirety of the desired file is stored in the buffer storage means,
The entire desired file is read from the buffer storage means, and when a part of the desired file is stored in the buffer storage means, a part of the desired file is read from the buffer storage means and the remaining part of the desired file is read. When the desired file is not stored in the buffer storage means, the desired file is read from the secondary storage means.
Since control is performed so as to read from the next storage means, a large number of files can be stored in the buffer storage means as compared with the conventional method, and the hit rate for the files stored in the buffer storage means is dramatically increased. When a part of a desired file is stored in the buffer storage unit, the secondary storage unit is accessed while the desired file is being read from the buffer storage unit. The remaining part of the desired file can be read from the means without delay, and a decrease in system performance can be prevented. Also, the file stored in the buffer storage means is determined by the number of accesses,
For example, when an incorrect file is accessed (such access is usually performed only once), the staging of the wrong file in the buffer storage unit can be prevented, and the buffer storage unit can be effectively used. .
【図1】本発明の一実施例に係わる記憶システム制御方
式の構成を示すブロック図である。FIG. 1 is a block diagram showing a configuration of a storage system control method according to an embodiment of the present invention.
【図2】図1に示した記憶システム制御方式に使用され
るファイルテーブルおよびバッファ記憶容量テーブルの
構成を示す図である。FIG. 2 is a diagram showing a configuration of a file table and a buffer storage capacity table used in the storage system control method shown in FIG.
【図3】図1の記憶システム制御方式のファイル書き込
み時の作用を示すフローチャートである。FIG. 3 is a flowchart showing an operation at the time of writing a file in the storage system control method of FIG. 1;
【図4】図1の記憶システム制御方式のファイル読み出
し時の作用を示すフローチャートである。FIG. 4 is a flowchart showing an operation at the time of reading a file in the storage system control method of FIG. 1;
【図5】図1の記憶システム制御方式のファイル更新時
の作用を示すフローチャートである。FIG. 5 is a flowchart showing an operation at the time of updating a file in the storage system control method of FIG. 1;
10 制御装置 11 ファイルテーブル 12 バッファ記憶装置テーブル 30 バッファ記憶装置 31 ファイル全体領域 32 ファイル一部領域 Reference Signs List 10 control device 11 file table 12 buffer storage device table 30 buffer storage device 31 entire file area 32 partial file area
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 3/06──────────────────────────────────────────────────続 き Continued on front page (58) Field surveyed (Int.Cl. 6 , DB name) G06F 3/06
Claims (1)
記憶手段と、 該2次記憶手段に記憶されているファイルのうちの一部
のファイルの全体および前記2次記憶手段に記憶されて
いるファイルのうちの残りの一部のファイルの一部を記
憶する高速なバッファ記憶手段と、 所望のファイルに対してアクセスが生じたとき、該所望
のファイルが前記バッファ記憶手段内に記憶されている
か否かを判定する判定手段と、 該判定手段の判定結果に基づいて前記所望のファイルの
全体が前記バッファ記憶手段に記憶されていると判定さ
れたとき、前記所望のファイルの全体を前記バッファ記
憶手段から読み出し、前記所望のファイルの一部が前記
バッファ記憶手段に記憶されていると判定されたとき、
前記所望のファイルの一部を前記バッファ記憶手段から
読み出すとともに該所望のファイルの残りの部分を前記
2次記憶手段から読み出し、前記所望のファイルが前記
バッファ記憶手段に記憶されていないと判定されたと
き、前記所望のファイルを前記2次記憶手段から読み出
すように制御する読み出し制御手段と、 ファイルへのアクセス回数に基づいて前記バッファ記憶
手段に記憶されるファイルを決定する決定手段とを有す
ることを特徴とする記憶システム制御方式。1. A large-capacity secondary storage means for storing all files, a part of the files stored in the secondary storage means, and the whole of the files stored in the secondary storage means. A high-speed buffer storing means for storing a part of the remaining files among the files being read, and when the desired file is accessed, the desired file is stored in the buffer storing means. Determining means for determining whether or not the entirety of the desired file is stored in the buffer storage means based on the determination result of the determining means; Read from the buffer storage means, when it is determined that a part of the desired file is stored in the buffer storage means,
A part of the desired file is read from the buffer storage means, and a remaining part of the desired file is read from the secondary storage means, and it is determined that the desired file is not stored in the buffer storage means. In the above, it is preferable that the apparatus further comprises: read control means for controlling the desired file to be read from the secondary storage means; and determination means for determining a file to be stored in the buffer storage means based on the number of accesses to the file. Characteristic storage system control method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3019037A JP2773986B2 (en) | 1991-02-12 | 1991-02-12 | Storage system control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3019037A JP2773986B2 (en) | 1991-02-12 | 1991-02-12 | Storage system control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04257018A JPH04257018A (en) | 1992-09-11 |
JP2773986B2 true JP2773986B2 (en) | 1998-07-09 |
Family
ID=11988241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3019037A Expired - Fee Related JP2773986B2 (en) | 1991-02-12 | 1991-02-12 | Storage system control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2773986B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8682853B2 (en) | 2008-05-16 | 2014-03-25 | Paraccel Llc | System and method for enhancing storage performance in analytical database applications |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0283614A (en) * | 1988-09-20 | 1990-03-23 | Fujitsu Ltd | Storage information readout system |
-
1991
- 1991-02-12 JP JP3019037A patent/JP2773986B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH04257018A (en) | 1992-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5226141A (en) | Variable capacity cache memory | |
JP3308554B2 (en) | Control device and control method of control device | |
JP3898782B2 (en) | Information recording / reproducing device | |
US8015352B2 (en) | Disk drive storage defragmentation system | |
TWI381272B (en) | Flash memory apparatus and access method to flash memory | |
EP1783595A2 (en) | Information processing system, control method for information processing system, and storage system | |
JPH09259033A (en) | Buffer write method | |
US5742789A (en) | Dynamically adaptive data retrieval for a disk drive storage system | |
US20040049638A1 (en) | Method for data retention in a data cache and data storage system | |
US6219750B1 (en) | Disk drive having control mechanism to reduce or eliminate redundant write operations and the method thereof | |
JP3543661B2 (en) | Buffer cache method and apparatus in exchange file system | |
US5900009A (en) | System and method for accessing records in a cache slot which are associated with a current owner storage element or at least one previous owner storage element | |
JP2773986B2 (en) | Storage system control method | |
JP3440032B2 (en) | Memory control device, facsimile device and image forming device | |
US20080154968A1 (en) | Data copy system apparatus and method | |
US20050223180A1 (en) | Accelerating the execution of I/O operations in a storage system | |
EP0656588B1 (en) | Storage device | |
JPH01303547A (en) | Control system for information memory | |
JP4197547B2 (en) | Data storage device and data management method | |
JP3200252B2 (en) | Disk cache control method | |
JP2636470B2 (en) | Data transfer path selection method | |
JP2634867B2 (en) | Disk cache data transfer control method | |
JP2973474B2 (en) | Magneto-optical disk drive | |
JP3282525B2 (en) | Data management device and network data management system | |
JPH08137753A (en) | Disk cache device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |