JPH11194899A - ディスク記憶システム及び同システムに適用するデータ更新方法 - Google Patents

ディスク記憶システム及び同システムに適用するデータ更新方法

Info

Publication number
JPH11194899A
JPH11194899A JP9366782A JP36678297A JPH11194899A JP H11194899 A JPH11194899 A JP H11194899A JP 9366782 A JP9366782 A JP 9366782A JP 36678297 A JP36678297 A JP 36678297A JP H11194899 A JPH11194899 A JP H11194899A
Authority
JP
Japan
Prior art keywords
data
logical
blocks
block
write
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
Application number
JP9366782A
Other languages
English (en)
Inventor
Haruo Tomita
治男 冨田
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 JP9366782A priority Critical patent/JPH11194899A/ja
Priority to US09/130,102 priority patent/US6233648B1/en
Publication of JPH11194899A publication Critical patent/JPH11194899A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems

Abstract

(57)【要約】 【課題】高速の書込み方法を採用したRAID方式のデ
ィスク記憶システムに適用して、特にデータ更新処理に
関する性能の向上を図ることにある。 【解決手段】RAID構成のディスク記憶システムであ
って、ストライプに相当する記憶容量を有する書込みバ
ッファ6と、バッファ管理テーブル7と、制御装置1と
を有し、制御装置1は書込みバッファ6に必要に応じて
データ長を可変した論理ブロックを蓄積し、データ更新
処理時に書込みバッファ6に蓄積した論理ブロックがN
*K−1個に達するまでその論理ブロックの更新を遅延
させ、N*K−1個の論理ブロックに論理アドレス・タ
グ・ブロックを加えたN*K個の論理ブロックを、旧デ
ータを保持している領域とは別の空領域の中から連続し
た記憶領域を選択して、連続した書込み操作により順次
書込む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、特にRAID(Re
dundant Array of Inexpensive Disk )と呼ぶディスク
アレイ装置から構成されるディスク記憶システムに適用
し、具体的にはデータ更新機能を改善したディスク記憶
システムに関する。
【0002】
【従来の技術】従来、複数のディスクドライブから構成
されるディスクアレイ装置(RAIDと呼ぶ)が周知で
ある。RAIDは、例えばネットワーク・サーバに接続
されて、大容量のデータを記憶できるディスク記憶シス
テムである。このようなRAIDに関して、特に高速の
データ書込み方法として、データ更新処理時に更新デー
タを旧データの記憶領域に書換えることなく、更新デー
タを一括して書込む方法が提案されている。具体的に
は、更新データを用意した書込みバッファに蓄積し、こ
の蓄積した更新データをディスクドライブ内に予め用意
した空領域に一括して書込む方法である(特開平6−2
14720号公報、特開平6−266510号公報、特
願平9−214645号公報を参照)。
【0003】図22を参照して、従来の書込み方法(デ
ータ更新方法)について簡単に説明する。図22におい
て、L1〜L99は論理ブロックを意味し、P1〜P5
6はディスク装置(ディスクドライブ)内の物理ブロッ
クを意味する。ここでは、論理ブロックL6,L4,L
2,L12,L7,L11のそれぞれを更新する場合を
想定する。これらの論理ブロックの各旧データは、ディ
スク装置内の物理ブロックP6,P4,P2,P12,
P7,P11に存在する。従って、通常の書込み方法で
は、これらの物理ブロックP6,P4,P2,P12,
P7,P11の内容を更新することになる。しかし、高
速の書込み方法では、物理ブロックP6,P4,P2,
P12,P7,P11の各データはそのまま維持して、
新しい論理ブロックL6,L4,L2,L12,L7,
L11の各データを予め用意した別の空領域である物理
ブロックP51,P52,P53,P54,P55,P
56に一括して書込む。これにより、通常の書込み方法
では6回の書込み操作が必要であるが、高速の書込み方
法では例えば2物理ブロックを一括して書込む場合には
3回の書込み操作に減少させることが可能であり、書込
み性能を向上させることができる。
【0004】ここで、図22に示す具体例では、便宜的
に1ディスクに2物理ブロックを一括して書込む場合を
示しているが、実際には数十物理ブロックが一括して書
込まれる。また、レベル4のRAID方式(RAID4
方式)およびレベル5のRAID方式(RAID5方
式)では、1個のストライプ(N*K個の論理ブロック
であり、Nはドライブ数、Kはブロック数)を一括して
書換えることが可能であるため、パリティ維持のための
ディスク読出し動作も不要であり、書込み時のオーバヘ
ッドを減少させることも可能である。なお、RAID4
方式は、データの配置単位をビットやバイトのような小
さな単位ではなく、セクタやブロックのような大きな単
位とし、小容量のデータ読出し要求に対してディスクを
独立動作可とする方式である。また、RAID5方式
は、冗長データ(パリティデータ)を専用のパリティデ
ィスクに格納するのではなく、各データディスクに巡回
的に配置する方式である。
【0005】一方、論理ブロックL6、L5、L2、L
12、L7、L11の各最新データはディスク装置内の
物理ブロックP51〜P56に存在するので、間接マッ
プの内容を正しいディスク位置を指示するように書き換
える。また、論理ブロックのデータを読出すときには、
この間接マップを参照して、最新のディスク位置を求め
てから読出すので、旧データを読出すような不都合は発
生しない。
【0006】
【発明が解決しようとする課題】前記のような従来の高
速の書込み方法では、図22に示すように、不揮発性メ
モリ上に書込みバッファを用意し、この書込みバッファ
を介してディスク装置内の空領域をブロック単位に分割
し、空ブロックから順番に詰めて格納している。このた
め、読出すデータが連続である場合にもブロック単位に
分割してから、ブロック毎のアドレスに変換する必要が
ある。従って、ホストシステムから論理ブロックのデー
タ長を越える読込み要求があった場合に、当該要求デー
タは複数の論理ブロックに分割されるという問題点があ
る。
【0007】また、特にデータ更新処理においては、毎
回更新すべきデータがバッファ管理テーブルに対応する
エントリに存在するかどうかを変換マップを使用して検
索する必要があるため、この検索に要する分だけ処理時
間が増大する問題がある。さらに、変換マップはディス
ク装置の記憶容量に依存して、システムのメインメモリ
上に作成する必要があるため、当該メインメモリの使用
容量を制限する要因になっている。
【0008】そこで、本発明の目的は、特にRAID方
式のディスク記憶システムにおいて、高速の書込み方法
を適用した場合のデータ更新処理に関する性能の向上を
図ることにある。
【0009】
【課題を解決するための手段】本発明は、特にRAID
方式のディスク記憶システムにおいて、連続したデータ
の読出し要求に応じた読出し処理時に、原理的に論理ブ
ロックを分割することなく読出し処理を実行する方式で
ある。また、データ更新処理時にバッファ管理テーブル
に対する変換マップのエントリを検索するための検索処
理の効率化を実現する方式である。
【0010】具体的には、本発明は、N台のディスクド
ライブから構成されるディスク記憶システムであって、
N*K(Kはブロック数を意味する整数)個の論理ブロ
ックに相当する記憶容量を有する書込みバッファ手段
と、前記書込みバッファを前記各ディスクドライブとの
間で転送される読出しデータ及び書込みデータのキャッ
シュメモリとして管理し、前記書込みバッファに必要に
応じてデータ長を可変した前記論理ブロックを蓄積する
キャッシュ管理手段と、データ更新処理時に前記書込み
バッファに蓄積した論理ブロックがN*K−1個に達す
るまでその論理ブロックの更新を遅延させ、前記書込み
バッファに蓄積された各論理ブロックに対する論理アド
レスから構成される論理アドレス・タグ・ブロックを生
成し、N*K−1個の論理ブロックに前記論理アドレス
・タグ・ブロックを加えたN*K個の論理ブロックを、
前記各ディスクドライブ上の更新対象の旧データを保持
している領域とは別の空領域の中から連続した記憶領域
(セクタ単位)を選択して、連続した書込み操作により
順次書込むためのデータ更新手段とを有するシステムで
ある。
【0011】また、本発明の別の観点として、前記デー
タ更新手段は、データ更新処理時に前記書込みバッファ
に蓄積した論理ブロックがN*K−1個に達するまでそ
の論理ブロックの更新を遅延させ、前記書込みバッファ
に蓄積された各論理ブロックに対する論理アドレスから
構成される論理アドレス・タグ・ブロックを生成し、N
*K−1個の論理ブロックに前記論理アドレス・タグ・
ブロックを加えたN*K個の論理ブロックからK個のパ
リティブロックを生成し、この論理ブロックにパリティ
ブロックを加えたN*K個の論理ブロックを、前記各デ
ィスクドライブ上の更新対象の旧データを保持している
領域とは別の空領域の中から連続した記憶領域(セクタ
単位)を選択して、連続した書込み操作により順次書込
む機能を有するように構成されたディスク記憶システム
である。
【0012】このような構成により、読出すデータが連
続である場合には、不揮発姓メモリ上に設ける書込みバ
ッファの空領域を論理ブロック単位に分割する必要性を
無くすことが可能となる。
【0013】
【発明の実施の形態】以下図面を参照して本発明の実施
の形態を説明する。
【0014】図1及び図23は本実施形態のRAID方
式のディスク記憶システムの概念的構成を示すブロック
図である。なお、本発明に関する記述の全体を通じて、
より詳細に説明するために図1に示す実施形態を中心と
して説明するが、当該技術分野に属する熟練者であれ
ば、図1及び図23から派生するシステム構成であっ
て、本発明を実施することが可能であればよい。例え
ば、図1において、ホストシステム10と制御装置1と
のインターフェースは、SCSIインターフェースであ
っても良いし、PCIインターフェースであってもよ
い。なお、図23のシステムは、図1に示すバッファ管
理テーブル7に相当するバッファ管理情報23−7を揮
発性メモリ3である主記憶メモリ23−3に設けた場合
であり、ほかの構成要素は図1に示すシステムと同様で
ある。 (システム構成)本システムは、図1に示すように、制
御装置(CPU)1、ディスク装置2(ディスクドライ
ブ21,22,23,24)、揮発性メモリ3、および
不揮発性メモリ4から構成される。揮発性メモリ3に
は、書込の時間的順序を維持するためのタイムスタンプ
5、論理アドレスからディスク装置2へアクセスするた
めの物理アドレスへの変換を行なうための変換マップ8
が設けられている。また、不揮発性メモリ4には、ディ
スク装置2に書込むデータをログ構造化して保持するた
めの書込みバッファ6として使用する領域、およびバッ
ファ管理情報(バッファ管理テーブル)7を格納する領
域が設けられている。バッファ管理情報7は、書込みバ
ッファ6内に保持されている書込みデータの論理アドレ
スを管理するためのテーブル情報である。制御装置1
は、タイムスタンプ5、書込みバッファ6、およびバッ
ファ管理情報7を管理することにより、ディスク装置2
に対するデータの入出力を制御する。 (書込みバッファ6とバッファ管理情報7との関係)図
2から図5は、不揮発性メモリ4に割り付けられた書込
みバッファ6とバッファ管理情報7との関係を示す図で
ある。
【0015】本実施形態のシステムでは、制御装置1
は、外部のホストシステム10から書込み要求された書
込みデータを、ディスク装置2に対して即書込み処理せ
ずに、当該書込みデータをデータ長に応じて最適なブロ
ック単位に分割し、書込みバッファ6にログ形式で順番
に詰めて格納する。このとき、ホストシステム10から
の書込みデータの論理アドレスを、書込みバッファ6の
格納領域に対応するバッファ管理テーブル7のエントリ
に格納する。
【0016】バッファ管理テーブル7のエントリには、
エントリの状態を示すフラグ(F,U,C)が設定され
る。フラグFは、エントリにデータが割り当てられた事
を示す。フラグUは、エントリが使用されていない状態
を示す。フラグCは次のエントリが連続したデータによ
り割り当てられている状態を示す。制御装置1は、バッ
ファ管理テーブル7を参照することにより、ホストシス
テム10から受取った書込みデータを格納すべき次の書
込みバッファ6の格納位置を決定できる。図2に示す具
体例では、書込みバッファ6のバッファ領域(格納位
置)B0からB7まで書込みデータが格納されている。
LA99、LA100、L35、L678…、LA54
1は、格納されている書込みデータの論理アドレスを意
味する。
【0017】ここで、本実施形態では、書込みバッファ
6からディスク装置2への書込み処理はストライプ単位
であり、読込み処理は可変長の論理ブロック単位である
と想定する。ストライプ単位の書込み処理とは、N台の
ディスクドライブにおいて、N*K(Kブロック数を示
す整数)個の論理ブロックのデータの一括書込み動作の
実行である。 (本実施形態の動作の説明)まず、図2を参照して、書
込みバッファ6に格納された論理ブロックのデータの前
の論理アドレスに位置する論理ブロックに、ホストシス
テム10から書込み要求があった場合の動作を説明す
る。本実施形態では、説明を簡略にするために、書込み
バッファを書込みバッファと読込みバッファとの共有バ
ッファとして想定しているが、これらのバッファはそれ
ぞれ独立であっても問題ない。この場合、当然ながら読
込みバッファは揮発性メモリまたは不揮発性メモリのい
ずれにあってもよい。
【0018】制御装置1は、ホストシステム10から書
込み要求された書込みデータに対応する論理アドレスL
A34の場合において、バッファ管理テーブル7を参照
して、次に書込み可能な書込みバッファ6のバッファ領
域B8(フラグUにより現時点では未格納領域)を認識
する。このとき、書込み用の論理アドレスとして連続し
たバッファ領域を割り当てることが可能ように、書込み
バッファ6上の格納位置(バッファ領域)を移動して、
バッファ領域B2を格納位置として決定する。即ち、図
3に示すように、制御装置1は、論理アドレスLA34
のデータをバッファ領域B2に格納し、バッファ領域B
8まで順次移動してデータを格納する。
【0019】次に、書込みバッファ6に格納された論理
ブロックのデータ更新処理において、2論理ブロックに
またがる書込み要求の場合の動作を説明する。
【0020】ホストシステム10からから書込み要求さ
れた書込みデータに対応する論理アドレスLA100の
場合において、制御装置1は、図2に示すバッファ管理
テーブル7を参照して、次の書込み可能なバッファ領域
B8及び論理アドレスLA100に対応するバッファ領
域B1を認識する。ここで、データ更新処理として、2
論理ブロックにまたがるため、論理アドレスLA100
のデータサイズが増えた分の論理アドレスLA101に
対応するバッファ領域を割り当てる必要がある。この場
合には、遅延したストライプ毎の書込み処理時に、スト
ライプ上の物理ブロックとして連続に割り当てるように
する。このときのブロック移動は最小ですむようにする
と効率が良い。このデータ更新処理では、図4に示すよ
うな状態となる。
【0021】さらに、論理アドレスとして連続する2ブ
ロックの読出し要求に対して、物理アドレスとして連続
的に配置されていない場合に、物理アドレスとして連続
化するための作を説明する。
【0022】ホストシステム10から要求された論理ア
ドレスがLA111、LA112の場合において、制御
装置1は、図2に示すバッファ管理テーブル7を参照し
て、次の書込み可能なバッファ領域B8、及び論理アド
レスとして連続したバッファ領域を割り当てることが可
能であるバッファ領域B4、B5を決定する。ここで
は、論理アドレスLA111及びLA112のそれぞれ
に対応するデータが、ディスク装置2上の別々のストラ
イプに配置されている場合を想定するので、2回の読出
し処理が必要となる。そこで、連続したブロックとして
まとめることにより、当該ストライプが書込まれた後で
は、読出し処理のためのディスク装置2への読込み要求
は、同一ストライプ上の連続した物理ブロックへの要求
を一度だけ実行すればよい。この場合の書込み処理で
は、図5に示すような状態となる。
【0023】以上のように書込みバッファ6とバッファ
管理テーブル7との関係について説明した。図2から図
5に示す具体例では、書込みバッファ6に対する読込み
処理や書込み処理時に連続した論理アドレスとして位置
するデータに対して、物理的にも連続したアドレスにな
るようにデータの再配置が行なわれる。但し、コンピュ
ータシステムのデータ転送の性能に基づいて、書込みバ
ッファ6の全てのデータを論理アドレスの順番に並び替
える方法でもよい。また、データを並び替える代わり
に、書込みバッファ6からディスク装置2に書出すブロ
ックの順を示したリストを備えることにより、データ移
動を伴うことなく、リスト中の順番を変更する方法でも
よい。
【0024】また、ディスク装置2(ディスクドライブ
21〜24)は、それぞれブロックサイズの整数倍
(K)であるストライプユニットと呼ぶ予め決められた
単位(ディスク上の1トラック長に近いサイズが良い)
で書込み処理を一括して実行する。このとき、ディスク
ドライブ21〜24の物理的に同じ位置のストライプユ
ニットは1つのストライプとして、同じタイミングで書
込み処理が行われる。また、ホストシステム10には、
実際のディスクドライブ21〜24を合わせて全記憶容
量よりも少ない容量のディスク装置2として見られてい
る。具体的には、ホストシステム10が初期時にディス
ク装置2の記憶容量を問い合わせて来ると、制御装置1
は実際の記憶容量より少ない記憶容量を応答する。従っ
て、ホストシステム10が論理的に書込み、読出し可能
な記憶領域以外に、ディスク記憶システムとしては独自
の記憶領域を確保することが可能となる。この記憶領域
を、本実施形態では空領域と呼ぶことにする。
【0025】さらに、タイムスタンプ5は、ホストシス
テム10からの書込みデータが実際にディスク装置2に
書込まれるときに付加される情報であり、ディスク装置
2内でのデータ書込み順序を判定するのに使用される。
書込みバッファ6のデータがディスク装置2に書込まれ
る毎に、タイムスタンプ5はインクリメントされること
になる。 (システムの書込み動作)以下図1のシステムにおい
て、本実施形態の書込み動作を主として図6を参照して
説明する。
【0026】制御装置1は、ホストシステム10から書
込みデータとその論理アドレスを受取ると、不揮発性メ
モリ4上の書込みバッファ6の空領域にブロック単位に
分割して詰めて格納する。また、受取った論理アドレス
はブロック毎のアドレスに変換して、バッファ管理テー
ブル7の対応するエントリに格納する。これらの処理
は、受取った論理アドレスおよび書込みバッファ6に既
に格納されているデータを参照することにより、書込み
バッファ6の最適な格納位置に詰めて格納する。なお、
既に書込みバッファ6に格納されているデータに対する
データ更新処理の場合には、書込みバッファ6の空領域
に詰めて格納するのではなく、直接に書込みバッファ6
内の旧データを更新する。
【0027】ホストシステム10からの書込みデータ
は、1ストライプ分に1ブロック少ない数(N*K−
1)だけ書込みバッファ6に蓄積された段階で、制御装
置1はそれらのデータをディスク装置2に書込み処理す
る。このとき、最後の書込みブロックとして、バッファ
管理テーブル7に格納された各ブロックの論理アドレス
と揮発性メモリ3上のタイムスタンプ5から論理アドレ
ス・タグ・ブロックを作成する。この論理アドレス・タ
グ・ブロック内のアドレスデータとデータブロックとの
間には、1対1の関係があらかじめ設定されており、各
データブロックの論理アドレスが分かるようになってい
る。
【0028】この後に、制御装置1は、当該論理アドレ
ス・タグ・ブロックを加えた1ストライプ分のデータ
を、一括してディスクドライブ21−24の空領域に同
時に書き込む。前述したように、1ストライプ内の書込
みブロックは、論理アドレスに対して連続した領域にな
っているため、最新のデータは同じストライプ上に連続
した配置となるため、読込み性能が向上する。このよう
な動作を図6に示す。
【0029】ここで、タイムスタンプ5の値は書込み処
理が完了した段階でインクリメントされる。このよう
に、多数の細かいディスク書込み処理を1回で一括して
実行できるため、ディスク書込み性能を向上させること
ができる。 (データ更新処理時の詰替え処理)次に、図7を参照し
てデータ更新処理時の詰替え処理について説明する。
【0030】データ更新処理時では、旧データの領域を
直接書き換えるのではなく、更新データを蓄積し、ディ
スク装置2内に予め用意した別の空領域に一括して書込
む方法では空領域が常に存在することが必須である。こ
のため、ホストシステム10からのディスクアクセスが
空いている間に、既に他の領域にデータが書込まれて無
効になっているデータを寄せ集めて空領域を作る必要が
ある。この処理を詰替え処理と呼ぶ。この詰替え処理
は、無効ブロック判定処理とストライプ統合の2つの処
理からなる。
【0031】無効ブロック判定処理の具体例として、図
7に示すように、ホストシステム10からのデータ書込
み要求において、1ブロックサイズの書込み順序を想定
する。図7において、L18などの「L××」はホスト
システム10から渡される論理ブロック(論理アドレ
ス)を意味し、S1などの「S××」は書込み順番を表
わす。本実施形態では、書込みバッファ6は15論理ブ
ロックのデータを保持できる。最初のS1〜S15の書
込みデータが、1つのストライプ(ST1)にまとめら
れて、タイムスタンプT1が付加されてディスク装置2
の空領域に書き出される。同様に、S16〜S30の書
込みデータが別のストライプ(ST2)としてタイムス
タンプT2が付加されて別の空領域に書き出される。な
お、書き出し毎に、タイムスタンプ5はインクリメント
されるので、「T1<T2」の関係がある。
【0032】ここで、図7から明らかなように、論理ブ
ロックL9、L18のデータはタイムスタンプT1のス
トライプではS5、S2として、タイムスタンプT2の
ストライプではS19、S21のブロックとして重複し
て存在する。書込まれた順番を考えると、S19、S2
1のデータブロックが有効であり、S5、S2のデータ
は無効と判定されなければならない。しかし、ここでは
便宜上、使用した書込み順番S××は実際のディスク上
には記録されていない。
【0033】そこで、ストライプ内の論理アドレス・タ
グを使用して、この無効ブロック判定処理を行なう。図
7の具体例において、2つのストライプST1、ST2
の論理アドレス・タグTG1、TG2の内容は、図8に
示す通りである。図8から明らかなように、2つの論理
アドレス・タグTG1、TG2には同じ論理ブロックL
9、L18のデータが含まれている。ストライプST1
のブロックB5、B2及びストライプST2のブロック
B4、B6のいずれかのデータが無効である。また、論
理アドレス・タグTG2には有効なデータである論理ブ
ロックL18とL19が存在している。さらに、論理ア
ドレス・タグTG1のタイムスタンプT1と論理アドレ
ス・タグTG2のタイムスタンプT2とを比較すると、
「T1<T2」の関係にあることから、ストライプST
1のブロックB5、B2が無効であることが判定でき
る。以上のように、ディスク装置2内の論理アドレス・
タグを参照することにより、無効なデータブロックを見
つけることができる。なお、このような処理に必要な読
み書きに伴うバッファは書込みバッファ7とは独立にし
た方が性能が向上する。当然ながら、書込みバッファ7
と共有してもよい。
【0034】ストライプ統合処理の具体例として、図9
に示すように、2つのストライプST3、ST4を1つ
のストライプST5に統合する場合を想定する。図9に
示すように、ストライプST3ではB2、B7、B8、
B12、B13の5ブロックが有効であり、他の10ブ
ロックは無効(ハッチング)であるとする。同様に、ス
トライプST4ではブロックB18、B19、B20、
B21、B22、B24、B25、B27、B29の9
ブロックが有効であり、他の6ブロックが無効(ハッチ
ング)であるとする。2つのストライプの有効ブロック
は合わせて14ブロックしかないので、この2つのブロ
ックを1つに統合することにより、結果として1つの空
領域が作れる。
【0035】ストライプ統合では図9に示すように、2
つのストライプST3、ST4を揮発性メモリ3内に読
みだし、有効なブロックだけを詰めて書込みバッファ6
に移す。この場合に、ストライプST1とストライプS
T2の中にある有効なブロックの中から論理アドレスが
連続になるようにする。こうする事により、統合された
ストライプST5のブロックは、論理アドレスとしてだ
けでなく物理アドレスとしても連続したデータを保持で
きることになる。これに合わせて、図10に示すよう
に、論理アドレス・タグもTG3、TG4から有効ブロ
ックの論理アドレスだけを対応する位置に移し、新しい
論理アドレス・タグTG5を作成し、その時点のタイム
スタンプ5を更新する。図10から明らかなように、新
しく作成された論理アドレス・タグTG5に含まれる論
理ブロック(アドレス)L13、L14とL22とL2
3は、ストライプST5上でも連続な領域となってい
る。すなわち、論理的にも物理的にも連続な領域が確保
されていることになる。
【0036】この具体例のように、14個の有効ブロッ
クを想定する場合には、さらにホストシステム10から
1つの書き込みブロックを有するストライプを完成させ
て、ディスク装置2の空領域に一括して書き込むことに
なる。このとき、論理アドレスの並替えを行なっても問
題はない。この場合、ディスク領域は有効に活用される
が、ホストシステム10からバーストでディスクアクセ
スがある場合には、書き込み処理を待たすために、ディ
スクアクセスが集中する可能性が高い。そこで、最後の
データブロックは空状態のままにして、アクセスが空い
ている間に書き込むことも可能である。このとき、論理
アドレス・タグTG5の最後のデータブロックに対する
論理アドレスには−1等NULLアドレスを入れること
により、データが入っていないことを表し、データが格
納されているデータブロックに対して論理アドレスの並
び変えをしても問題は発生しない。
【0037】次に、書込まれたデータブロックの読出し
動作について説明する。
【0038】前述の詰替え処理における無効ブロック判
定処理を、ディスク装置2内の全ストライプの論理アド
レス・タグに対して行うことにより、全論理アドレスに
対する有効ブロックの物理的位置を検出できる。従っ
て、原理的には、ホストシステム10から読出しブロッ
クの論理アドレスを受け取る度に、全ストライプのチェ
ックを行うことにより、読出すべき物理ブロックを見つ
け出すことが出来る。しかし、この方法ではブロック読
出し処理に膨大な時間を要するため実用的ではない。
【0039】そこで、システム起動時にだけ、全ストラ
イプの論理アドレス・タグの調査を実行して、揮発性メ
モリ3上に論理アドレスから物理アドレスへの変換マッ
プ8を作成する。ホストシステム10からの読出し要求
に対しては、当該変換マップ8を使用して有効ブロック
へのアクセスを実行する。これにより、常に論理アドレ
ス・タグの調査をしなくても良く、読出し時に性能が大
きく低下することはない。また、この変換マップ8は何
時でも全ストライプを調査することで再生できるため、
従来のように電源障害に備えて不揮発メモリ4上に格納
する必要はない。 (変換マップの構成)以下図11から図13を参照し
て、本実施形態の変換マップ8の構成について説明す
る。
【0040】変換マップ8は、図11に示すように、各
論理アドレスに対するブロックが格納されているストラ
イプ番号ST#、当該ストライプ内のブロック番号BL
K#、さらにタイムスタンプTS#をテーブル形式で保
持しているテーブル情報である。制御装置1は、論理ア
ドレスL0〜Lnにより変換マップ8を参照して、ST
#とBLK#から実際の物理アドレスを求める。
【0041】ここで、システム起動時には、全ストライ
プの論理アドレス・タグを調査し、ディスク装置2内の
全てのストライプに対して、無効ブロックを検出する。
次に、全てのストライプに対してストライプ統合処理を
実行する。この場合には、各論理アドレスに対応するブ
ロックが格納されているストライプ番号ST#と、当該
ストライプ内のブロック番号BLK#と、タイムスタン
プTS#とから、論理アドレスの連続性を考慮して、ス
トライプ番号ST#、ブロック番号BLK#をできる限
り連続的になるように再配置する。これにより、連続し
たデータの読込み時に、ストライプ番号ST#が異なっ
たり、同じストライプ番号ST#でブロック番号BLK
#が不連続になるという可能性が少なくなり、ブロック
毎に行なっていた読込み要求は、書込みバッファ6とバ
ッファ管理テーブル7との関係からも分かるように、複
数ブロックを一度に読込むことが可能になり、性能低下
を軽減できる。
【0042】図11に示す変換マップの具体例では、デ
ィスク装置2へ書込み処理または更新処理のためにアク
セスする場合には、変換マップ8の全てのエントリを参
照することになる。この方法では、全てのエントリを検
索しなければならず、検索中に変換マップ8の全体を排
他制御しなければならないといった制約があるため、効
率的なアドレス変換であるとはいえない。そこで、効率
的なアドレス変換を可能にするために、論理アドレスを
ハッシュキーにした変換マップ(図12を参照)や論理
アドレスを2分岐検索する変換マップ(図13を参照)
を作成することが望ましい。これらの変換マップを使用
することにより、効率的なアドレス変換が可能となる。
【0043】論理アドレスをハッシュキーにした変換マ
ップの場合には、頻繁に使用される論理アドレスのエン
トリをハッシュリストの先頭に配置するように作成す
る。このことにより、読み出したデータを更新するとき
に、更新性能が向上する。本構造で変換マップを作成す
る場合には、検索時間を考慮して、根の論理アドレスに
考慮する必要がある。図13の具体例では、コンピュー
タシステムで取扱い可能な論理アドレスの中間値を使用
した2分岐による本構造であるが、多分岐による本構造
も可能である。
【0044】また、システム起動時の変換マップの作成
は、調査した論理アドレス・タグの全論理アドレスにつ
いて、テーブルのタイムスタンプ5より論理アドレス・
タグのタイムスタンプ5が大きいときだけ、そのストラ
イプ番号ST#と対応するブロック番号BLK#を各々
の変換マップに応じてテーブル、ハッシュリスト、本構
造に登録する。この調査を全ストライプについて行なえ
ば、有効ブロックだけを指す変換マップが作成される。
この場合にも、ストライプ統合処理と同様の処理をする
ことにより、連続したデータの読込み処理時に、ストラ
イプ番号ST#が異なったり、同じストライプ番号ST
#でブロック番号BLK#が不連続となる可能性が少な
くなり、性能を低下することがなくなる。更に、ディス
ク装置2にストライプを書込む毎に、その論理アドレス
・タグに対して同様の処理を行なうことにより、この変
換マップは常に有効なブロックを指す。また、ディスク
アクセスが空いているときに、各ストライプの論理アド
レス・タグと変換マップとを比較検査することにより、
離散しているデータを同一のストライプや連続したブロ
ックに統合することができる。更に、メモリ障害等でこ
の変換マップが不正な値になっても検出可能である。
【0045】以上のような変換マップ8は、ディスク装
置2の記憶容量に応じて、書き込み処理の時間的順序を
維持するために必要なタイムスタンプ5と、論理アドレ
スから物理アドレスへのアドレス変換を行なうため揮発
性メモリ3の記憶容量とが必要となる。このため、記憶
容量が大きなディスク装置2の場合には、メインメモリ
上の揮発性メモリ3が多く必要となるため実際的ではな
い。そこで、最新データの位置情報を管理する間接マッ
プの一部を、ディスク装置内の空領域に格納し、変換す
るデータとその論理アドレスとが間接マップに存在しな
い場合には、保存してあるディスク装置2内の空領域か
ら間接マップを読みだし、間接マップを再作成すること
が有効になる。
【0046】ここで、間接マップを再作成する場合につ
いて説明する。論理アドレスから物理アドレスに変換す
る度に、ディスク装置に保存してある間接マップを読出
して再作成する方式では、コンピュータシステムの性能
上から容認しがたいものになってくる。そこで、ディス
ク装置内に保存してある間接マップの一部に対して、高
頻度の読出し要求が発生しないようにすることが重要と
なる。そのためには、各論理アドレスに対応する間接マ
ップのエントリのタイムスタンプの古いものから順番に
ディスク装置2へ保存することにより、最適な間接マッ
プを構成することが可能である。
【0047】以上のように、変換マップ8の作成処理に
おける要素は論理アドレス・タグの検査である。故に、
大容量のディスク装置2のように論理アドレス・タグ数
が多い場合、電源障害やシステム起動時の変換マップ作
成に長時間を要する。特に、図2に示すように、論理ア
ドレス・タグ・ブロックが1台のディスクドライブ24
に集中すると、システム起動時には当該ディスクドライ
ブ24にアクセスが集中し、論理アドレス・タグの調査
を並列に行うことが不可能となる。そこで、図14に示
すように、ストライプにより論理アドレス・タグが格納
されるディスクドライブを4台に分散して並列に論理ア
ドレスタグを調査することにより、この変換マップ作成
に要する時間を1/4に短縮化できる。 (セグメント分割管理)図15と図16はディスク装置
2の記憶領域を複数のセグメントに分割管理するセグメ
ント分割管理方式を示す図である。この方式により、変
換マップ8の作成に必要な論理アドレス・タグの検査数
を削減することができる。図16にセグメント分割方式
におけるディスク装置の記憶領域の構成を示す。図16
に示すように、ディスク装置の記憶領域は、ストライプ
を単位としてセグメント管理情報(ハッチング)と4つ
のセグメントに分割される。ここで、セグメントとは書
込みバッファデータの一括書込み処理や詰め替え処理の
ディスク書込みがある期間集中して行われる単位領域の
ことである。例えば、セグメント2がディスク書込みの
対象である間は、セグメント1、3、4には書込み処理
が実行されないように空領域の選択を制御する。
【0048】また、あるセグメントの空領域が少なくな
りディスク書込みを他のセグメントへ切替えるときには
セグメント管理情報をディスク装置に保存する。セグメ
ント管理情報は図15に示すように、セグメント番号と
切替え時変換マップから構成される。セグメント番号と
は切替え先のセグメント番号で、切替え時変換マップと
はセグメントを切替える時点での揮発性メモリ3上の変
換マップ8の状態を示す。
【0049】なお、切替え時変換マップはセグメントが
切替える度に全て上書きするのではなく、直前のセグメ
ントに書込まれた論理アドレスのエントリだけを書き戻
せばよい。従って、前回のセグメント切替え時にタイム
スタンプを覚えておき、変換マップのタイムスタンプを
比較することにより、直前のセグメントに書込まれた論
理アドレスを判定できる。
【0050】このセグメント分割方式では、セグメント
切替え時にセグメント管理情報を保存している。よっ
て、セグメント切替え時の変換マップをセグメント管理
情報から読み出して、その後でセグメント管理情報のセ
グメント番号で指示されるセグメントの論理アドレスタ
グだけを検査するだけで、全論理アドレス・タグを検査
した場合と同じ変換マップが再現できる。従って、この
方式により必要な論理アドレス・タグの検査数は1セグ
メント分で良く、この例では変換マップの作成に要する
時間を1/4に短縮化することが可能となる。
【0051】更に、不揮発性メモリ4上にセグメント内
の全ストライプに対応したビットマップを用意して、セ
グメント切替え時にはこのビットマップをクリアし、一
括書込みや詰替えの書込み時には書込んだストライプに
対応するビットを“1”にセットする。これによりセグ
メントを切替えてから変更のあるストライプだけがビッ
トマップが“1”になる。従って、変換マップ作成時に
このビットマップを参照し、変更の有ったストライプの
論理アドレスタグだけを検査することで検査数をさらに
減らせ、変換マップ作成に要する時間を更に短縮化でき
る。
【0052】通常、論理アドレス・タグのサイズは51
2〜1024バイトであり、ディスクのシーケンシャル
アクセスとランダムアクセスに約50倍の性能差があ
る。図2に示す方式では論理アドレス・タグの情報が各
ストライプ毎にとびとびに存在するので、変換マップの
作成では時間のかかるランダムアクセスを実行してい
る。そこで、図17に示すように、論理アドレス・タグ
だけを連続して格納する専用タグ領域を(セグメント分
割する場合は、各セグメント毎に)用意し、50倍も高
速なシーケンシャルアクセスで論理アドレスタグを読み
出せるようにする。そして、ホストシステム10からの
データの一括書込み処理や詰替え処理時には、空領域だ
けでなく対応する専用タグ領域にも論理アドレス・タグ
を書込むようにする。この方式であれば、1ストライプ
当たり4回のディスク書込み処理に対して、専用タグ領
域への論理アドレス・タグの書込み処理のために、書込
み操作が1回増えることになる。しかし、変換マップ作
成が50倍も高速になるので、ディスク装置の立ち上が
り時間が問題となるときには非常に有効な手段である。
専用タグ領域への書込み時間を最小にするためには、専
用タグ領域は図17に示すように、対象領域を中心に設
定することにより、ディスクドライブのシーク時間を短
縮化することが望ましい。また、通常ではディスク装置
2はセクタ(512バイトなど)単位の書込み処理を実
行するため、専用タグ領域内の論理アドレスタグはセク
タ単位で割り付けて、論理アドレス・タグの書込み処理
時には読出し処理を不要にすることが望ましい。 (タイムスタンプの説明)図1に示すように、タイムス
タンプ5は揮発メモリ3上に記憶されている。このた
め、システムの電源障害などにより揮発メモリ3上のタ
イムスタンプ5が消去する可能性がある。そこで、変換
マップ8の場合と同様にして、システム起動時にだけ全
ストライプの論理アドレス・タグを調査し、一番大きな
タイムスタンプ5の次の値を揮発メモリ3上のタイムス
タンプ5にセットする。なお、変換マップの作成処理の
説明で述べた時間短縮手法がそのままタイムスタンプの
再生にも適用できる。
【0053】また、タイムスタンプ5はディスク装置2
に書込む度に、インクリメントされて、ディスク上の書
込み順序の判定処理のみに使用される。具体例として、
タイムスタンプ5が24ビットのカウンタで構成される
場合を想定する。24ビットカウンタでは、16M回の
書込み処理でカウンタが一周してクリアされてしまう。
そこで、一般的には有効なタイムスタンプ5の最小値を
基準として、それより小さい値は16Mを加えて比較し
て判定する。この最小値も同様にシステム起動時にだけ
全ストライプの論理アドレス・タグを調査して求める。
しかし、この手法が使えるのはタイムスタンプの最大値
が最小値を追い越さないこと、つまり、タイムスタンプ
の最大値と最小値との差が24ビットで表わせる範囲以
内であることを前提にしている。従って、タイムスタン
プ5が一周前に必ず全ストライプを更新してタイムスタ
ンプ値を新しく更新する必要がある。これには、無効ブ
ロックが少なくても予め設定した書込み回数の間に更新
されなかったストライプを詰替えの対象として選ぶよう
に制御するか、無効ブロックの論理アドレスをNULL
アドレスにした、そのストライプの論理アドレスタグだ
けを書き換える。NULLアドレスを使う方法は論理ア
ドレス・タグ・ブロックの書き換えであるので詰替え処
理と比較して常に軽い処理である。
【0054】尚、前記の具体例では、無効ブロック判定
処理に2つストライプST1、ST2の論理アドレス・
タグを相互に比較して判定する方法についてのみ説明し
たが、全無効ブロックを調べるには2つのストライプ間
の全組み合わせを調べなければならない。しかし、変換
マップがあれば論理アドレス・タグ内の各論理アドレス
について、有効データを指示している変換マップのタイ
ムスタンプとそのストライプのタイムスタンプとを比較
し、値が小さいブロックを無効ブロックと判定すること
ができる。 (本実施形態の変形例)図18は本実施形態の変形例を
示す図である。本実施形態は、RAID0方式を適用し
たシステムを想定している。これに対して、本変形例は
パリティデータを使用する冗長性ディスク構成のRAI
D5方式を適用したシステムである。
【0055】本システムは、図18に示すように、図1
のシステムに対して、冗長用のディスクドライブ25が
追加された構成である。なお、これ以外の制御装置1、
ディスク装置2(ディスクドライブ21、22、23、
24)、揮発性メモリ3、不揮発性メモリ4、タイムス
タンプ5、書込みバッファ6、およびバッファ管理情報
(テーブル)7は、図1に示す本実施形態と同じ機能を
有する要素である。
【0056】以下、本変形例のシステムの動作を、本実
施形態との差異を中心にして説明する。書込み処理で
は、ホストシステム10からの書込みデータが1ストラ
イプ分に1ブロック少ない数(N*K−1)だけ書込み
バッファ6に蓄積された段階で、制御装置1はそれらの
データをディスクドライブ21〜25に書込み処理して
いく。このとき、最後の書込みブロックとして、バッフ
ァ管理管理テーブル7に格納された各ブロックの論理ア
ドレスと揮発性メモリ3上のタイムスタンプ5とから論
理アドレス・タグ・ブロックを作成するまでは処理は、
本実施形態の場合と同様である。
【0057】この後、制御装置1は、図19に示すよう
に、論理アドレス・タグ・ブロックを加えた1ストライ
プ分のデータからストライプユニット毎の排他論理輪演
算(XOR)を実行し、パリティデータ(P)のストラ
イプユニットを作成する。そして、このパリティデータ
付きのストライプのデータを一括して、ディスクドライ
ブ21〜25の空領域に同時に書込む。本実施形態のよ
うに、可変長のブロック単位での読込み処理を行なう場
合には、書込むための空領域は、各ディスクの現在のス
トライプ位置からの差分が最も少なくなる空領域に近い
ストライプを選択する。このような選択方法により、各
ディスクのシーク時間による書込み処理の応答時間を均
等にすることができる。ストライプ単位での読込みによ
る場合には、このようなことにはならないので問題がな
い。
【0058】また、タイムスタンプ5の値は書込み処理
が完了した段階でインクリメントされる。このように多
数の細かいディスク書込み処理を1回にまとめられるの
に加え、パリティ計算に必要な旧データや旧パリティデ
ータのブロックを読込む必要がないので、さらにディス
クアクセス回数を減少することができる。なお、ストラ
イプ詰替え処理時のディスク書込み処理でも、同様にし
てパリティデータ付きのストライプを作成してからディ
スク装置2に書込む(図19を参照)。
【0059】冗長性ディスク構成(パリティ)のRAI
D5方式のシステムでは、1台のディスクドライブが故
障しても、故障したディスクドライブのデータはストラ
イプを構成する他ディスクドライブのデータとパリティ
データとのXOR演算を実行することにより再現するこ
とができる。しかし、システム起動時に一台故障してい
た場合には、論理アドレス・タグを格納していないディ
スクドライブのデータも読出して論理アドレス・タグを
再生してから検査するため、変換マップ8の作成処理に
かなり時間を要し、システム起動が完了するまでの時間
が大幅に増大してしまう。
【0060】そこで、図20に示すように、ストライプ
を構成するデータブロックを1つ減らして2つのディス
クドライブに同じ論理アドレス・タグを書込むように制
御する。これにより、ディスクドライブの1台が故障し
ても、変換マップ8の作成時には残っている方の論理ア
ドレス・タグを読出すことができるので、システム起動
に要する時間の大幅な増大を回避できる。
【0061】また、変換マップ作成の高速化のために専
用タグ領域を活用する場合、図21に示すように、論理
アドレス・タグが専用タグ領域に格納されるディスクド
ライブと、ストライプに格納されるディスクドライブと
が異なるように、専用タグ領域の論理アドレス・タグの
割り付け処理を制御することにより、ストライプ内の論
理アドレス・タグは1つでよい。
【0062】なお、専用タグ領域へ論理アドレス・タグ
を書込む場合も、パリティデータによるディスク障害対
策を行うと、従来1回の書込み操作の増大で済んでいた
ものが、2回の書込み処理と2回の読出し処理が必要に
なって、一括書込み処理時やストライプ詰替え処理時の
ディスク書込み動作のオーバヘッドが大きく増大する。
従って、この専用タグ領域の情報はパリティデータを使
用した障害対策を実行しない方が望ましい。専用タグ領
域の情報は変換マップ高速化のためであり、故障したデ
ィスクドライブの専用タグ領域に格納されていた論理ア
ドレス・タグは、ストライプ中のものを(ランダムアク
セスで)見れば良いので問題はない。また、ランダムア
クセスで検査する論理アドレス・タグは1/5だけであ
るので、変換マップ作成の高速化の効果はある。
【0063】なお、本実施形態は、RAID方式のディ
スク記憶システムに適用した場合について説明したが、
これに限る事なく、光磁気ディスク等を使用したシステ
ムにも適用することができる。また、シーケンシャル書
込み処理とランダム書込み処理とで大きく性能が異なる
ディスク記憶システムや、小ブロックの更新処理では2
回の読出し処理と2回の書込み処理とが必要なパリティ
による冗長性を持たせたRAID構成のディスク記憶シ
ステムにも適用できる。
【0064】
【発明の効果】以上詳述したように本発明によれば、デ
ィスク装置から読出すべきデータを不揮発性メモリ上の
書込みバッファの空領域に物理的に連続したブロック単
位に分割して詰めて格納する方式であるため、一括した
アドレスに変換できるため、読出しのための入出力要求
が分割される必要がない。また、ディスク装置の容量に
依存しないでメインメモリ上に変換マップを作成するこ
とができるため、メインメモリの記憶領域を効率的に使
用することができる。本発明を特に高速の書込み方法を
採用したRAID方式のディスク記憶システムに適用す
れば、特にデータ更新処理に関する性能の向上を図るこ
とが可能となる。
【図面の簡単な説明】
【図1】本発明の実施形態のRAID方式のディスク記
憶システムの概念的構成を示すブロック図。
【図2】本実施形態の書込みバッファとバッファ管理情
報との関係を示す概念図。
【図3】本実施形態の書込みバッファとバッファ管理情
報との関係を示す概念図。
【図4】本実施形態の書込みバッファとバッファ管理情
報との関係を示す概念図。
【図5】本実施形態の書込みバッファとバッファ管理情
報との関係を示す概念図。
【図6】本実施形態の書込み動作におけるディスク装置
の空領域の格納内容を説明するための図。
【図7】本実施形態の書込み動作における詰替え処理を
説明するための図。
【図8】図7の具体例におけるストライプST1、ST
2の論理アドレス・タグTG1/TG2の内容を示す
図。
【図9】図7の具体例におけるストライプ統合処理を説
明するための図。
【図10】図9のストライプ統合処理において、論理ア
ドレスタグTG3/TG4から論理アドレスタグTG5
を作成する場合の具体例を示す図。
【図11】本実施形態の変換マップの構成を説明するた
めの図。
【図12】本実施形態の変換マップの構成を説明するた
めの図。
【図13】本実施形態の変換マップの構成を説明するた
めの図。
【図14】本実施形態に関係する論理アドレス・タグを
分散配置した具体例を説明するための図。
【図15】本実施形態に関係するセグメント分割管理を
説明するための図。
【図16】本実施形態に関係するセグメント分割管理を
説明するための図。
【図17】本実施形態に関係する専用タグ領域の内容を
示す図。
【図18】本実施形態の変形例に関係するRAID5方
式のディスク記憶システムの概念的構成を示すブロック
図。
【図19】本変形例の動作を説明するための概念図。
【図20】本変形例に関係する論理アドレス・タグの作
成方法を示す図。
【図21】本変形例に関係する専用タグ領域を割付け方
法を説明するための図。
【図22】従来のディスク記憶システムのデータ更新方
法を説明するための概念図。
【図23】本発明の実施形態のRAID方式のディスク
記憶システムの概念的構成を示すブロック図。
【符号の説明】 1…制御装置(CPU) 2…RAID方式のディスク装置 3…揮発性メモリ(メインメモリ) 4…不揮発性メモリ 5…タイムスタンプ 6…書込みバッファ 7…バッファ管理情報(テーブル) 10…ホストシステム 21〜25…ディスクドライブ

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 N台のディスクドライブから構成される
    ディスク記憶システムであって、 N*K(Kはブロック数を意味する整数)個の論理ブロ
    ックに相当する記憶容量を有する書込みバッファ手段
    と、 前記書込みバッファを前記各ディスクドライブとの間で
    転送される読出しデータ及び書込みデータのキャッシュ
    メモリとして管理し、前記書込みバッファに必要に応じ
    てデータ長を可変した前記論理ブロックを蓄積するため
    の管理手段と、 データ更新処理時に前記書込みバッファに蓄積した論理
    ブロックがN*K−1個に達するまでその論理ブロック
    の更新を遅延させ、当該N*K個の論理ブロックを、前
    記各ディスクドライブ上の更新対象の旧データを保持し
    ている領域とは別の空領域の中から連続した記憶領域を
    選択して、連続した書込み操作により順次書込むための
    書込み制御手段とを具備したことを特徴とするディスク
    記憶システム。
  2. 【請求項2】 前記管理手段は前記書込みバッファ手段
    と共にメモリ上に構成されたバッファ管理テーブルを有
    し、書込みデータをデータ長に応じて最適なブロック単
    位に分割し、前記書込みバッファ手段にログ形式で順番
    に詰めて格納し、ホストシステムからの書込みデータの
    論理アドレスを前記書込みバッファ手段の格納領域に対
    応する前記バッファ管理テーブルのエントリに格納する
    ように構成されたことを特徴とする請求項1記載のディ
    スク記憶システム。
  3. 【請求項3】 前記書込み制御手段は、前記書込みバッ
    ファに蓄積された各論理ブロックに対する論理アドレス
    から構成される論理アドレス・タグ・ブロックを生成
    し、N*K−1個の論理ブロックに前記論理アドレス・
    タグ・ブロックを加えたN*K個の論理ブロックを前記
    各ディスクドライブ上の更新対象の旧データを保持して
    いる領域とは別の空領域の中から連続した記憶領域に書
    込みむように構成されたことを特徴とする請求項1記載
    のディスク記憶システム。
  4. 【請求項4】 N台のディスクドライブから構成される
    ディスク記憶システムに適用するデータ更新方法であっ
    て、 N*K(Kはブロック数を意味する整数)個の論理ブロ
    ックに相当する記憶容量を有する書込みバッファ手段に
    前記論理ブロックのデータ長を必要に応じて可変長で可
    変した前記論理ブロックを蓄積するステップと、 データ更新時に前記書込みバッファ手段に蓄積した前記
    論理ブロックがN*K−1個に達するまで、当該論理ブ
    ロックの更新を遅延させるステップと、 当該N*K個の論理ブロックを、前記各ディスクドライ
    ブ上の更新対象の旧データを保持している領域とは別の
    空領域の中から連続した記憶領域を選択して、連続した
    書込み操作により順次書込むステップとからなる処理を
    実行することを特徴とするデータ更新方法。
  5. 【請求項5】 N台のディスクドライブから構成される
    ディスク記憶システムに適用するデータ更新方法であっ
    て、 N*K(Kはブロック数を意味する整数)個の論理ブロ
    ックに相当する記憶容量を有する書込みバッファ手段に
    前記論理ブロックのデータ長を必要に応じて可変長で可
    変した前記論理ブロックを蓄積するステップと、 データ更新時に前記書込みバッファ手段に蓄積した前記
    論理ブロックがN*K−1個に達するまで、当該論理ブ
    ロックの更新を遅延させるステップと、 前記書込みバッファ手段に蓄積された各論理ブロックに
    対する論理アドレスから構成される論理アドレス・タグ
    ・ブロックを生成するステップと、 当該N*K−1個の論理ブロックに前記論理アドレス・
    タグ・ブロックを加えたN*K個の論理ブロックを生成
    するステップと、 前記論理アドレス・タグ・ブロックを加えたN*K個の
    論理ブロックを前記各ディスクドライブ上の更新対象の
    旧データを保持している領域とは別の空領域の中から連
    続した記憶領域を選択して、連続した書込み操作により
    順次書込むステップとからなる処理を実行することを特
    徴とするデータ更新方法。
  6. 【請求項6】 N台のディスクドライブから構成される
    ディスク記憶システムに適用するデータ更新方法であっ
    て、 N*K(Kはブロック数を意味する整数)個の論理ブロ
    ックに相当する記憶容量を有する書込みバッファ手段に
    前記論理ブロックのデータ長を必要に応じて可変長で可
    変した前記論理ブロックを蓄積するステップと、 データ更新時に前記書込みバッファ手段に蓄積した前記
    論理ブロックがN*K−1個に達するまで、当該論理ブ
    ロックの更新を遅延させるステップと、 前記書込みバッファ手段に蓄積された各論理ブロックに
    対する論理アドレスから構成される論理アドレス・タグ
    ・ブロックを生成するステップと、 前記N*K−1個の論理ブロックに前記論理アドレス・
    タグ・ブロックを加えたN*K個の論理ブロックからK
    個のパリティブロックを生成するステップと、 当該パリティブロックを加えたN*K個の論理ブロック
    を生成するステップと、 前記パリティブロックを加えたN*K個の論理ブロック
    を前記各ディスクドライブ上の更新対象の旧データを保
    持している領域とは別の空領域の中から連続した記憶領
    域を選択して、連続した書込み操作により順次書込むス
    テップとからなる処理を実行することを特徴とするデー
    タ更新方法。
  7. 【請求項7】 前記書込みバッファ手段に対する書込み
    操作を行なう場合には、論理アドレスに対応してディス
    クドライブ上の連続したセクタの位置に対応するように
    論理ブロックを再配置するステップを含むことを特徴と
    する請求項4、請求項5、請求項6のいずれか記載のデ
    ータ更新方法。
  8. 【請求項8】 前記N*K個の論理ブロックをストライ
    プと定義した場合に、前記ディスク装置上に連続した論
    理ブロックを連続して書込めるような空領域を作るた
    め、前記複数のストライプを読出して最新の論理ブロッ
    クだけを前記書込みバッファ手段に移して、対応する論
    理アドレス・タグ・ブロック内の論理アドレスから新し
    い論理アドレス・タグ・ブロックを生成するステップ
    と、 前記書込みバッファ手段の有効データと生成された論理
    アドレス・タグ・ブロックとから構成されるストライプ
    を、読出したストライプを保持していた領域とは別の空
    領域に依存するストライプの物理アドレスに順次書込む
    ステップとを含む請求項4、請求項5、請求項6のいず
    れか記載のデータ更新方法。
  9. 【請求項9】 前記空領域をつくるために、データの読
    出し要求や書込み要求とは独立した動作時に、読出した
    前記ストライプを保持していた領域とは別の空領域のデ
    ータの配置を変更するステップを含むことを特徴とする
    請求項4、請求項5、請求項6のいずれか記載のデータ
    更新方法。
  10. 【請求項10】 ホストシステムからの論理アドレスと
    前記ディスクドライブの物理アドレスとを変換するめた
    の変換マップを設けて、アドレス変換時に前記変換マッ
    プの全てのエントリを検索するステップを含むことを特
    徴とする請求項4、請求項5、請求項6のいずれか記載
    のデータ更新方法。
  11. 【請求項11】 前記アドレス変換時に前記変換マップ
    から論理アドレスをハッシュキーにした線形検索を実行
    するステップを含むことを特徴とする請求項10記載の
    データ更新方法。
  12. 【請求項12】 前記論理アドレスから前記物理アドレ
    スへのアドレス変換時に、前記変換マップを木構造で管
    理し、二分木検索を実行するステップを含むことを特徴
    とする請求項10記載のデータ更新方法。
  13. 【請求項13】 前記各論理アドレスに対するストライ
    プ番号、ストライプ内のブロック番号、有効データのタ
    イムスタンプから構成される前記変換マップを生成し、
    前記論理アドレス・タグ・ブロックに基づいて変換マッ
    プの一部を前記ディスクドライブスク内の空領域に格納
    するステップを含むことを特徴とする請求項10記載の
    データ更新方法。
  14. 【請求項14】 前記変換マップの一部を前記ディスク
    ドライブに格納する場合に、最も最後にアクセスされた
    データを含む論理ブロックに対応する領域に応じて順次
    格納するステップを含むことを特徴とする請求項13記
    載のデータ更新方法。
  15. 【請求項15】 前記書込み制御手段は、前記ディスク
    ドライブ上のセクタ位置に対応して、前記ディスクドラ
    イブ上の更新対象の旧データを保持している領域を選択
    して記憶領域に書込むことを特徴とする請求項4、請求
    項5、請求項6のいずれか記載のデータ更新方法。
JP9366782A 1997-12-26 1997-12-26 ディスク記憶システム及び同システムに適用するデータ更新方法 Pending JPH11194899A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP9366782A JPH11194899A (ja) 1997-12-26 1997-12-26 ディスク記憶システム及び同システムに適用するデータ更新方法
US09/130,102 US6233648B1 (en) 1997-12-26 1998-08-06 Disk storage system and data update method used therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9366782A JPH11194899A (ja) 1997-12-26 1997-12-26 ディスク記憶システム及び同システムに適用するデータ更新方法

Publications (1)

Publication Number Publication Date
JPH11194899A true JPH11194899A (ja) 1999-07-21

Family

ID=18487662

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9366782A Pending JPH11194899A (ja) 1997-12-26 1997-12-26 ディスク記憶システム及び同システムに適用するデータ更新方法

Country Status (2)

Country Link
US (1) US6233648B1 (ja)
JP (1) JPH11194899A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1221646A2 (en) * 2001-01-09 2002-07-10 Kabushiki Kaisha Toshiba Disk control system and method
US6609176B1 (en) 1999-12-27 2003-08-19 Kabushiki Kaisha Toshiba Disk control system and data rearrangement method
US6886068B2 (en) 2001-12-18 2005-04-26 Kabushiki Kaisha Toshiba Disk array apparatus and data update method for storing tag blocks
US6898669B2 (en) 2001-12-18 2005-05-24 Kabushiki Kaisha Toshiba Disk array apparatus and data backup method used therein
US7715402B2 (en) 2002-07-24 2010-05-11 Thomson Licensing Method and device for processing digital data
JP2012168651A (ja) * 2011-02-10 2012-09-06 Fujitsu Ltd ストレージ装置及びストレージ装置制御方法
JP2013506190A (ja) * 2009-09-29 2013-02-21 マイクロン テクノロジー, インク. ストライプベースのメモリ動作
JP2014182823A (ja) * 2013-03-15 2014-09-29 Seagate Technology Llc 動的粒状体に基づく中間記憶領域を利用する方法、データ記憶システムおよび記憶媒体
US9396141B2 (en) 2013-08-07 2016-07-19 Kabushiki Kaisha Toshiba Memory system and information processing device by which data is written and read in response to commands from a host

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000057037A (ja) * 1998-08-05 2000-02-25 Sony Corp 記録装置および記録方法、再生装置および再生方法、並びに記録媒体
JP4473455B2 (ja) * 1999-01-12 2010-06-02 富士通株式会社 記録媒体へのアクセスを制御するアクセス制御装置および方法
US6542960B1 (en) * 1999-12-16 2003-04-01 Adaptec, Inc. System and method for parity caching based on stripe locking in raid data storage
JP4131894B2 (ja) * 2000-02-29 2008-08-13 株式会社東芝 ランダムディスクライトに好適なディスク制御機構
EP1301865A4 (en) * 2000-03-22 2009-04-01 Yotta Yotta Inc METHOD AND SYSTEM FOR PROVIDING MULTIMEDIA INFORMATION ON DEMAND THROUGH LONG DISTANCE NETWORKS
US8281022B1 (en) * 2000-06-30 2012-10-02 Emc Corporation Method and apparatus for implementing high-performance, scaleable data processing and storage systems
US6542980B1 (en) * 2000-08-11 2003-04-01 Trw Inc. Time slot data memory storage and access system
US20040133606A1 (en) * 2003-01-02 2004-07-08 Z-Force Communications, Inc. Directory aggregation for files distributed over a plurality of servers in a switched file system
US7509322B2 (en) 2001-01-11 2009-03-24 F5 Networks, Inc. Aggregated lock management for locking aggregated files in a switched file system
US7788335B2 (en) * 2001-01-11 2010-08-31 F5 Networks, Inc. Aggregated opportunistic lock and aggregated implicit lock management for locking aggregated files in a switched file system
WO2002065275A1 (en) * 2001-01-11 2002-08-22 Yottayotta, Inc. Storage virtualization system and methods
US7383288B2 (en) 2001-01-11 2008-06-03 Attune Systems, Inc. Metadata based file switch and switched file system
AU2002249939A1 (en) * 2001-01-11 2002-07-24 Z-Force Communications, Inc. File switch and switched file system
US8239354B2 (en) * 2005-03-03 2012-08-07 F5 Networks, Inc. System and method for managing small-size files in an aggregated file system
US8195760B2 (en) * 2001-01-11 2012-06-05 F5 Networks, Inc. File aggregation in a switched file system
US7512673B2 (en) 2001-01-11 2009-03-31 Attune Systems, Inc. Rule based aggregation of files and transactions in a switched file system
US6799284B1 (en) * 2001-02-28 2004-09-28 Network Appliance, Inc. Reparity bitmap RAID failure recovery
EP1241600A1 (de) * 2001-03-13 2002-09-18 Siemens Schweiz AG Verfahren und Kommunikationssystem zur Generierung von Antwortmeldungen
US20030135385A1 (en) * 2001-11-07 2003-07-17 Yotta Yotta, Inc. Systems and methods for deploying profitable storage services
JP3579389B2 (ja) * 2001-11-30 2004-10-20 株式会社東芝 ディスクアレイ装置及び同装置におけるデータ復旧方法
JP3682256B2 (ja) * 2001-11-30 2005-08-10 株式会社東芝 ディスクアレイ装置及び同装置におけるパリティ処理方法
JP3702231B2 (ja) * 2002-01-31 2005-10-05 株式会社東芝 ディスクアレイ装置及び同装置における動的記憶容量拡張方法
US7200715B2 (en) * 2002-03-21 2007-04-03 Network Appliance, Inc. Method for writing contiguous arrays of stripes in a RAID storage system using mapped block writes
US7120826B2 (en) 2002-03-29 2006-10-10 International Business Machines Corporation Partial mirroring during expansion thereby eliminating the need to track the progress of stripes updated during expansion
US6904498B2 (en) 2002-10-08 2005-06-07 Netcell Corp. Raid controller disk write mask
US7877511B1 (en) 2003-01-13 2011-01-25 F5 Networks, Inc. Method and apparatus for adaptive services networking
GB0301448D0 (en) 2003-01-22 2003-02-19 Falanx Microsystems As Microprocessor systems
GB2402803B (en) * 2003-06-11 2006-06-28 Ibm Arrangement and method for detection of write errors in a storage system
US7380198B2 (en) * 2003-06-11 2008-05-27 International Business Machines Corporation System and method for detecting write errors in a storage device
US7509473B2 (en) * 2003-08-27 2009-03-24 Adaptec, Inc. Segmented storage system mapping
US7328307B2 (en) * 2004-01-22 2008-02-05 Tquist, Llc Method and apparatus for improving update performance of non-uniform access time persistent storage media
US7213103B2 (en) * 2004-04-22 2007-05-01 Apple Inc. Accessing data storage systems without waiting for read errors
US8122193B2 (en) * 2004-12-21 2012-02-21 Samsung Electronics Co., Ltd. Storage device and user device including the same
KR100578143B1 (ko) * 2004-12-21 2006-05-10 삼성전자주식회사 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는저장 시스템 및 그것을 포함한 컴퓨팅 시스템
US7885970B2 (en) * 2005-01-20 2011-02-08 F5 Networks, Inc. Scalable system for partitioning and accessing metadata over multiple servers
US20060167838A1 (en) * 2005-01-21 2006-07-27 Z-Force Communications, Inc. File-based hybrid file storage scheme supporting multiple file switches
US7958347B1 (en) 2005-02-04 2011-06-07 F5 Networks, Inc. Methods and apparatus for implementing authentication
US7577763B1 (en) 2005-02-28 2009-08-18 Apple Inc. Managing read requests from multiple requestors
US20060230455A1 (en) * 2005-04-12 2006-10-12 Yuan-Chang Lo Apparatus and methods for file system with write buffer to protect against malware
US7260681B2 (en) * 2005-06-02 2007-08-21 Seagate Technology Llc Stripe buffer list
US8495015B2 (en) * 2005-06-21 2013-07-23 Apple Inc. Peer-to-peer syncing in a decentralized environment
US7523146B2 (en) * 2005-06-21 2009-04-21 Apple Inc. Apparatus and method for peer-to-peer N-way synchronization in a decentralized environment
US7774542B2 (en) * 2005-07-06 2010-08-10 Ji Zhang System and method for adaptive operation of storage capacities of RAID systems
KR101257848B1 (ko) 2005-07-13 2013-04-24 삼성전자주식회사 복합 메모리를 구비하는 데이터 저장 시스템 및 그 동작방법
US7418544B2 (en) * 2005-10-05 2008-08-26 Oracle International Corporation Method and system for log structured relational database objects
US8417746B1 (en) 2006-04-03 2013-04-09 F5 Networks, Inc. File system management with enhanced searchability
US7797670B2 (en) * 2006-04-14 2010-09-14 Apple Inc. Mirrored file system
US7860826B2 (en) 2006-08-04 2010-12-28 Apple Inc. Method and system for using global equivalency sets to identify data during peer-to-peer synchronization
US7657769B2 (en) 2007-01-08 2010-02-02 Marcy M Scott N-way synchronization of data
US20090077097A1 (en) * 2007-04-16 2009-03-19 Attune Systems, Inc. File Aggregation in a Switched File System
WO2008147973A2 (en) * 2007-05-25 2008-12-04 Attune Systems, Inc. Remote file virtualization in a switched file system
US20090204705A1 (en) * 2007-11-12 2009-08-13 Attune Systems, Inc. On Demand File Virtualization for Server Configuration Management with Limited Interruption
US8117244B2 (en) 2007-11-12 2012-02-14 F5 Networks, Inc. Non-disruptive file migration
US8548953B2 (en) * 2007-11-12 2013-10-01 F5 Networks, Inc. File deduplication using storage tiers
US8180747B2 (en) 2007-11-12 2012-05-15 F5 Networks, Inc. Load sharing cluster file systems
US20090204650A1 (en) * 2007-11-15 2009-08-13 Attune Systems, Inc. File Deduplication using Copy-on-Write Storage Tiers
US8352785B1 (en) 2007-12-13 2013-01-08 F5 Networks, Inc. Methods for generating a unified virtual snapshot and systems thereof
US8549582B1 (en) 2008-07-11 2013-10-01 F5 Networks, Inc. Methods for handling a multi-protocol content name and systems thereof
US8799572B2 (en) 2009-04-20 2014-08-05 Microsoft Corporation Sliding-window multi-class striping
US20100318734A1 (en) * 2009-06-15 2010-12-16 Microsoft Corporation Application-transparent hybridized caching for high-performance storage
US8321630B1 (en) 2010-01-28 2012-11-27 Microsoft Corporation Application-transparent hybridized caching for high-performance storage
US10721269B1 (en) 2009-11-06 2020-07-21 F5 Networks, Inc. Methods and system for returning requests with javascript for clients before passing a request to a server
JP2011154547A (ja) * 2010-01-27 2011-08-11 Toshiba Corp メモリ管理装置及びメモリ管理方法
US8204860B1 (en) 2010-02-09 2012-06-19 F5 Networks, Inc. Methods and systems for snapshot reconstitution
US9195500B1 (en) 2010-02-09 2015-11-24 F5 Networks, Inc. Methods for seamless storage importing and devices thereof
US8347100B1 (en) 2010-07-14 2013-01-01 F5 Networks, Inc. Methods for DNSSEC proxying and deployment amelioration and systems thereof
US9286298B1 (en) 2010-10-14 2016-03-15 F5 Networks, Inc. Methods for enhancing management of backup data sets and devices thereof
GB201108638D0 (en) * 2011-05-24 2011-07-06 Acunu Ltd A method of assigning logical data regions to multiple disks so as to improve sequential data access
US8396836B1 (en) 2011-06-30 2013-03-12 F5 Networks, Inc. System for mitigating file virtualization storage import latency
US8463850B1 (en) 2011-10-26 2013-06-11 F5 Networks, Inc. System and method of algorithmically generating a server side transaction identifier
US8938583B1 (en) * 2011-11-16 2015-01-20 Western Digital Technologies, Inc. System and method for concurrently executing data access requests
US9020912B1 (en) 2012-02-20 2015-04-28 F5 Networks, Inc. Methods for accessing data in a compressed file system and devices thereof
US9519501B1 (en) 2012-09-30 2016-12-13 F5 Networks, Inc. Hardware assisted flow acceleration and L2 SMAC management in a heterogeneous distributed multi-tenant virtualized clustered system
US9554418B1 (en) 2013-02-28 2017-01-24 F5 Networks, Inc. Device for topology hiding of a visited network
CN104050200B (zh) * 2013-03-15 2017-12-08 伊姆西公司 用于数据拷贝的方法和装置
US11838851B1 (en) 2014-07-15 2023-12-05 F5, Inc. Methods for managing L7 traffic classification and devices thereof
US10182013B1 (en) 2014-12-01 2019-01-15 F5 Networks, Inc. Methods for managing progressive image delivery and devices thereof
US11895138B1 (en) 2015-02-02 2024-02-06 F5, Inc. Methods for improving web scanner accuracy and devices thereof
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US10797888B1 (en) 2016-01-20 2020-10-06 F5 Networks, Inc. Methods for secured SCEP enrollment for client devices and devices thereof
US10412198B1 (en) 2016-10-27 2019-09-10 F5 Networks, Inc. Methods for improved transmission control protocol (TCP) performance visibility and devices thereof
US10567492B1 (en) 2017-05-11 2020-02-18 F5 Networks, Inc. Methods for load balancing in a federated identity environment and devices thereof
US11223689B1 (en) 2018-01-05 2022-01-11 F5 Networks, Inc. Methods for multipath transmission control protocol (MPTCP) based session migration and devices thereof
CN110058792B (zh) * 2018-01-18 2022-08-30 伊姆西Ip控股有限责任公司 扩大存储空间的方法、设备以及计算机程序产品
US10833943B1 (en) 2018-03-01 2020-11-10 F5 Networks, Inc. Methods for service chaining and devices thereof
US11159833B2 (en) * 2018-11-23 2021-10-26 Sony Corporation Buffer management for storing files of a received packet stream
US11269861B2 (en) 2019-06-17 2022-03-08 Bank Of America Corporation Database tool
US11100092B2 (en) 2019-06-17 2021-08-24 Bank Of America Corporation Database tool

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5124987A (en) * 1990-04-16 1992-06-23 Storage Technology Corporation Logical track write scheduling system for a parallel disk drive array data storage subsystem
KR970004255B1 (ko) 1992-12-07 1997-03-26 인터내셔널 비지네스 머신즈 코포레이션 병렬 디스크 상에서의 고속 데이타 갱신 방법
JPH06266510A (ja) 1993-03-12 1994-09-22 Hitachi Ltd ディスクアレイシステムおよびそのためのデータ書き込み方法、障害回復方法
JPH0744326A (ja) * 1993-07-30 1995-02-14 Hitachi Ltd 記憶装置システム
US5530948A (en) * 1993-12-30 1996-06-25 International Business Machines Corporation System and method for command queuing on raid levels 4 and 5 parity drives
US5822782A (en) * 1995-10-27 1998-10-13 Symbios, Inc. Methods and structure to maintain raid configuration information on disks of the array
US6058455A (en) * 1997-07-02 2000-05-02 International Business Corporation RAID system having a selectable unattended mode of operation with conditional and hierarchical automatic re-configuration

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6609176B1 (en) 1999-12-27 2003-08-19 Kabushiki Kaisha Toshiba Disk control system and data rearrangement method
EP1221646A2 (en) * 2001-01-09 2002-07-10 Kabushiki Kaisha Toshiba Disk control system and method
EP1221646A3 (en) * 2001-01-09 2008-07-23 Kabushiki Kaisha Toshiba Disk control system and method
US6886068B2 (en) 2001-12-18 2005-04-26 Kabushiki Kaisha Toshiba Disk array apparatus and data update method for storing tag blocks
US6898669B2 (en) 2001-12-18 2005-05-24 Kabushiki Kaisha Toshiba Disk array apparatus and data backup method used therein
US7715402B2 (en) 2002-07-24 2010-05-11 Thomson Licensing Method and device for processing digital data
JP2013506190A (ja) * 2009-09-29 2013-02-21 マイクロン テクノロジー, インク. ストライプベースのメモリ動作
US8788876B2 (en) 2009-09-29 2014-07-22 Micron Technology, Inc. Stripe-based memory operation
KR101459861B1 (ko) * 2009-09-29 2014-11-07 마이크론 테크놀로지, 인크. 스트라이프 기반 메모리 작동
JP2012168651A (ja) * 2011-02-10 2012-09-06 Fujitsu Ltd ストレージ装置及びストレージ装置制御方法
JP2014182823A (ja) * 2013-03-15 2014-09-29 Seagate Technology Llc 動的粒状体に基づく中間記憶領域を利用する方法、データ記憶システムおよび記憶媒体
US9396141B2 (en) 2013-08-07 2016-07-19 Kabushiki Kaisha Toshiba Memory system and information processing device by which data is written and read in response to commands from a host

Also Published As

Publication number Publication date
US6233648B1 (en) 2001-05-15

Similar Documents

Publication Publication Date Title
JPH11194899A (ja) ディスク記憶システム及び同システムに適用するデータ更新方法
KR100310896B1 (ko) 디스크기억장치의데이터갱신방법및디스크기억제어장치
JP3590381B2 (ja) ディスクアレイ装置及び同装置におけるデータ更新方法
US5542065A (en) Methods for using non-contiguously reserved storage space for data migration in a redundant hierarchic data storage system
US6941420B2 (en) Log-structure array
JP3852954B2 (ja) データ記憶装置
JP5792313B2 (ja) ストレージシステム
US8131969B2 (en) Updating system configuration information
US7761655B2 (en) Storage system and method of preventing deterioration of write performance in storage system
JP3505093B2 (ja) ファイル管理システム
JP5315348B2 (ja) シン・プロビジョニングの移行および取り消しのための方法および装置
US20080201392A1 (en) Storage system having plural flash memory drives and method for controlling data storage
US10503424B2 (en) Storage system
WO2015076354A1 (ja) ストレージ装置と方法並びにプログラム
JPH08249134A (ja) 冗長性パリティ記憶技法に従ってユーザ・データを書き込む方法
US5420983A (en) Method for merging memory blocks, fetching associated disk chunk, merging memory blocks with the disk chunk, and writing the merged data
JPH05216593A (ja) 間接アクセス記憶装置
JPH08185275A (ja) ディスクアレイのための領域割り当て方法およびディスクアレイアクセス方法
WO2015057989A1 (en) Systems and methods for adaptive reserve storage
JP2000010738A (ja) ディスクアレイシステム、同システムに適用される記憶容量拡張方法および記録媒体
US20180307426A1 (en) Storage apparatus and storage control method
CN114610232A (zh) 一种存储系统、内存管理方法和管理节点
US11263146B2 (en) Efficient accessing methods for bypassing second layer mapping of data blocks in file systems of distributed data systems
US11262919B2 (en) Efficient segment cleaning employing remapping of data blocks in log-structured file systems of distributed data systems
US11334497B2 (en) Efficient segment cleaning employing local copying of data blocks in log-structured file systems of distributed data systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070704

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070710

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071106