JPH11143745A - Data management system and data management method - Google Patents

Data management system and data management method

Info

Publication number
JPH11143745A
JPH11143745A JP9305927A JP30592797A JPH11143745A JP H11143745 A JPH11143745 A JP H11143745A JP 9305927 A JP9305927 A JP 9305927A JP 30592797 A JP30592797 A JP 30592797A JP H11143745 A JPH11143745 A JP H11143745A
Authority
JP
Japan
Prior art keywords
stripe
data
stripes
blocks
management system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP9305927A
Other languages
Japanese (ja)
Other versions
JP4131579B2 (en
Inventor
Kenji Miura
健治 三浦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP30592797A priority Critical patent/JP4131579B2/en
Publication of JPH11143745A publication Critical patent/JPH11143745A/en
Application granted granted Critical
Publication of JP4131579B2 publication Critical patent/JP4131579B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】m個のストライプに点在する有効データブロッ
クをn(m>n)個のストライプに詰め替える処理を効
率的に行なうデータ管理システムを提供する。 【解決手段】磁気ディスク装置18上のストライプそれ
ぞれの有効ブロック数および無効ブロック数の少なくと
も一方を保持するストライプ管理テーブル11を設け、
ストライプへのデータの格納およびストライプからのデ
ータの削除に応じて、このストライプ管理テーブル11
に保持されたそのストライプの有効ブロック数または無
効ブロック数の値を更新する。そして、m個のストライ
プに点在する有効データブロックをn(m>n)個のス
トライプに詰め替えるときには、実際のディスクアクセ
スを行なうことなく、このストライプ管理テーブル11
が保持する有効ブロック数および無効ブロック数の少な
くとも一方に基づいて、詰め替え処理の対象とするのに
最適なストライプを選択する。
(57) Abstract: Provided is a data management system for efficiently performing a process of repacking effective data blocks scattered in m stripes into n (m> n) stripes. A stripe management table for storing at least one of the number of valid blocks and the number of invalid blocks of each stripe on a magnetic disk device;
In accordance with storage of data in the stripe and deletion of data from the stripe, the stripe management table 11
Update the value of the number of valid blocks or the number of invalid blocks of the stripe stored in. Then, when rewriting effective data blocks scattered in m stripes into n (m> n) stripes, this stripe management table 11 can be used without performing actual disk access.
Selects the most suitable stripe to be subjected to the refilling process, based on at least one of the number of valid blocks and the number of invalid blocks held by.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、所定数のデータ
ブロックからなるストライプ単位で書き込みおよび読み
出しが行なわれる記憶装置に適用して好適なデータ管理
システムおよびデータ管理方法に係り、特にたとえばm
個のストライプに点在する有効データブロックをn(m
>n)個のストライプに詰め替える処理を効率的に実行
するデータ管理システムおよびデータ管理方法に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data management system and a data management method which are preferably applied to a storage device in which writing and reading are performed in a stripe unit composed of a predetermined number of data blocks.
The effective data blocks scattered in the stripes are represented by n (m
The present invention relates to a data management system and a data management method for efficiently executing a process of refilling> n) stripes.

【0002】[0002]

【従来の技術】近年、コンピュータの普及は目覚まし
く、大量のデータがコンピュータによって処理されてい
る。これらのデータは、記憶装置に格納されるが、この
記憶装置では、データを効率良く格納するために、所定
数のデータブロックからなるストライプ単位で書き込み
および読み出しが行なわれる。
2. Description of the Related Art In recent years, the spread of computers has been remarkable, and a large amount of data has been processed by computers. These data are stored in a storage device. In this storage device, writing and reading are performed in a stripe unit composed of a predetermined number of data blocks in order to store the data efficiently.

【0003】ところで、コンピュータによってデータ処
理が実行されると、当然にデータの更新が発生するが、
このデータ更新に伴なって、同一ストライプ上に有効な
データブロックと無効なデータブロックとが混在するよ
うになる。そして、記憶装置では、効率的にデータを格
納するために、たとえばm個のストライプに点在する有
効データブロックをn(m>n)個のストライプに詰め
替える詰め替え処理が必要となる。
When data processing is executed by a computer, data is naturally updated.
With this data update, valid data blocks and invalid data blocks are mixed on the same stripe. Then, in the storage device, in order to efficiently store data, for example, refilling processing for refilling valid data blocks scattered in m stripes into n (m> n) stripes is required.

【0004】[0004]

【発明が解決しようとする課題】このように、所定数の
データブロックからなるストライプ単位で書き込みおよ
び読み出しが行なわれる記憶装置は、m個のストライプ
に点在する有効データブロックをn(m>n)個のスト
ライプに詰め替える詰め替え処理を行なうことによっ
て、効率的なデータの格納が確保されている。
As described above, in a storage device in which writing and reading are performed in a stripe unit composed of a predetermined number of data blocks, the effective data blocks scattered in m stripes are n (m> n). By performing the refilling process for refilling into ()) stripes, efficient data storage is ensured.

【0005】しかしながら、この詰め替え処理において
は、詰替え処理の対象とするストライプを選択するとき
に、ストライプ中の有効ブロックおよび無効ブロックの
有無とそれらの数とが必要となる。従来では、このスト
ライプ中の有効ブロックおよび無効ブロックの有無を得
るために、たとえば磁気ディスク上のストライプに実際
にアクセスしていた。その結果、この磁気ディスクへの
アクセスによって、ホストシステムの入出力リクエスト
処理が妨げられる場合があった。
However, in this refilling process, when selecting a stripe to be refilled, it is necessary to determine whether there are valid blocks and invalid blocks in the stripe, and the number thereof. Conventionally, a stripe on a magnetic disk, for example, is actually accessed in order to obtain the presence / absence of valid and invalid blocks in the stripe. As a result, access to the magnetic disk may hinder input / output request processing of the host system.

【0006】この発明はこのような実情に鑑みてなされ
たものであり、たとえばm個のストライプに点在する有
効データブロックをn(m>n)個のストライプに詰め
替える処理を効率的に実行するデータ管理システムおよ
びデータ管理方法を提供することを目的とする。
The present invention has been made in view of such circumstances, and efficiently executes, for example, a process of rewriting effective data blocks scattered in m stripes into n (m> n) stripes. It is an object to provide a data management system and a data management method.

【0007】[0007]

【課題を解決するための手段】この発明は、前述した目
的を達成するために、ストライプそれぞれの有効ブロッ
ク数および無効ブロック数の少なくとも一方を保持する
ストライプ管理テーブルを設け、ストライプへのデータ
の格納およびストライプ上のデータの無効化に応じて、
このストライプ管理テーブルに保持されたそのストライ
プの有効ブロック数または無効ブロック数の値を更新す
るようにしたものである。そして、たとえばm個のスト
ライプに点在する有効データブロックをn(m>n)個
のストライプに詰め替えるときには、このストライプ管
理テーブルが保持する有効ブロック数および無効ブロッ
ク数の少なくとも一方に基づいて、詰め替え処理の対象
とするストライプを選択するようにしたものである。
In order to achieve the above-mentioned object, the present invention provides a stripe management table which holds at least one of the number of valid blocks and the number of invalid blocks of each stripe, and stores data in the stripe. And depending on the invalidation of the data on the stripe,
The value of the number of valid blocks or the number of invalid blocks of the stripe stored in the stripe management table is updated. For example, when refilling valid data blocks scattered in m stripes into n (m> n) stripes, the refilling is performed based on at least one of the number of valid blocks and the number of invalid blocks held in the stripe management table. A stripe to be processed is selected.

【0008】すなわち、この発明においては、ストライ
プ中の有効ブロックおよび無効ブロックの有無を得るた
めに、たとえば磁気ディスク上のストライプに実際にア
クセスするようなことがなくなるため、ホストシステム
の入出力リクエスト処理を妨げることもない。
That is, according to the present invention, since there is no need to actually access a stripe on a magnetic disk in order to obtain the presence / absence of a valid block and an invalid block in a stripe, an input / output request processing of a host system is performed. Does not disturb.

【0009】[0009]

【発明の実施の形態】以下、図面を参照してこの発明の
実施の形態を説明する。図1は、この発明の実施形態に
係る記憶装置の概略構成を示す図である。図1に示すよ
うに、この実施形態の記憶装置10は、ストライプ管理
テーブル11、論理アドレス変換テーブル12、制御部
13、書き込みバッファ14、読み出しバッファ15、
詰め替えバッファ16、ディスクコントローラ17およ
び磁気ディスク装置18を備えている。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a diagram showing a schematic configuration of a storage device according to an embodiment of the present invention. As shown in FIG. 1, a storage device 10 of this embodiment includes a stripe management table 11, a logical address conversion table 12, a control unit 13, a write buffer 14, a read buffer 15,
A refill buffer 16, a disk controller 17 and a magnetic disk device 18 are provided.

【0010】この記憶装置10は、所定数のデータブロ
ックからなるストライプ単位で書き込みおよび読み出し
が行なわれるものであり、また、このストライプの磁気
ディスク装置18への書き込みおよび磁気ディスク装置
18からの読み出しは、各磁気ディスク装置18が接続
されているディスクコントローラ17によって実行制御
されている。
In the storage device 10, writing and reading are performed in a stripe unit composed of a predetermined number of data blocks. Writing and reading of the stripe to and from the magnetic disk device 18 are performed. The execution is controlled by a disk controller 17 to which each magnetic disk device 18 is connected.

【0011】図2には、論理アドレス変換テーブル12
の形式が示されている。この論理アドレス変換テーブル
12は、論理アドレスに対応するデータブロックが格納
されているストライプの番号と、ストライプ内での位置
を示すブロック番号とを保持する。また、論理アドレス
変換テーブル12は、論理アドレスに対応するブロック
が最後に更新された時刻をタイムスタンプとして保持す
る。なお、このタイムスタンプは、論理ブロック単位で
はなく、後述のストライプ管理テーブル11内にストラ
イプ単位の情報として保存されるものであってもよい。
FIG. 2 shows a logical address conversion table 12.
Is shown. The logical address conversion table 12 holds the number of a stripe in which a data block corresponding to a logical address is stored, and a block number indicating a position in the stripe. Further, the logical address conversion table 12 holds, as a time stamp, the time at which the block corresponding to the logical address was last updated. The time stamp may be stored in the stripe management table 11, which will be described later, as information in units of stripes, instead of in units of logical blocks.

【0012】また、図3には、ストライプ管理テーブル
11の形式が示されている。このストライプ管理テーブ
ル11は、ストライプ中に格納されている有効データブ
ロック数と、ストライプが位置する磁気ディスク装置1
8が接続されているディスクコントローラ17の番号
と、排他制御のためのロックフラグとを記録する。この
有効ブロック数が0である場合、該当ストライプが空き
ストライプであることを意味する。また、有効ブロック
数が負数である場合は、該当ストライプがこの記憶装置
上に存在しないことを意味する。そして、このストライ
プ管理テーブル11を設けた点が、この発明の特徴とす
るところである。
FIG. 3 shows the format of the stripe management table 11. The stripe management table 11 stores the number of valid data blocks stored in a stripe and the magnetic disk device 1 where the stripe is located.
8 records the number of the disk controller 17 to which it is connected and a lock flag for exclusive control. When the number of valid blocks is 0, it means that the corresponding stripe is an empty stripe. If the number of valid blocks is a negative number, it means that the corresponding stripe does not exist on this storage device. The provision of the stripe management table 11 is a feature of the present invention.

【0013】次に、この実施形態のストライプデータ構
造について説明する。図4には、この実施形態のストラ
イプのデータ構造が示されている。ストライプ上には、
複数のデータブロックと、タグ情報とが収められてい
る。このタグ情報は、ストライプ上にある各データブロ
ックと論理アドレスとの対応情報およびタイムスタンプ
を格納しており、1ブロックサイズの領域を占める。ま
た、タイムスタンプは、このストライプが更新された時
刻を示す情報である。この値と、他のストライプのタイ
ムスタンプおよび論理アドレス変換テーブルに格納され
ているタイムスタンプとを比較することにより、ストラ
イプに収められているデータブロックの有効・無効を判
断する。
Next, the stripe data structure of this embodiment will be described. FIG. 4 shows the data structure of the stripe of this embodiment. On the stripe,
A plurality of data blocks and tag information are stored. The tag information stores correspondence information between each data block on the stripe and the logical address and a time stamp, and occupies an area of one block size. The time stamp is information indicating the time at which this stripe was updated. By comparing this value with the time stamp of another stripe and the time stamp stored in the logical address conversion table, it is determined whether the data block contained in the stripe is valid or invalid.

【0014】ここで、この記憶装置10における書き込
み処理の概要を書き込みバッファ14の機能とともに説
明する。書き込みバッファ14は、1ストライプと同じ
容量をもつ。制御部13は、ホストシステム20から受
け取った書き込みデータを、ブロックサイズ単位で分割
し、一旦書き込みバッファ14に蓄積する。また、制御
部13は、この書き込みバッファ14への蓄積時に、ブ
ロックの論理アドレスと、書き込みバッファ14上の位
置(=ストライプ上での位置)とをタグ情報に記録す
る。そして、書き込みバッファ14に蓄積されたデータ
ブロックの数がストライプ当たりのブロック数−1にな
ったときに、制御部13は、タグ情報を付加した書き込
みバッファ14の内容を磁気ディスク18上の空きスト
ライプに一括して書き込む。
Here, the outline of the write processing in the storage device 10 will be described together with the function of the write buffer 14. The write buffer 14 has the same capacity as one stripe. The control unit 13 divides the write data received from the host system 20 in units of a block size and temporarily stores the divided data in the write buffer 14. The control unit 13 records the logical address of the block and the position on the write buffer 14 (= the position on the stripe) in the tag information at the time of accumulation in the write buffer 14. Then, when the number of data blocks stored in the write buffer 14 becomes −1 (the number of blocks per stripe), the control unit 13 deletes the contents of the write buffer 14 with the tag information added to the free stripe on the magnetic disk 18. Write all at once.

【0015】制御部13は、書き込みバッファ14の空
きストライプへの書き込み時に、ストライプ管理テーブ
ル11上の有効ブロック数の更新処理を行なう。これ
は、 (1)書き込みを行なったストライプの有効ブロック数
の更新。 (2)旧データブロックを収めるストライプの有効ブロ
ック数の更新。 の2つの処理からなる。
The control unit 13 updates the number of valid blocks on the stripe management table 11 when writing to an empty stripe in the write buffer 14. This is as follows: (1) Updating the number of effective blocks of the stripe that has been written. (2) Updating the number of effective blocks of the stripe that contains the old data block. Consists of the following two processes.

【0016】旧データブロックを収めるストライプの有
効ブロック数の更新は次の手順で行なう。まず、書き込
みバッファ14に蓄積された各ブロックの論理アドレス
をキーにして論理アドレス変換テーブル12を参照し、
その論理アドレスの旧データが収められているストライ
プを特定する。次に、そのストライプをキーにしてスト
ライプ変換テーブル11を参照し、有効ブロック数の値
を1減じる。この処理を書き込みバッファ14上のすべ
てのデータブロックについて行なう。図5には、このス
トライプ管理テーブル11上の有効ブロック数の更新処
理の手順が示されている。
The updating of the number of effective blocks of the stripe containing the old data block is performed in the following procedure. First, the logical address of each block stored in the write buffer 14 is used as a key, and the logical address conversion table 12 is referred to.
The stripe containing the old data of the logical address is specified. Next, the value of the number of effective blocks is decremented by one by referring to the stripe conversion table 11 using the stripe as a key. This process is performed for all data blocks on the write buffer 14. FIG. 5 shows a procedure for updating the number of valid blocks on the stripe management table 11.

【0017】次に、この記憶装置10における読み出し
処理の概要を読み出しバッファ15の機能とともに説明
する。この読み出し処理は、与えられたホストIOリク
エストの論理アドレスをキーにして論理アドレス変換テ
ーブル12を参照し、読み出し対象ブロックが格納され
ているストライプと、ストライプ内の位置とを調べる。
そして、そのストライプを磁気ディスク装置18から読
み出して、読み出しバッファ15に格納した後、その読
み出しバッファ15中の該当ブロックのデータを読み出
して、データとしてホストシステム20に返す。
Next, the outline of the read processing in the storage device 10 will be described together with the function of the read buffer 15. In this read processing, the logical address of the given host IO request is used as a key, and the logical address conversion table 12 is referenced to check the stripe in which the read target block is stored and the position in the stripe.
Then, after reading the stripe from the magnetic disk device 18 and storing it in the read buffer 15, the data of the corresponding block in the read buffer 15 is read and returned to the host system 20 as data.

【0018】以下に、詰替え処理の手順を説明する。こ
の詰替え処理は、「詰替え処理の対象となるストライプ
の選択」、「ストライプ内の有効ブロックの再配置」お
よび「空きストライプへの書き込み」の3つの処理から
なる。そして、この3つの処理のいずれもが、ストライ
プに無効ブロックの有無を検査する処理を要する。
The procedure of the refilling process will be described below. This refilling process includes three processes of “selection of a stripe to be refilled”, “relocation of valid blocks in a stripe”, and “writing to an empty stripe”. Then, all of these three processes require a process of checking the stripe for the presence or absence of an invalid block.

【0019】まず、従来におけるストライプ中の無効ブ
ロックを探索する手順を示す。従来では、まず、ストラ
イプ中のタグ情報を参照し、ストライプ内の各ブロック
の論理アドレスとタイムスタンプ値とを取得する。次
に、タグ情報から得た各ブロックに対応する論理アドレ
スをキーにして、論理アドレス変換テーブル12を参照
し、該当ブロックが最後に更新された際のタイムスタン
プを取得する。そして、このタイムスタンプ値と、スト
ライプ中のタグ情報のタイムスタンプ値とを比較し、値
が同じである場合には、このブロックの情報が有効であ
ると判定する。反対に、タグ情報のスタンプ値の方が古
い値である場合は、すでにこの論理アドレスに対応する
ブロックが無効であると判定する。
First, a conventional procedure for searching for an invalid block in a stripe will be described. Conventionally, first, a logical address and a time stamp value of each block in a stripe are obtained by referring to tag information in the stripe. Next, the logical address corresponding to each block obtained from the tag information is used as a key, and the logical address conversion table 12 is referenced to obtain a time stamp when the block was last updated. Then, the time stamp value is compared with the time stamp value of the tag information in the stripe, and if the values are the same, it is determined that the information of this block is valid. Conversely, if the stamp value of the tag information is an older value, it is determined that the block corresponding to this logical address is already invalid.

【0020】このように、従来では、ストライプ中の無
効ブロックを探索するために、ストライプ中のタグ情報
にアクセスする必要があった。すなわち、これは、スト
ライプの読み出し処理を行なう必要があることを意味す
る。したがって、場合によっては、ホストIOリクエス
トの処理の妨げとなっていた。
As described above, conventionally, in order to search for an invalid block in a stripe, it is necessary to access tag information in the stripe. That is, this means that it is necessary to perform a stripe read process. Therefore, in some cases, processing of the host IO request has been hindered.

【0021】次に、この実施形態における無効ブロック
および有効ブロックの探索手順を示す。この実施形態の
記憶装置10は、ストライプの有効ブロックを保持する
ストライプ管理テーブル11を備えている。したがっ
て、ストライプ中の無効ブロックの有無を調べるには、
該当ストライプ番号でストライプ管理テーブル11を参
照し、有効ブロック数をストライプ当たりのブロック数
と比較すればよい。なぜならば、有効ブロック数がスト
ライプ当たりのブロック数より小さい場合には、該当ス
トライプに無効ブロックが存在することを意味するから
である。
Next, a procedure for searching for an invalid block and a valid block in this embodiment will be described. The storage device 10 of this embodiment includes a stripe management table 11 for holding valid blocks of a stripe. Therefore, to check for invalid blocks in a stripe,
The number of valid blocks may be compared with the number of blocks per stripe by referring to the stripe management table 11 using the corresponding stripe number. This is because if the number of valid blocks is smaller than the number of blocks per stripe, it means that there is an invalid block in the corresponding stripe.

【0022】このように、あるストライプのブロックに
無効データがあるか否かを調べるための磁気ディスクア
クセスを行なう必要がないので、ホストIOリクエスト
の処理を妨げることはない。
As described above, since it is not necessary to perform a magnetic disk access to check whether or not there is invalid data in a block of a certain stripe, the processing of a host IO request is not hindered.

【0023】次に、詰替え対象となるストライプの選択
方法の一例を示す。ここで示す例は単純な方法の一例で
あり、その他の選択方法を用いることにより、さらに効
率的な詰替え対象となるストライプの組み合わせを得る
ことが可能である。なお、以後の説明ではストライプ当
たりのブロック数をLと表す。したがって、この実施形
態では、ストライプに格納可能なデータブロックの数は
L−1となる。 (1)詰替え対象となるストライプの選択(m TO
1) まず、詰替え処理対象となるストライプの1つとして、
任意の1つのストライプを選択する。そして、このスト
ライプ番号を詰替え対象リストに登録する。ここでは、
ストライプ管理テーブル11を探索し、空きストライプ
以外であって最も無効ブロックが多いストライプ(有効
ブロック数が最も小さい>0)ものを選択する。
Next, an example of a method of selecting a stripe to be refilled will be described. The example shown here is an example of a simple method, and by using other selection methods, it is possible to obtain a more efficient combination of stripes to be refilled. In the following description, the number of blocks per stripe is represented by L. Therefore, in this embodiment, the number of data blocks that can be stored in the stripe is L-1. (1) Selection of stripes to be refilled (m TO
1) First, as one of the stripes to be refilled,
Select any one stripe. Then, this stripe number is registered in the refill target list. here,
The stripe management table 11 is searched, and a stripe other than an empty stripe and having the largest number of invalid blocks (the smallest number of valid blocks> 0) is selected.

【0024】次に、詰替え対象リストに登録したストラ
イプの有効ブロック数の合計(以下Σと表記)との合計
がL−1に最も近くなる有効ブロックをもつストライプ
を検索する。ただし、この検索においては、空きストラ
イプおよびすべてのブロックが有効ブロックであるスト
ライプは除外する。そして、検索により得られたストラ
イプを詰替え対象リストに登録する。また、Σ<L−1
となる場合には、まだ詰替え後のストライプに空きブロ
ックがあることを意味するので、同様の手順を繰り返
す。
Next, a stripe having an effective block whose sum with the total number of effective blocks of the stripe registered in the refill target list (hereinafter referred to as Σ) is closest to L−1 is searched. However, in this search, empty stripes and stripes in which all blocks are valid blocks are excluded. Then, the stripe obtained by the search is registered in the refill target list. Also, Σ <L−1
If it means that there is still an empty block in the stripe after refilling, the same procedure is repeated.

【0025】このΣ=L−1となる組み合わせが得られ
た場合、詰替え処理により、詰替え対象ストライプ中の
有効ブロックを1つのストライプ中に再配置できること
を意味する。そして、この対象リストのストライプにつ
いて詰替え処理を行なう。
If the combination of Σ = L−1 is obtained, it means that the effective block in the stripe to be refilled can be relocated in one stripe by the refilling process. Then, a refilling process is performed on the stripes in the target list.

【0026】このような手順で、Σ=L−1となる組み
合わせが得られなかった場合、詰替え処理の対象となる
ストライプからは、1つのストライプを作成することが
できない。この場合は、m個のストライプからn個(m
>n>1)のストライプを作成する手順を行なう。 (2)詰替え対象となるストライプの選択(m TO
n) m個のストライプからn個(m>n>1)のストライプ
を作成する手順では、前述した手順において、Σ=(L
−1)×n数倍となるまで検索を繰り返すようにする。 (再配置処理手順)まず、前述の処理で選択した詰替え
対象の各ストライプを、詰め替えバッファ16に読み出
す。次に、この読み込んだ各ストライプの1つを選択
し、これを再配置ストライプ用書き込みバッファとす
る。また、再配置後のストライプ数がn個になる場合
は、n個のストライプの詰替えバッファ16を再配置ス
トライプ用書き込みバッファとする。そして、この再配
置ストライプ用書き込みバッファ中の無効ブロックに、
その他の詰め替え対象ストライプ中の有効ブロックを順
次上書き複写する。
When a combination of Σ = L−1 cannot be obtained by such a procedure, one stripe cannot be created from a stripe to be refilled. In this case, the n stripes (m
>N> 1) is performed to create a stripe. (2) Selection of stripes to be refilled (m TO
n) In the procedure for creating n (m>n> 1) stripes from the m stripes, in the above-described procedure, Σ = (L
-1) The search is repeated until the number becomes a multiple of n times. (Relocation Processing Procedure) First, each stripe to be refilled selected in the above-described processing is read out to the refill buffer 16. Next, one of the read stripes is selected and used as a relocation stripe write buffer. When the number of stripes after the rearrangement becomes n, the refilling buffer 16 for the n stripes is used as a rearrangement stripe write buffer. Then, in the invalid block in the relocation stripe write buffer,
Valid blocks in other stripes to be refilled are sequentially overwritten and copied.

【0027】有効ブロックを無効ブロックへ上書き複写
する際に、再配置ストライプ用書き込みバッファのタグ
情報内の論理アドレス情報を更新する。また、移動した
ブロックについて、論理アドレス変換テーブル12のス
トライプ番号、ブロック番号およびタイムスタンプを更
新する。そして、すべての有効ブロックを移動した後
に、再配置ストライプ用書き込みバッファのタグ情報の
タイムスタンプを最も新しい値で更新する。 (m個のストライプからn個のストライプへの書き込
み)前述の処理で再配置を行なった再配置ストライプ用
ストライプ書き込みバッファを磁気ディスク装置18に
書き戻す。この書き戻し時の処理は、通常のホストIO
リクエスト処理において、書き込みバッファ14が埋ま
った場合の処理と同じである。すなわち、空きストライ
プを選択し、再配置ストライプ用書き込みバッファの内
容を、この空きストライプに書き込む。書き戻し時に
は、ストライプ管理テーブル11の書き込みを行なった
空きストライプおよび旧データブロックを収めている各
ストライプの有効ブロック数の更新を行なう。
When the valid block is overwritten and copied to the invalid block, the logical address information in the tag information of the relocation stripe write buffer is updated. Further, for the moved block, the stripe number, block number and time stamp of the logical address conversion table 12 are updated. Then, after moving all the valid blocks, the time stamp of the tag information of the relocation stripe write buffer is updated with the newest value. (Writing from m stripes to n stripes) The stripe write buffer for rearranged stripes which has been rearranged in the above-described processing is written back to the magnetic disk device 18. The process at the time of writing back is performed by a normal host IO.
The request processing is the same as the processing when the write buffer 14 is filled. That is, an empty stripe is selected, and the contents of the write buffer for relocation stripe are written to this empty stripe. At the time of write-back, the number of effective blocks of each of the empty stripes and the old data blocks that have been written in the stripe management table 11 is updated.

【0028】空きストライプの選択では、ストライプ管
理テーブル11を検索し、空きストライプの中から書き
戻す先のストライプを選択する。なお、n個のストライ
プに再配置を行った場合、書き戻す先の複数の空きスト
ライプを互いに異なるディスクコントローラ17下に属
するものになるように選択する。これにより、ストライ
プに対する書き込み処理を並行して行なうことが可能と
なる。
In selecting an empty stripe, the stripe management table 11 is searched, and a stripe to be written back is selected from the empty stripes. When rearrangement is performed on n stripes, a plurality of empty stripes to be rewritten are selected so as to belong to different disk controllers 17 from each other. As a result, it is possible to perform write processing on the stripe in parallel.

【0029】ここで、空きストライプに書き戻すのは、
書き戻し動作中に、何らかの障害が発生した場合でも、
元のストライプ情報から復元可能とするためである。し
たがって、障害発生時に書き戻しデータと書き戻しの完
了とを保証する手段がある場合には、空きストライプで
なく、詰替え処理対象ストライプでもよい。
Here, writing back to the empty stripe is performed as follows.
Even if something goes wrong during the write-back operation,
This is to enable restoration from the original stripe information. Therefore, if there is a means for guaranteeing the write-back data and the completion of the write-back when a failure occurs, a stripe to be refilled may be used instead of an empty stripe.

【0030】ところで、ここまでに述べた詰め替え処理
は、磁気ディスク装置18上に存在するストライプの読
み出しを実際に行なって、詰ま替え処理を行なうという
ものである。したがって、この処理には、最低でも2回
の磁気ディスク装置18上のストライプ読み出し処理
と、1回以上の磁気ディスク装置18への書き込み処理
とを伴なう。このような磁気ディスクアクセスを伴なう
処理は、ホストIOリクエストを待たせるような状態を
発生させる虞れがある。
By the way, the refilling process described so far is to actually perform the reading of the stripe existing on the magnetic disk device 18 to perform the refilling process. Therefore, this process involves at least two stripe reading processes on the magnetic disk device 18 and one or more writing processes to the magnetic disk device 18. Such processing involving magnetic disk access may cause a state in which a host IO request is made to wait.

【0031】以下に、この問題を改善した方法として、
記憶装置10の各種バッファ(書き込みバッファ14、
読み出しバッファ15)上に存在する有効データブロッ
クを詰め替え処理の対象とする方法について示す。ここ
では、詰め替え処理の対象ストライプの1つを読み出し
バッファ15に格納されているストライプデータとする
場合について説明する。
Hereinafter, as a method for solving this problem,
Various buffers of the storage device 10 (the write buffer 14,
A method for making valid data blocks existing on the read buffer 15) a target of the refilling process will be described. Here, a case will be described in which one of the target stripes for the refilling process is the stripe data stored in the read buffer 15.

【0032】この場合、前述の詰め替え対象となるスト
ライプの組み合わせ選択手順における「任意のストライ
プ」を「読み出しバッファ15」として詰め替え対象リ
ストに登録する。以降は同様に、詰め替え対象リストに
登録したストライプ中の有効ブロックの数(Σ)がスト
ライプのデータブロック数L−1となるような有効ブロ
ックをもつストライプを選択する。そして、この選択し
た(読み出しバッファを除く)ストライプを詰め替えバ
ッファ16に読み出す。
In this case, the “arbitrary stripe” in the above-described procedure for selecting a combination of stripes to be refilled is registered as a “read buffer 15” in the refill target list. Thereafter, similarly, a stripe having an effective block in which the number (有効) of effective blocks in the stripe registered in the refill target list is equal to the number L-1 of data blocks of the stripe is selected. Then, the selected stripe (excluding the read buffer) is read into the refill buffer 16.

【0033】次に、詰め替えバッファ16中のストライ
プデータから有効ブロックを探索し、有効ブロックを読
み出しバッファ15上の無効ブロック上に再配置する。
再配置時の手順および処理は前述の通りである。そし
て、すべての再配置処理が完了した後、読み出しバッフ
ァ15上のタイムスタンプの値を最新の値で更新し、読
み出しバッファ14のデータを空きストライプに書き込
み、ストライプ管理テーブル11の有効ブロック数を更
新する。
Next, a valid block is searched for from the stripe data in the refill buffer 16, and the valid block is relocated to an invalid block on the read buffer 15.
The procedure and processing at the time of rearrangement are as described above. Then, after all the relocation processes are completed, the time stamp value in the read buffer 15 is updated with the latest value, the data in the read buffer 14 is written to an empty stripe, and the number of valid blocks in the stripe management table 11 is updated. I do.

【0034】ただし、この詰め替え処理による磁気ディ
スク装置18上のストライプ更新の前に、書き込みバッ
ファ14の内容が磁気ディスク装置18に書かれること
があってはならない。なぜならば、書き込みバッファ1
4上にあるタグ情報のタイムスタンプの値が、詰め替え
処理によって更新された読み出しバッファ15上のタグ
情報のタイムスタンプ値より古いことを意味する値であ
った場合に、ホストIOリクエストの書き込みデータ
は、古い情報とみなされて喪失することになるからであ
る。これを防止する方法は、詰め替え処理が完了するま
で、書き込みバッファ14の磁気ディスク装置18への
書き込み処理を保留する、または、予め書き込みバッフ
ァ14の方のタイムスタンプを進めるようにすることで
ある。
However, the contents of the write buffer 14 must not be written to the magnetic disk device 18 before the stripe on the magnetic disk device 18 is updated by the refilling process. Because write buffer 1
If the value of the time stamp of the tag information on the read buffer 4 is older than the time stamp value of the tag information on the read buffer 15 updated by the refilling process, the write data of the host IO request is This is because it is regarded as old information and will be lost. A method of preventing this is to suspend the writing process of the write buffer 14 to the magnetic disk device 18 until the refilling process is completed, or advance the time stamp of the write buffer 14 in advance.

【0035】なお、詰め替え処理の対象ストライプの1
つを書き込みバッファ14に格納されているストライプ
データとする場合も、この読み出しバッファ15の場合
と同様に、ホストIOリクエストによって更新される情
報が、詰め替え処理の有効データの移動に伴なって喪失
しないようにする必要がある。
Note that one of the stripes to be refilled is
In the case where one is the stripe data stored in the write buffer 14, similarly to the case of the read buffer 15, the information updated by the host IO request is not lost with the movement of the effective data of the refilling process. You need to do that.

【0036】ところで、このような詰め替え処理を行な
うと、各バッファがビジー状態となり、ホストIOリク
エストの妨げとなる虞れがある。この対策としては、 (1)書き込みバッファ14または読み出しバッファ1
5を詰め替え処理の対象とする場合は、一定時間ホスト
IOリクエストが発生していない場合とする。 (2)複数のバッファを設けて、バッファを対象とする
詰め替え処理を行なっている場合は別のバッファを利用
する。 などが考えられる。
By the way, if such refilling processing is performed, each buffer becomes busy, and there is a possibility that host IO requests may be obstructed. As measures against this, (1) the write buffer 14 or the read buffer 1
In the case where No. 5 is to be subjected to the refilling process, it is assumed that the host IO request has not been generated for a certain time. (2) When a plurality of buffers are provided and refilling processing is performed on the buffers, another buffer is used. And so on.

【0037】また、各種バッファ利用した場合を含め
て、すべてのストライプを複数のストライプを読み出し
て詰め替え処理を行なう場合は、詰め替え処理の対象と
なるストライプそれぞれが、互いに異なるディスクコン
トローラ17下に存在するように選択することが好まし
い。これにより、詰め替え対象の各ストライプを並列に
読み出すことができ、ストライプの詰め替え処理に要す
る時間を大幅に低減することが可能となる。このような
ストライプの選択は、前述のストライプ選択手順におい
て、ストライプの選択条件として「詰め替え対象リスト
に登録されているストライプが属するディスクコントロ
ーラ17と異なるディスクコントローラ17に属してい
るもの」という条件を加えることにより実現できる。そ
して、各ストライプがどのディスクコントローラ17に
属しているかは、ストライプ管理テーブル11のコント
ローラ番号を参照することでわかる。
In the case where a plurality of stripes are read out from a plurality of stripes and the refilling process is performed, including the case where various buffers are used, the stripes to be refilled exist under different disk controllers 17 from each other. It is preferable to select as follows. As a result, the stripes to be refilled can be read out in parallel, and the time required for stripe refilling processing can be significantly reduced. In such a stripe selection, in the above-described stripe selection procedure, a condition that “the disk belongs to a disk controller 17 different from the disk controller 17 to which the stripe registered in the refill target list belongs” is added as a stripe selection condition. This can be achieved by: The disk controller 17 to which each stripe belongs can be determined by referring to the controller number in the stripe management table 11.

【0038】このように、この実施形態の記憶装置10
によれば、詰め替え処理によって発生する磁気ディスク
アクセスの回数を大幅に削減させ、また磁気ディスクア
クセス時における時間を大幅に短縮することが可能とな
る。なお、このデータ管理の手法は、ホストシステム2
0側で制御されるものであっても構わない。
As described above, the storage device 10 of this embodiment
According to this, it is possible to greatly reduce the number of times of access to the magnetic disk caused by the refilling process, and to greatly reduce the time required for accessing the magnetic disk. Note that this data management method is based on the host system 2
It may be controlled on the 0 side.

【0039】[0039]

【発明の効果】以上詳述したように、この発明によれ
は、磁気ディスク装置上のストライプ内の有効ブロック
および無効ブロックの有無、ならびにそれらの数を磁気
ディスクのアクセスを伴なうことなく調べることができ
るようになるため、ストライプの詰め替え処理によって
ホストシステムからの入出力リクエスト処理による磁気
ディスクアクセスを妨げることはない。
As described above in detail, according to the present invention, the presence / absence of valid blocks and invalid blocks in a stripe on a magnetic disk device, and the numbers thereof are examined without access to the magnetic disk. Therefore, the stripe refilling process does not hinder access to the magnetic disk by input / output request processing from the host system.

【0040】また、読み出しバッファおよび書き込みバ
ッファを詰め替え対象となるストライプデータの1つと
することで、詰め替え処理のためのみに行なう磁気ディ
スクアクセスの発生を抑えることが可能となる。
Further, by making the read buffer and the write buffer one of the stripe data to be refilled, it is possible to suppress the occurrence of a magnetic disk access performed only for the refill processing.

【0041】さらに、詰め替え処理に伴なう磁気ディス
クアクセスを行なう場合においても、互いに異なるディ
スクコントローラに属するストライプに振り分けること
によって、並列にアクセスすることを可能とする。
Further, even when performing magnetic disk access accompanying the refilling process, it is possible to access in parallel by allocating the disk to stripes belonging to different disk controllers.

【図面の簡単な説明】[Brief description of the drawings]

【図1】この発明の実施形態に係る記憶装置の概略構成
を示す図。
FIG. 1 is a diagram showing a schematic configuration of a storage device according to an embodiment of the present invention.

【図2】同実施形態の論理アドレス変換テーブルの形式
を示す図。
FIG. 2 is an exemplary view showing the format of a logical address conversion table according to the embodiment;

【図3】同実施形態のストライプ管理テーブルの形式を
示す図。
FIG. 3 is an exemplary view showing the format of a stripe management table according to the embodiment;

【図4】同実施形態のストライプのデータ構造を示す
図。
FIG. 4 is an exemplary view showing a data structure of a stripe according to the embodiment;

【図5】同実施形態のストライプ管理テーブル上の有効
ブロック数の更新処理の手順を示すフローチャート。
FIG. 5 is an exemplary flowchart showing the procedure of processing for updating the number of valid blocks on the stripe management table according to the embodiment.

【符号の説明】[Explanation of symbols]

10…記憶装置、11…ストライプ管理テーブル、12
…論理アドレス変換テーブル、13…制御部、14…書
き込みバッファ、15…読み出しバッファ、16…詰め
替えバッファ、17…ディスクコントローラ、18…磁
気ディスク装置、20…ホストシステム。
10: storage device, 11: stripe management table, 12
... Logical address conversion table, 13 control unit, 14 write buffer, 15 read buffer, 16 refill buffer, 17 disk controller, 18 magnetic disk drive, 20 host system.

Claims (13)

【特許請求の範囲】[Claims] 【請求項1】 所定数のデータブロックからなるストラ
イプ単位で書き込みおよび読み出しが行なわれる記憶装
置に適用されるデータ管理システムにおいて、 前記ストライプそれぞれの有効ブロック数および無効ブ
ロック数の少なくとも一方を保持するストライプ管理テ
ーブルと、 前記ストライプへのデータの格納および前記ストライプ
上のデータの無効化に応じて、前記ストライプ管理テー
ブルに保持されたそのストライプの有効ブロック数また
は無効ブロック数の値を更新するテーブル更新手段とを
具備することを特徴とするデータ管理システム。
1. A data management system applied to a storage device in which writing and reading are performed in a stripe unit composed of a predetermined number of data blocks, wherein the stripe holding at least one of the number of valid blocks and the number of invalid blocks of each of the stripes A management table, and table updating means for updating a value of the number of valid blocks or the number of invalid blocks of the stripe stored in the stripe management table in accordance with storage of data in the stripe and invalidation of data on the stripe. A data management system comprising:
【請求項2】 前記ストライプ管理テーブルに保持され
た有効ブロック数が0であるものを空きストライプとし
て探索する探索手段をさらに具備することを特徴とする
請求項1記載のデータ管理システム。
2. The data management system according to claim 1, further comprising a search unit that searches for an empty block in which the number of valid blocks held in the stripe management table is 0.
【請求項3】 所定数のストライプを書き込みおよび読
み出し制御するコントローラが複数設けられ、 前記ストライプ管理テーブルは、前記ストライプそれぞ
れが属するコントローラを識別するための識別データを
さらに保持する請求項1または2記載のデータ管理シス
テム。
3. A plurality of controllers for controlling writing and reading of a predetermined number of stripes are provided, and the stripe management table further holds identification data for identifying a controller to which each of the stripes belongs. Data management system.
【請求項4】 m個のストライプに点在する有効データ
ブロックをn(m>n)個のストライプに詰め替える詰
め替え手段をさらに具備し、 前記詰め替え手段は、前記ストライプ管理テーブルが保
持する有効ブロック数および無効ブロック数の少なくと
も一方に基づいて、詰め替え処理の対象とするストライ
プを選択することを特徴とする請求項1、2または3記
載のデータ管理システム。
4. The apparatus according to claim 1, further comprising: refilling means for refilling the effective data blocks scattered in the m stripes into n (m> n) stripes, wherein the refilling means comprises the number of effective blocks held in the stripe management table. 4. The data management system according to claim 1, wherein a stripe to be refilled is selected based on at least one of the number of invalid blocks and the number of invalid blocks.
【請求項5】 前記詰め替え手段は、前記記憶装置にデ
ータを書き込むための書き込みバッファをストライプの
一つとみなして選択対象とすることを特徴とする請求項
4記載のデータ管理システム。
5. The data management system according to claim 4, wherein said refilling unit regards a write buffer for writing data in said storage device as one of stripes and selects it as a stripe.
【請求項6】 前記詰め替え手段は、予め定められた時
間を越えて書き込み要求が発生しないときに、前記記憶
装置にデータを書き込むための書き込みバッファをスト
ライプの一つとみなして選択対象とすることを特徴とす
る請求項4記載のデータ管理システム。
6. The refilling means considers that a write buffer for writing data to the storage device is regarded as one of stripes and is to be selected when a write request does not occur for a predetermined time. 5. The data management system according to claim 4, wherein:
【請求項7】 前記書き込みバッファが複数設けられ、
前記詰め替え手段によりいずれかの書き込みバッファが
詰め替え処理の対象となっている間、書き込みデータを
その他の書き込みバッファに蓄積するバッファ制御手段
をさらに具備することを特徴とする請求項5または6記
載のデータ管理システム。
7. A plurality of said write buffers are provided,
7. The data according to claim 5, further comprising buffer control means for accumulating write data in another write buffer while one of the write buffers is subjected to refill processing by said refill means. Management system.
【請求項8】 前記詰め替え手段は、前記記憶装置から
データを読み出すための読み出しバッファをストライプ
の一つとみなして選択対象とすることを特徴とする請求
項4記載のデータ管理システム。
8. The data management system according to claim 4, wherein said refilling unit regards a read buffer for reading data from said storage device as one of stripes and selects it as a stripe.
【請求項9】 前記詰め替え手段は、予め定められた時
間を越えて読み出し要求が発生しないときに、前記記憶
装置からデータを読み出すための読み出しバッファをス
トライプの一つとみなして選択対象とすることを特徴と
する請求項4記載のデータ管理システム。
9. The refilling unit according to claim 1, wherein when a read request does not occur for a predetermined time, a read buffer for reading data from the storage device is regarded as one of the stripes and is selected. 5. The data management system according to claim 4, wherein:
【請求項10】 前記読み出しバッファが複数設けら
れ、前記詰め替え手段によりいずれかの読み出しバッフ
ァが詰め替え処理の対象となっている間、読み出しデー
タを含むストライプをその他の読み出しバッファに格納
するバッファ制御手段をさらに具備することを特徴とす
る請求項8または9記載のデータ管理システム。
10. A buffer control means, wherein a plurality of said read buffers are provided, and a buffer control means for storing a stripe including read data in another read buffer while any one of the read buffers is subjected to refill processing by said refill means. The data management system according to claim 8, further comprising:
【請求項11】 前記詰め替え手段は、互いに異なるコ
ントローラに属するストライプが組みとなるように前記
詰め替え処理の対象とするストライプを選択することを
特徴とする請求項4記載のデータ管理システム。
11. The data management system according to claim 4, wherein said refilling means selects stripes to be subjected to said refilling processing such that stripes belonging to different controllers are paired.
【請求項12】 前記詰め替え手段により詰め替えられ
た後の複数のストライプが互いに異なるコントローラに
属するように書き込み制御する書き込み制御手段をさら
に具備することを特徴とする請求項4記載のデータ管理
システム。
12. The data management system according to claim 4, further comprising: write control means for performing write control so that a plurality of stripes refilled by said refill means belong to different controllers.
【請求項13】 所定数のデータブロックからなるスト
ライプ単位で書き込みおよび読み出しが行なわれる記憶
装置に適用されるデータ管理方法において、 前記ストライプそれぞれの有効ブロック数および無効ブ
ロック数の少なくとも一方を保持するステップと、 前記ストライプへのデータの格納および前記ストライプ
上のデータの無効化に応じて、前記保持されたそのスト
ライプの有効ブロック数または無効ブロック数の値を更
新するステップとを具備することを特徴とするデータ管
理方法。
13. A data management method applied to a storage device in which writing and reading are performed in a stripe unit composed of a predetermined number of data blocks, wherein at least one of the number of valid blocks and the number of invalid blocks of each of the stripes is held. And updating the held value of the number of valid blocks or the number of invalid blocks of the stripe in accordance with storage of data in the stripe and invalidation of data on the stripe. Data management method.
JP30592797A 1997-11-07 1997-11-07 Data management system and data management method Expired - Fee Related JP4131579B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30592797A JP4131579B2 (en) 1997-11-07 1997-11-07 Data management system and data management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30592797A JP4131579B2 (en) 1997-11-07 1997-11-07 Data management system and data management method

Publications (2)

Publication Number Publication Date
JPH11143745A true JPH11143745A (en) 1999-05-28
JP4131579B2 JP4131579B2 (en) 2008-08-13

Family

ID=17950983

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30592797A Expired - Fee Related JP4131579B2 (en) 1997-11-07 1997-11-07 Data management system and data management method

Country Status (1)

Country Link
JP (1) JP4131579B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008120359A1 (en) * 2007-03-29 2008-10-09 Fujitsu Limited Database management program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008120359A1 (en) * 2007-03-29 2008-10-09 Fujitsu Limited Database management program
JPWO2008120359A1 (en) * 2007-03-29 2010-07-15 富士通株式会社 Database management program

Also Published As

Publication number Publication date
JP4131579B2 (en) 2008-08-13

Similar Documents

Publication Publication Date Title
US5809511A (en) Outboard data migration in a volume stacking library
US6813623B2 (en) Method and apparatus for chunk based transaction logging with asynchronous input/output for a database management system
US6119209A (en) Backup directory for a write cache
US7949839B2 (en) Managing memory pages
JP4214712B2 (en) Database page allocation processing method
US5715447A (en) Method of and an apparatus for shortening a lock period of a shared buffer
JPH0415839A (en) Distributed data base control device
US6782444B1 (en) Digital data storage subsystem including directory for efficiently providing formatting information for stored records
US6029229A (en) Digital data storage subsystem including directory for efficiently providing formatting information for stored records
US5276878A (en) Method and system for task memory management in a multi-tasking data processing system
US6691121B1 (en) Method and apparatus for online and dynamic extension of IMS data entry databases
EP0351109A2 (en) Reducing resources in a high reliability data storage subsystem
JP4131579B2 (en) Data management system and data management method
US7107404B2 (en) Method and system for data processing for controlling a cache memory
US11567671B2 (en) Method, electronic device, and computer program product for storage management
US11954328B2 (en) Storage management device, storage management method, and program
WO1993021579A1 (en) Method for managing data records in a cached data subsystem with non-volatile memory
US12566754B1 (en) Transaction and defragmentation management
JPH03116248A (en) Data maintenance system for data base
US5659744A (en) Data file store system with means for efficiently managing freeing of data blocks
JP2735400B2 (en) Asynchronous I/O control method
JP2903605B2 (en) File area management processing method
JPS62297948A (en) Database failure recovery method
CN118277158A (en) Data recovery method, computer readable storage medium and memory
EP0537893B1 (en) File storage apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080219

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080421

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080520

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080527

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110606

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110606

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120606

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees