JPH1153235A - ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム - Google Patents

ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム

Info

Publication number
JPH1153235A
JPH1153235A JP9214656A JP21465697A JPH1153235A JP H1153235 A JPH1153235 A JP H1153235A JP 9214656 A JP9214656 A JP 9214656A JP 21465697 A JP21465697 A JP 21465697A JP H1153235 A JPH1153235 A JP H1153235A
Authority
JP
Japan
Prior art keywords
data
logical address
logical
disk
blocks
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
JP9214656A
Other languages
English (en)
Inventor
Kazunori Sekido
一紀 関戸
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 JP9214656A priority Critical patent/JPH1153235A/ja
Priority to KR1019980027214A priority patent/KR100310896B1/ko
Priority to DE69831455T priority patent/DE69831455T2/de
Priority to EP98112743A priority patent/EP0898228B1/en
Priority to US09/128,774 priority patent/US6219752B1/en
Priority to CNB011255730A priority patent/CN1194298C/zh
Priority to CNB981162282A priority patent/CN1174318C/zh
Publication of JPH1153235A publication Critical patent/JPH1153235A/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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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
    • 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/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
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1028Distributed, i.e. distributed RAID systems with parity
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 本発明は、間接マップを原理的に必要としな
い、安価で高速なディスク記憶装置のデータ更新方法を
提案するものであり、併せて同方法を実現するディスク
記憶制御システムを構築することを課題とする。 【解決手段】 N台のディスク装置から構成されるディ
スク記憶装置において、N×K(整数)個の論理ブロッ
クに相当する容量を持つ書込みバッファ6を備え、この
書込みバッファに更新すべきデータの論理ブロックを蓄
積し、制御装置1は、その蓄積した論理ブロックがN×
K―1個に達するまでその論理ブロックのデータ更新を
遅延させ、書込みバッファに蓄積された各論理ブロック
に対する論理アドレスから構成される論理アドレスタグ
ブロックを生成して、N×K―1個の論理ブロックに前
記論理アドレスタグブロックを加えたN×K個の論理ブ
ロックを、N台のディスク装置上の更新されるべきデー
タを保持している領域とは別の空領域に連続して順次書
込む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、特に、RAID
(Redundant Array of Inexpensive Disk )等ディスク
アレイの入出力に用いて好適な、ディスク記憶装置のデ
ータ更新方法、ならびにディスク記憶制御システムに関
する。
【0002】
【従来の技術】米国特許第5,124,987号、特開
平6−214720号、特開平6−266510号に開
示されているように、ディスク記憶装置への高速な書込
み方法として、旧データの領域を書き換えるのでは無
く、更新データを溜めておき、ディスク装置内のあらか
じめ用意した別の空領域にまとめて書込む方法が提案さ
れている。
【0003】図17を用い、上述した従来の方法につい
て簡単に説明する。図において、論理ブロックL6, L4,
L2, L12,L7,L11を更新する場合を考える。これらの論理
ブロックの旧データはディスク装置内のP6,P4,P2,P12,P
7,P11 に存在する。よって、このP6,P5,P2,P12の内容を
更新するのが普通であるが、この方法ではP6,P4,P2,P1
2,P7,P11 のデータはそのままにして、新しい論理ブロ
ックL6,L4,L2,L12,L7,L11のデータをあらかじめ用意し
た別の空領域であるP51,P52,P53,P54,P55,P56 にまとめ
て書込む。これにより、6回の書込み操作が3回の書込
み操作に減り、書込み性能の向上になる。
【0004】尚、図17に示す例では説明を簡単にする
ため、1ディスクに2ブロックしか書かれていないが、
実際には数+ブロックがまとめて書込まれる。また、R
AID4、5(いずれもアクセス耐力を向上させる手法
であり、RAID4;データの配置単位をビットやバイ
トのような小さな単位ではなく、セクタやブロックのよ
うな大きな単位とし、小容量のデータ読み出し要求に対
してディスクを独立動作可とする方式。RAID5;冗
長データを専用のパリティディスクに格納するのではな
く、各データディスクに巡回的に配置する方式)では1
個のストライプ丸ごとの書き換えになるためパリティ維
持のためのディスク読み出しも不要になり、書込み時の
オーバヘッド減少にもなる。
【0005】一方、論理ブロックL6,L5,L2,L12,L7,L11
の最新データはディスク装置内のP51,P52,P53,P54,P55,
P56 に存在するので、間接マップの内容を正しいディス
ク位置を指すように書き換える。また、論理ブロックの
データを読み出すときには、この間接マップを調べて最
新の位置を求めてから読み出すので、旧データを読み出
す危険性はない。
【0006】
【発明が解決しようとする課題】上述した従来技術にお
いては、間接マップにより最新データの位置情報を管理
していたため、間接マップの障害や誤操作によりそのデ
ータが無くなると、ディスク装置内の全データの喪失に
なるというデータ保全性の問題があった。また、全論理
ブロックに対して間接マップを用意する必要があり大容
量、かつ、電源障害に備え間接マップを保持するのに不
揮発性メモリが必要であったため、間接マップが非常に
高価になるという問題もあった。
【0007】本発明は上記の問題を解決するためになさ
れたものであり、間接マップを原理的に必要としない、
安価で高速なディスク記憶装置のデータ更新方法、なら
びにディスク記憶制御システムを提供することを目的と
する。
【0008】
【課題を解決するための手段】本発明のディスク記憶装
置のデータ更新方法は、N台のディスク装置から構成さ
れるディスク記憶装置において、N×K(整数)個の論
理ブロックに相当する容量を持つ書込みバッファを有
し、この書込みバッファに更新すべきデータの論理ブロ
ックを蓄積し、その蓄積した論理ブロックがN×K―1
個に達するまでその論理ブロックのデータ更新を遅延さ
せ、前記書込みバッファに蓄積された各論理ブロックに
対する論理アドレスから構成される論理アドレスタグブ
ロックを生成して、N×K―1個の論理ブロックに前記
論理アドレスタグブロックを加えたN×K個の論理ブロ
ックを、N台のディスク装置上の更新されるべきデータ
を保持している領域とは別の空領域に連続して順次書込
むことを特徴とする。また、N台のディスク装置から構
成されるディスク記憶装置において、(N―1)×K個
の論理ブロックに相当する容量を持つ書込みバッファを
備え、この書込みバッファに更新すべきデータの論理ブ
ロックを蓄積して、その蓄積した論理ブロックが選択し
た個数に達するまでその論理ブロックの更新を遅延さ
せ、前記書込みバッファに蓄積された各論理ブロックに
対する論理アドレスから構成される論理アドレスタグブ
ロックを生成して、選択した個数の論理ブロックに前記
論理アドレスタグブロックを加えた(N―1)×K個の
データ論理ブロックからK個のパリティブロックを生成
し、このデータ論理ブロックにパリティブロックを加え
たN×K個の論理ブロックをN台のディスク装置上の更
新されるべきデータを保持している領域とは別の空領域
に連続した書込み操作で順次書込むことを特徴とする。
【0009】本発明のディスク記憶制御システムは、N
台のディスク装置から構成されるディスク記憶装置と、
N×K(整数)個の論理ブロックに相当する容量を持つ
書込みバッファと、この書込みバッファに更新すべきデ
ータの論理ブロックを蓄積し、その蓄積した論理ブロッ
クがN×K―1個に達するまでその論理ブロックのデー
タ更新を遅延させ、前記書込みバッファに蓄積された各
論理ブロックに対する論理アドレスから構成される論理
アドレスタグブロックを生成して、N×K―1個の論理
ブロックに前記論理アドレスタグブロックを加えたN×
K個の論理ブロックを、N台のディスク装置上の更新さ
れるべきデータを保持している領域とは別の空領域に連
続して順次書込む制御装置とを具備することを特徴とす
る。また、N台のディスク装置から構成されるディスク
記憶装置と、(N―1)×K個の論理ブロックに相当す
る容量を持つ書込みバッファと、この書込みバッファに
更新すべきデータの論理ブロックを蓄積して、その蓄積
した論理ブロックが選択した個数に達するまでその論理
ブロックの更新を遅延させ、前記書込みバッファに蓄積
された各論理ブロックに対する論理アドレスから構成さ
れる論理アドレスタグブロックを生成して、選択した個
数の論理ブロックに前記論理アドレスタグブロックを加
えた(N―1)×K個のデータ論理ブロックからK個の
パリティブロックを生成し、このデータ論理ブロックに
パリティブロックを加えたN×K個の論理ブロックをN
台のディスク装置上の更新されるべきデータを保持して
いる領域とは別の空領域に連続した書込み操作で順次書
込制御装置とを具備することを特徴とする。
【0010】上記した構成をとることにより、間接マッ
プを原理的に必要としない、安価で高速なディスク記憶
装置、ならびにディスク記憶制御システムを構築でき
る。
【0011】
【発明の実施の形態】図1は本発明を適用して構成した
ディスク記憶装置の概念構成図である。本発明のディス
ク記憶制御システムは、制御装置1、ディスク装置2
(21,22,23,24)、揮発性メモリ3、不揮発
性メモリ4から構成される。揮発性メモリ3には、書込
の時間的順序を維持するためのタイムスタンプ5、不揮
発性メモリ4には、ディスク装置2に書き込むデータを
ログ構造化して保持する書込バッファ6、書込バッファ
6内の空き領域および保持されている書込データの論理
アドレスの情報を保持するバッファ管理情報7が格納さ
れている。制御装置1はこれらタイムスタンプ5、書込
バッファ6、バッファ管理情報7を管理し、ディスク装
置2への書込みを制御する。
【0012】図2に、不揮発性メモリ4に割り付けられ
る書込みバッファ6とバッファ管理情報7の関係を示
す。制御装置1は外部接続されるホスト機器から要求さ
れた書込みデータを、ディスク装置2に対して即書込ま
ずに、ブロック単位に分割して書込みバッファ6に順番
に詰めて(ログ形式に)格納していく。この時、書込み
データのホスト機器から見た論理アドレスを、バッファ
管理テーブル7の格納したバッファ領域に対応するエン
トリーに保存する。また、そのエントリにデータが割り
当てられたことを示すフラッグ“F”を立てる。よっ
て、このバッファ管理情報(テーブル)7を調べること
により、ホスト機器から受け取った書込みデータを格納
すべき次のバッファ領域を決めることが出来る。図2に
示す例では、バッファ領域B7まで書込みデータが格納
されており、B0、B1,... 、B7の論理アドレスが
LA134、LA99、... 、LA678であることを
表わしている。
【0013】また、ディスク装置2(21〜24)は、
それぞれブロックサイズの整数倍(K)であるストライ
プユニットと呼ぶあらかじめ決められた単位(そのディ
スク装置の1トラック長に近いサイズが良い。)で書込
みを行う。この時、ディスク装置21〜24の物理的に
同じ位置のストライプユニットは1つのストライプとし
て、同じタイミングで書込みが行われる。また、実際の
ディスク装置21〜24を合わせて全記憶容量よりも少
ない容量のディスク装置としてホスト機器に見せてい
る。具体的には、ホスト機器が最初に記憶容量を問い合
わせて来たとき、その返答として少ない容量を返す。従
って、ホスト機器から論理的に読み書きできる記憶領域
のほかに余分な記憶領域が確保されることになる。この
領域を空領域と呼ぶことにする。
【0014】更に、タイムスタンプ5は、ホストからの
書込みデータが実際にディスク装置2に書込まれる時に
付加される情報で、ディスク装置2内でのデータ書込み
順序を判定するのに用いる。よって、書込みバッファ6
のデータがディスク装置2に書込まれる毎にタイムスタ
ンプ5がインクリメントされる。
【0015】図1に示す本発明実施例の動作について図
2〜図12を参照しながら詳細に説明する。
【0016】まず、書込み動作から説明する。ホスト機
器から書込むべきデータとその論理アドレスを受け取っ
た制御装置1は、不揮発性メモリ4上の書込みバッファ
6の空領域にブロック単位に分割して詰めて格納する。
また、受け取った論理アドレスはブロック毎のアドレス
に変換して、バッファ管理テーブル7の対応するエント
リに格納する。なお、既に書込みバッファ6に格納され
ているデータに対する更新データの場合には、書込みバ
ッファ6の空領域に詰めて格納するのではなく、直接書
込みバッファ6内の旧データを変更する。
【0017】ホスト機器からの書込みデータが1ストラ
イプ分に1ブロック少ない数(K*4―1)だけ書込み
バッファ6に溜まった段階で、制御装置1はそれらのデ
ータをディスク装置2に書込みに行く。この時、最後の
書込みブロックとして、書込み管理テーブル7に格納さ
れた各ブロックの論理アドレスと揮発性メモリ3上のタ
イムスタンプ5から論理アドレスタグブロックを作成す
る。この論理アドレスタグブロック内のアドレスデータ
とデータブロックの間には、1対1の関係があらかじめ
設定されており、各データブロックの論理アドレスが分
かるようになっている。その後、この論理アドレスタグ
ブロックを加えた1ストライプ分のデータを、まとめて
ディスク装置21〜24の空領域に同時に書込む。この
様子は図3に示されている。
【0018】また、タイムスタンプ5の値は書込みが完
了した段階でインクリメントされる。このように、多数
の細かいディスク書込みを1回にまとめられるので、デ
ィスク書込み性能が大きく向上する。
【0019】次に、詰替え処理について説明する。旧デ
ータの領域を直接書き換えるのではなく、更新データを
溜めておき、ディスク装置2内のあらかじめ用意した別
の空領域にまとめて書込む方法では空領域が常に存在す
ることが必須である。そのため、ホスト機器からのディ
スクアクセスが空いている間に、既に他の領域にデータ
が書込まれ無効になっているデータを寄せ集めて空領域
を作る必要がある。この処理を詰替え処理と呼ぶ。この
詰替え処理は無効ブロック判定とストライプ統合の2つ
のステップからなる。
【0020】無効ブロック判定の例として、図4に示す
順番でホスト機器から1ブロックサイズのデータ書込み
がある場合を考える。図中のL××はホストから渡され
る論理アドレス、S××は書込み順番を表わす。本発明
実施例では、書込みバッファ6は15ブロックのデータ
を保持できるので、最初のS1〜S15の書込みデータ
が1つのストライプ(ST1)にまとめられ、タイムス
タンプT1が付加されてディスク装置の空領域に書き出
される。同様に、S16〜S30の書込みデータが別の
ストライプ(ST2)としてタイムスタンプT2が付加
されて別の空領域に書き出される。なお、書き出し毎に
タイムスタンプ5はインクリメントされるのでT1<T
2の関係がある。
【0021】ここで、図から分かるように論理アドレス
L9、L18のデータはタイムスタンプT1のストライ
プではS5、S2として、タイムスタンプT2のストラ
イプではS19、S21のブロックとして重複して存在
する。書込まれた順番を考えると、S19,S21のデ
ータブロックが有効であり、S5、S2のデータは無効
と判定されなければならない。しかし、ここで便宜上使
った書込み順番S××は実際のディスク上に記録されて
いない。
【0022】そこで、ストライプ内の論理アドレスタグ
を使ってこの判定を行う。図4の例における、2つのス
トライプST1,ST2の論理アドレスタグTG1、T
G2の内容は図5の通りである。図から分かるように、
2つの論理アドレスタグTG1、TG2に同じ論理アド
レスL9、L18のデータが含まれており、ストライプ
ST1のブロックB5、B2とストライプST2のブロ
ックB4、B6のどちらかのデータが無効である。さら
に、論理アドレスタグTG1のタイムスタンプT1と論
理アドレスタグTG2のタイムスタンプT2を比較する
と、T1<T2の関係にあることから、ストライプST
1のブロックB5、B2が無効であることが判定でき
る。以上説明のように、ディスク装置2内の論理アドレ
スタグを調べることにより無効なデータブロックを見つ
けることができる。
【0023】ストライプ統合の例として、図6に示すよ
うに2つのストライプST3,ST4を1つのストライ
プST5に統合する場合を考える。図に示すように、ス
トライプST3ではB2、B7,B8,B12,B13
の5ブロックが有効で他の10ブロックは無効(ハッチ
ング)であるとする。同様に、ストライプST4ではブ
ロックB18,B19,B20,B21,B22,B2
4,B25、B27,B29の9ブロックが有効で他の
6ブロックが無効(ハッチング)であるとする。2つの
ストライプの有効ブロックは合わせて14ブロックしか
ないので、この2つのブロックを1つに統合することに
より、結果として1つの空領域が作れる。
【0024】ストライプ統合では図6に示すように、2
つのストライプST3,ST4を揮発性メモリ3内に読
み出し、有効ブロックだけを詰めて書込みバッファ6に
移す。それに合わせ、図7に示すように、論理アドレス
タグもTG3、TG4から有効ブロックの論理アドレス
だけを対応する位置に移し、新しい論理アドレスタグT
G5を作りその時点のタイムスタンプを更新する。
【0025】この例では14個の有効ブロックしかなか
ったので、更にホスト機器から1つの書込みブロックを
待ってストライプを完成させてディスク装置2の空領域
にまとめて書込む。この場合、ディスク領域は有効に活
用されるが、ホスト機器からバーストでディスクアクセ
スがある場合、書込みを待たすためディスクアクセスを
集中させてしまう危険性がある。そこで、最後のデータ
ブロックは空状態のままアクセスが空いている間に書込
んでしまうことも可能である。このとき、論理アドレス
タグTG5の最後のデータブロックに対する論理アドレ
スには−1等NULLアドレスを入れることによりデー
タが入っていないことを表わせるので問題はない。
【0026】次に、このように書かれたデータブロック
の読み出し動作について説明する。詰め替え処理の無効
ブロック判定を、ディスク装置2内の全ストライプの論
理アドレスタグに対して行うことにより、全論理アドレ
スに対する有効ブロックの物理的位置を検出できる。従
って、原理的には、ホスト機器から読み出しブロックの
論理アドレスを受け取る度に全ストライプのチェックを
行うことにより、読み出すべき物理ブロックを見つけ出
すことが出来る。しかし、この方法ではブロック読み出
しに膨大な時間が掛ってしまい実用的でない。
【0027】そこで、システム起動時にだけ全ストライ
プの論理アドレスタグの調査を行ない、揮発性メモリ3
上に論理アドレスから物理アドレスへの変換マップを作
る。ホスト機器からの読み出し要求に対してはこの変換
マップを使って有効ブロックへのアクセスを行う。これ
により、常にアドレスタグの調査をしなくても良く、読
み出し時に性能が大きく低下することはない。また、こ
の変換マップは何時でも全ストライプを調査することで
再生できるため、従来のように電源障害に備えて不揮発
メモリ4に格納する必要もない。
【0028】ここで、変換マップについて図8を用いて
説明する。変換マップは図に示すように、各論理アドレ
スに対するブロックが格納されているストライプ番号S
T#とそのストライプ内のブロック番号BLK#、さら
にそのタイムスタンプTS#をテーブル形式で保持して
いる。従って、論理アドレスL0〜Lnが与えられれ
ば、このテーブルを索引することによりST#とBLK
#から簡単に実際の物理アドレスが求まる。
【0029】また、システム起動時の変換マップの作成
は、調査した論理アドレスタグの全論理アドレスについ
て、テーブルのタイムスタンプより論理アドレスタグの
タイムスタンプが大きいときだけ、そのストライプ番号
と対応するブロック番号をテーブルに登録する。この調
査を全ストライプについて行えば、有効ブロックだけを
指す変換マップが出来る。更に、ディスク装置2にスト
ライプを書込む毎に、その論理アドレスタグに対して同
様の処理を行うことにより、この変換マップは常に有効
なブロックを指す。また、ディスクアクセスが空いてい
るときに、各ストライプの論理アドレスタグと変換マッ
プを比較検査することにより、メモリ障害等でこの変換
マップが不正な値になっても検出訂正が可能である。
【0030】以上説明のように、変換マップ作成の主な
処理は論理アドレスタグの検査である。故に、大容量デ
ィスク装置のように論理アドレスタグ数が多い場合、電
源障害やシステム起動時の変換マップ作成に長時間かか
ってしまう。特に、図2に示すように、論理アドレスタ
グブロックが1台のディスク装置24に集中すると、シ
ステム起動時にはこのディスクにアクセスが集中し、論
理アドレスタグの調査を並列に行うことが出来ない。そ
こで、図9に示すように、ストライプによって論理アド
レスタグが格納されるディスク装置を4台に分散し並列
に論理アドレスタグを調査することにより、この変換マ
ップ作成に要する時間を1/4に短縮できる。
【0031】この他、ディスク装置2の記憶領域を複数
のセグメントに分割管理することにより、変換マップ作
成に必要な論理アドレスタグの検査数を削減できる。図
10にセグメント分割方式におけるディスク装置の記憶
領域の構成を示す。図に示すように、ディスク装置の記
憶領域は、ストライプを単位としてセグメント管理情報
(ハッチング)と4つのセグメントに分割される。ここ
で、セグメントとは書込みバッファデータの一括書込み
や詰め替え処理のディスク書込みがある期間集中して行
われる単位領域のことである。例えば、セグメント2が
ディスク書込みの対象である間は、セグメント1、3、
4には書込みに行かないように空領域の選択を制御す
る。
【0032】また、あるセグメントの空領域が少なくな
りディスク書込みを他のセグメントへ切替えるときには
セグメント管理情報をディスク装置に保存する。セグメ
ント管理情報は図11に示すように、セグメント番号と
切替え時変換マップから構成される。セグメント番号と
は切替え先のセグメント番号で、切替え時変換マップと
はセグメントを切替える時点の揮発性メモリ3上の変換
マップの状態である。
【0033】なお、切替え時変換マップはセグメントが
切替える度に全て上書きするのではなく、直前のセグメ
ントに書込まれた論理アドレスのエントリだけを書き戻
せばよい。従って、前回のセグメント切替え時にタイム
スタンプを覚えておき、変換マップのタイムスタンプを
比較することにより、直前のセグメントに書込まれた論
理アドレスを判定できる。
【0034】このセグメント分割方式では、セグメント
切替え時にセグメント管理情報を保存している。よっ
て、セグメント切替え時の変換マップをセグメント管理
情報から読み出して、その後でセグメント管理情報のセ
グメント番号で指されるセグメントの論理アドレスタグ
だけを検査するだけで、全論理アドレスタグを検査した
場合と同じ変換マップが再現できる。従って、この方式
により必要な論理アドレスタグの検査数は1セグメント
分で良く、この例では変換マップの作成に要する時間を
1/4に短縮できる。
【0035】更に、不揮発性メモリ4上にセグメント内
の全ストライプに対応したビットマップを用意して、セ
グメント切替え時にはこのビットマップをクリアし、一
括書込みや詰替えの書込み時には書込んだストライプに
対応するビットを“1”にセットする。これによりセグ
メントを切替えてから変更の有ったストライプだけがビ
ットマップが“1”になる。従って、変換マップ作成時
にこのビットマップを参照し、変更の有ったストライプ
の論理アドレスタグだけを検査することで検査数をさら
に減らせ、変換マップ作成に要する時間を更に短縮でき
る。
【0036】通常論理アドレスタグのサイズは512〜
1024バイトであり、ディスクのシーケンシャルアク
セスとランダムアクセスに約50倍の性能差がある。図
2に示す方式では論理アドレスタグの情報が各ストライ
プ毎とびとびに存在するので、変換マップの作成では時
間のかかるランダムアクセスを行っていた。そこで、図
12に示すように、論理アドレスタグだけを連続して格
納する専用タグ領域を(セグメント分割する場合は、各
セグメント毎に)用意し、50倍も高速なシーケンシャ
ルアクセスで論理アドレスタグを読み出せるようにす
る。
【0037】そして、ホスト機器からのデータを一括し
て書込みや詰め換えデータの書込み時には、空領域だけ
でなく対応する専用タグ領域にも論理アドレスタグを書
込むようにする。この方法では図2の方式では1ストラ
イプ当たり4回のディスク書込みだったのが、専用領域
への論理アドレスタグの書込みのため1回増える。しか
し、変換マップ作成が50倍も高速になるので、ディス
ク装置の立ち上がり時間が問題となるときには非常に有
効な手段である。専用タグ領域への書込み時間を最小に
するため、専用タグ領域は図12に示すように対象領域
の中心してシーク時間を減らす。また、ディスク装置2
はセクタ(512バイトなど)単位の書込みであり、専
用タグ領域内の論理アドレスタグはセクタ単位で割り付
け論理アドレスタグの書込み時に読み出しが必要ないよ
うにする。
【0038】最後に、タイムスタンプについて説明す
る。図1に示すように、タイムスタンプは揮発メモリ3
上に記憶されているので、電源障害などにより揮発メモ
リ3上のタイムスタンプが無くなってしまう。そこで、
変換マップと同様にして、システム起動時にだけ全スト
ライプの論理アドレスタグを調査し、一番大きなタイム
スタンプ5の次の値を揮発メモリ3上のタイムスタンプ
5にセットする。なお、変換マップ作成の説明で述べた
時間短縮手法がそのままタイムスタンプの再生にも適用
できる。
【0039】また、タイムスタンプ5はディスク装置に
書込むごとにインクリメントされディスク上の書込み順
序の判定するのみに使われる。例として、タイムスタン
プ5が24ビットのカウンタで構成される場合で説明す
る。24ビットカウンタでは、16M回の書込みでカウ
ンタが一周してゼロに戻ってしまう。そこで、一般的に
は有効なタイムスタンプの最小値を基準にそれより小さ
い値は16Mを加えて比較して判定する。この最小値も
同様にシステム起動時にだけ全ストライプの論理アドレ
スタグを調査して求める。
【0040】しかし、この手法が使えるのはタイムスタ
ンプの最大値が最小値を追い越さないこと、つまり、タ
イムスタンプの最大値と最小値の差が24ビットで表わ
せる範囲以内であることを前提にしている。よって、タ
イムスタンプ5が一周前に必ず全ストライプを更新して
タイムスタンプ値を新しく更新する必要がある。これに
は、無効ブロックが少なくても予め設定した書込み回数
の間更新されなかったストライプを詰替えの対象として
選ぶように制御するか、無効ブロックの論理アドレスを
NULLアドレスにした、そのストライプの論理アドレ
スタグだけを書き換える。NULLアドレスを使う方法
は論理アドレスタグブロックの書き換えであるので詰替
えに比べて非常に軽い処理である。
【0041】尚、上述した実施例では、無効ブロックの
判定に2つストライプST1,ST2の論理アドレスタ
グを相互に比較して判定する方法のみ説明したが、全無
効ブロックを調べるには2つのストライプ間の全組み合
わせを調べなければならない。しかし、変換マップがあ
れば論理アドレスタグ内の各論理アドレスについて、有
効データを指している変換マップのタイムスタンプとそ
のストライプのタイムスタンプを比較し、値が小さいブ
ロックを無効ブロックと判定できる。
【0042】図1はデータを複数ディスクに分散するR
AID0の構成を示したが、本発明方式は、パリティを
使った冗長性ディスク構成(RAID4、5)の場合に
も適用できる。図13に本発明を適用して構成したRA
ID5構成のディスク記憶装置の概念図を示す。図1の
構成に冗長用のディスク装置25が追加された構成であ
り、制御装置1、ディスク装置2(21,22,23,
24)、揮発性メモリ3、不揮発性メモリ4、タイムス
タンプ5、書込バッファ6、バッファ管理情報7は図1
に示す実施例と同じ機能を有する。
【0043】図13に示す実施例の動作につき、図1に
示す実施例との差異に着目して説明を行なう。書込み処
理では、ホストからの書込みデータが1ストライプ分に
1ブロック少ない数(K*4―1)だけ書込みバッファ
6に溜まった段階で、制御装置1はそれらのデータをデ
ィスク装置21〜25に書込みに行く。この時、最後の
書込みブロックとして、書込み管理テーブル7に格納さ
れた各ブロックの論理アドレスと揮発性メモリ3上のタ
イムスタンプ5から論理アドレスタグブロックを作成す
るまでは図1に示す実施例と同じである。
【0044】その後、この論理アドレスタグブロックを
加えた1ストライプ分のデータからストライプユニット
毎の排他論理輪演算(XOR)を行い、パリティのスト
ライプユニットを作成する。そして、このパリティ付き
のストライプのデータをまとめてディスク装置21〜2
5の空領域に同時に書込む。また、タイムスタンプ5の
値は書込みが完了した段階でインクリメントされる。こ
のように多数の細かいディスク書込みを1回にまとめら
れるのに加え、パリティ計算に旧データや旧パリティの
ブロックを読む必要がないので更にディスクアクセス回
数を減らすことができる。なお、ストライプ詰替え処理
のディスク書込みでも同様にしてパリティ付きのストラ
イプを作成してからディスク装置2に書込む。この様子
を図14に示す。
【0045】パリティRAID構成では、1台のディス
ク装置が故障しても、故障したディスクのデータはスト
ライプを構成する他ディスクのデータとパリティのXO
Rを計算することで再現でき、ディスク記憶装置として
のサービスが継続できる。しかし、システム起動時に一
台故障していた場合、論理アドレスタグを格納していな
いディスク装置のデータも読み出して論理アドレスタグ
を再生してから検査するため、変換マップ作成に時間が
かかりシステム起動が完了するまでの時間が大幅に増大
してしまう。
【0046】そこで、図15に示すように、ストライプ
を構成するデータブロックを1つ減らして2つのディス
ク装置に同じ論理アドレスタグを書くように制御する。
これにより、ディスク装置が1台故障しても変換マップ
作成時には残っている方の論理アドレスタグを読み出せ
るので、システム起動に要する時間の大幅な増大を回避
できる。
【0047】また、変換マップ作成の高速化のために専
用タグ領域を活用する場合、図16に示されるように、
論理アドレスタグが専用タグ領域に格納されるディスク
装置と、ストライプに格納されるディスク装置を違うよ
うに専用タグ領域の論理アドレスタグの割り付けを制御
することにより、ストライプ内の論理アドレスタグは1
つでよくなる。
【0048】尚、専用タグ領域へ論理アドレスタグを書
く場合もパリティによるディスク障害対策を行うと、従
来1回の書込み増で済んでいたものが、2回の書込みと
2回の読み出しが必要になって一括書込み時やストライ
プ詰替え時のディスク書込みのオーバヘッドが大きく増
大する。従って、この専用タグ領域の情報はパリティで
障害対策しない。この情報は変換マップ高速化のためで
あり、故障したディスク装置の専用タグ領域に格納され
ていた論理アドレスタグは、ストライプ中のものを(ラ
ンダムアクセスで)見れば良いので問題はない。また、
ランダムアクセスで検査する論理アドレスタグは1/5
だけであるので、変換マップ作成の高速化の効果はあ
る。
【0049】本発明は旧データの領域を書き換えるので
は無く、更新データを溜めておきディスク装置内のあら
かじめ用意した別の空領域にまとめて書込む方法が有効
なあらゆる分野に適用できる。つまり、磁気ディスクだ
けでなくシーケンシャル書込みとランダム書込みで大き
く性能が違う光磁気ディスク等のディスク装置や、小ブ
ロックの更新では2読み出しと2書込みが必要なパリテ
ィによる冗長性を持たせたRAID構成の記憶装置に主
に適用できる。
【0050】
【発明の効果】以上説明のように本発明によれば、間接
マップを原理的に何時でも再生できるので、電源障害に
備えて不揮発性メモリに間接マップに保持する必要はな
く、従って非常に安価なディスク記憶装置を構築でき
る。また、ハードウェア障害等により不揮発性メモリの
内容を喪失した場合でも、従来の方法では間接マップが
再生できないのでディスク上のデータ全てを失ってしま
うのに対し、書込みバッファに保持されていた最近の書
込みデータだけが失われるだけでほとんどのディスク上
データはそのまま残っている。従って、障害に対する耐
久性も大きく向上する。更に、電源障害等から回復処理
と通常のシステム起動処理は全く同じで済むので、シス
テム終了時や回復時の特別な処理が不要で開発コストを
軽減できる。
【0051】また、システム起動時の処理も、複数ディ
スク装置への論理アドレスタグの分散配置、論理アドレ
スタグを順次アクセスできる専用タグ領域、記憶領域の
セグメント分割管理などにより高速化できるので、シス
テム起動時の待ち時間を実用上問題無い範囲に押さえら
れる。特に、パリティRAID構成では、論理アドレス
タグを2台のディスク装置に記録することにより、1台
のディスク装置が故障してもシステム起動の時間が増加
しないようにできる。
【図面の簡単な説明】
【図1】本発明の実施例を示すブロック図。
【図2】本発明実施例における書き込みバッファとバッ
ファ管理情報の関係を示すために引用した図。
【図3】本発明実施例におけるディスク装置の空領域に
格納される内容を示す図。
【図4】ホスト機器から1ブロックサイズのデータ書き
込み順序を示すために引用した図。
【図5】図4の例におけるストライプST1,ST2の
論理アドレスタグTG1/TG2の内容を示す図。
【図6】ストライプST3/ST4を1個のストライプ
ST5に統合する例を示す図。
【図7】ストライプ統合において、論理アドレスタグT
G3/TG4から論理アドレスタグTG5を作場合の例
を示す図。
【図8】本発明実施例において使用される変換マップの
構成例を示す図。
【図9】ストライプにより論理アドレスタグが格納され
るディスク装置を4台に分散配置した例を示す図。
【図10】セグメント分割におけるディスク装置の記憶
領域の割り当てを示す図。
【図11】セグメント管理情報のエントリ構成を示す
図。
【図12】論理アドレスタグを連続して格納する専用タ
グ領域の内容を示す図。
【図13】本発明を適用して構成したRAID5による
ディスク装置の実施例を示すブロック図。
【図14】図13に示す実施例の動作概念を示す図。
【図15】2個のディスク装置に同じ論理アドレスタグ
を書くようにして制御する例を示す図。
【図16】変換マップ作成の高速化のために、専用タグ
領域を割付け使用する場合の例を示す図。
【図17】従来例におけるデータ更新方法を実現するた
めのシステム構成を示す図。
【符号の説明】
1…制御装置、2(21,22,23,24,25)…
ディスク装置、3…揮発性メモリ、4…不揮発性メモ
リ、5…タイムスタンプ、6…書き込みバッファ、7…
バッファ管理情報(テーブル)

Claims (26)

    【特許請求の範囲】
  1. 【請求項1】 N台のディスク装置から構成されるディ
    スク記憶装置において、N×K(整数)個の論理ブロッ
    クに相当する容量を持つ書込みバッファを有し、この書
    込みバッファに更新すべきデータの論理ブロックを蓄積
    し、その蓄積した論理ブロックがN×K―1個に達する
    までその論理ブロックのデータ更新を遅延させ、前記書
    込みバッファに蓄積された各論理ブロックに対する論理
    アドレスから構成される論理アドレスタグブロックを生
    成して、N×K―1個の論理ブロックに前記論理アドレ
    スタグブロックを加えたN×K個の論理ブロックを、N
    台のディスク装置上の更新されるべきデータを保持して
    いる領域とは別の空領域に連続して順次書込むことを特
    徴とするディスク記憶装置のデータ更新方法。
  2. 【請求項2】 上記書込みは、複数のディスク記装置に
    上記物理ブロックが並行して書込まれることを特徴とす
    る請求項1記載のディスク記憶装置のデータ更新方法。
  3. 【請求項3】 上記論理アドレスタグブロックに書き込
    み順序を判定するために用いられるタイムスタンプを付
    加することを特徴とする請求項1記載のディスク記憶装
    置のデータ更新方法。
  4. 【請求項4】 ディスク装置に記録された論理アドレス
    タグブロックを検査し、各論理アドレスに対応するディ
    スク装置上の位置を見つけることを特徴とする請求項1
    記載のディスク記憶装置のデータ更新方法。
  5. 【請求項5】 上記の検査において、同じ論理アドレス
    を含むストライプ(N×K個の論理ブロック)が複数あ
    る場合、タイムスタンプが最新のストライプのブロック
    を有効ブロックとし、他の同論理アドレスを持つブロッ
    クを無効ブロックと判定することを特徴とする請求項4
    記載のディスク記憶装置のデータ更新方法。
  6. 【請求項6】 上記の検査において、最大のタイムスタ
    ンプ値を見つけ、次の書込みで付加するタイムスタンプ
    を再生することを特徴とする請求項4記載のディスク記
    憶装置のデータ更新方法。
  7. 【請求項7】 上記の検査において、最小のタイムスタ
    ンプ値を見つけ、書込み順序の判定基準となるタイムス
    タンプ値を求めることを特徴とする請求項4記載のディ
    スク記憶装置のデータ更新方法。
  8. 【請求項8】 上記ディスク装置上に論理ブロックを連
    続して書込めるような空領域を作るため、複数ストライ
    プを読み出して有効ブロックだけを前記書込みバッファ
    に移し、対応する論理タグブロック内の論理アドレスか
    ら新しい論理アドレスタグブロックを生成し、書込みバ
    ッファの有効データと生成された論理アドレスタグから
    構成されるストライプを、読み出したストライプを保持
    していた領域とは別の空領域に順次書込むことを特徴と
    する請求項4記載のディスク記憶装置のデータ更新方
    法。
  9. 【請求項9】 上記新しい論理アドレスタグブロックを
    生成するとき、有効ブロック数がN×K―1個に満たな
    い場合は、新しい論理アドレスタグブロック内のデータ
    が格納されないブロックに対応した論理アドレスにはN
    ULLアドレスを設定することを特徴とする請求項8記
    載のディスク記憶装置のデータ更新方法。
  10. 【請求項10】 上記検査において、各論理アドレスに
    対するストライプ番号、ストライプ内のブロック番号、
    有効データのタイムスタンプから構成される変換マップ
    を生成し、ディスク装置の空領域にデータを書き込んだ
    後、その論理アドレスタグブロックを元に変換マップを
    修正し、常に有効ブロックを指すように管理することを
    特徴とする請求項4記載のディスク記憶装置のデータ更
    新方法。
  11. 【請求項11】 変換マップ作成後、ディスク装置への
    アクセスが少ない時間帯に、各ストライプの論理アドレ
    スタグブロックを読み出して変換マップとの比較訂正を
    行うことを特徴とする請求項10記載のディスク記憶装
    置のデータ更新方法。
  12. 【請求項12】 論理アドレスタグブロックが記録され
    るディスク装置をストライプによって分散配置し、論理
    アドレスタグブロックの検査時、ディスク装置の読み出
    しを並列に行うことを特徴とする請求項4記載のディス
    ク記憶装置のデータ更新方法。
  13. 【請求項13】 ストライプ単位の順次書込みに加え、
    論理アドレスタグだけを集めた専用タグ領域にもその論
    理アドレスタグを書込み、論理アドレスタグブロックの
    検査時にはこの専用タグ領域を順次読み出して調べるこ
    とを特徴とする請求項4記載のディスク記憶装置のデー
    タ更新方法。
  14. 【請求項14】 ディスク装置上の記憶領域をストライ
    プ単位に複数のセグメントに分割し、一定期間には1つ
    のセグメントにストライプが書込まれるように制御する
    とともに、書込むセグメントを切替えるときにはその時
    点の変換マップと切替え先のセグメント番号をディスク
    装置に記録し、変換マップ作成時には、ディスク装置の
    セグメント切替え時の変換マップを見込みディスク装置
    に記録されたセグメント番号の論理アドレスタグブロッ
    クだけを検査することを特徴とする、請求項4記載のデ
    ィスク記憶装置のデータ更新方法。
  15. 【請求項15】 不揮発性メモリ上にセグメント内の各
    ストライプに対応したビットマップを用意し、書込むセ
    グメントを切替えるときにはこのビットマップをクリア
    し、ストライプ書込みのときには書込んだストライプに
    対応したビットをセットし、変換マップ作成時には、デ
    ィスク装置のセグメント切替え時の変換マップを見込
    み、ディスク装置に記録されたセグメント番号の論理ア
    ドレスタグの中で、ビットマップがセットされているも
    ののみ検査することを特徴とする請求項4記載のディス
    ク記憶装置のデータ更新方法。
  16. 【請求項16】 タイムスタンプの最小値を進めるた
    め、無効ブロックが少ないストライプに対しても定期的
    に、読み出して有効ブロックだけを前記書込みバッファ
    に移し、対応する論理タグブロック内の論理アドレスと
    新しいタイムスタンプから論理アドレスタグブロックを
    生成し、書込みバッファの有効データと生成された論理
    アドレスタグブロックから構成されるストライプを、読
    み出したストライプを保持していた領域とは別の空領域
    に順次書込むことを特徴とする請求項7記載のディスク
    記憶装置のデータ更新方法。
  17. 【請求項17】 タイムスタンプの最小値を進めるた
    め、無効ブロックが少ないストライプに対して定期的
    に、論理アドレスタグブロックだけを読み出して無効ブ
    ロックの論理アドレスをNULLアドレスとした新しい
    タイムスタンプを付加した論理アドレスタグブロックを
    生成し、ここで生成された論理アドレスタグブロックを
    読み出した論理アドレスタグブロックに上書きすること
    を特徴とする請求項4記載のディスク記憶装置のデータ
    更新方法。
  18. 【請求項18】 変換マップ作成後、ディスク装置上の
    論理アドレスタグブロックのタイムスタンプと対応する
    変換マップのタイムスタンプを比較し、無効ブロックを
    判定することを特徴とする請求項9記載のディスク記憶
    装置のデータ更新方法。
  19. 【請求項19】 N台のディスク装置から構成されるデ
    ィスク記憶装置において、(N―1)×K個の論理ブロ
    ックに相当する容量を持つ書込みバッファを備え、この
    書込みバッファに更新すべきデータの論理ブロックを蓄
    積して、その蓄積した論理ブロックが選択した個数に達
    するまでその論理ブロックの更新を遅延させ、前記書込
    みバッファに蓄積された各論理ブロックに対する論理ア
    ドレスから構成される論理アドレスタグブロックを生成
    して、選択した個数の論理ブロックに前記論理アドレス
    タグブロックを加えた(N―1)×K個のデータ論理ブ
    ロックからK個のパリティブロックを生成し、このデー
    タ論理ブロックにパリティブロックを加えたN×K個の
    論理ブロックをN台のディスク装置上の更新されるべき
    データを保持している領域とは別の空領域に連続した書
    込み操作で順次書込むことを特徴とするディスク記憶装
    置のデータ更新方式。
  20. 【請求項20】 上記選択した個数として(N−1)×
    K―1とし、1個のディスク装置に論理アドレスタグブ
    ロックが記録されるようにすることを特徴とする請求項
    19記載のディスク記憶装置のデータ更新方法。
  21. 【請求項21】 上記選択した個数として(N−1)×
    K―2とし、1パリティストライプで2個のディスク装
    置に論理アドレスタグブロックが記録されるように、2
    つの論理アドレスタブブロックを割り付けることを特徴
    とする請求項19記載のディスク記憶装置のデータ更新
    方法。
  22. 【請求項22】 ディスク装置に記録された論理アドレ
    スタグブロックを検査するのに、パリティストライプ単
    位の順次書込みに加え、論理アドレスタグを集めた専用
    タグ領域にもその論理アドレスタグを書込み、この専用
    タグ領域の書込みデータはパリティで保護しないかわり
    に、パリティストライプ内の論理アドレスタグが記録さ
    れるディスク装置と専用タグ領域の論理アドレスタグが
    記録されるディスク装置が異なるように専用タグ領域を
    割り付けることを特徴とする請求項20記載のディスク
    記憶装置のデータ更新方法。
  23. 【請求項23】 N台のディスク装置から構成されるデ
    ィスク記憶装置と、N×K(整数)個の論理ブロックに
    相当する容量を持つ書込みバッファと、この書込みバッ
    ファに更新すべきデータの論理ブロックを蓄積し、その
    蓄積した論理ブロックがN×K―1個に達するまでその
    論理ブロックのデータ更新を遅延させ、前記書込みバッ
    ファに蓄積された各論理ブロックに対する論理アドレス
    から構成される論理アドレスタグブロックを生成して、
    N×K―1個の論理ブロックに前記論理アドレスタグブ
    ロックを加えたN×K個の論理ブロックを、N台のディ
    スク装置上の更新されるべきデータを保持している領域
    とは別の空領域に連続して順次書込む制御装置とを具備
    することを特徴とするディスク記憶制御システム。
  24. 【請求項24】 書き込みの時間的順序を維持するタイ
    ムスタンプが格納される揮発性メモリと、ディスク装置
    に書き込むべきデータをログ構造化して保持する上記書
    き込みバッファ、ならびに、書き込みバッファ内の空き
    領域及び保持されている書き込みデータの論理アドレス
    情報を保持するバッファ管理情報が格納される不揮発性
    メモリを具備することを特徴とする請求項23記載のデ
    ィスク記憶制御システム。
  25. 【請求項25】 N台のディスク装置から構成されるデ
    ィスク記憶装置と、(N―1)×K個の論理ブロックに
    相当する容量を持つ書込みバッファと、この書込みバッ
    ファに更新すべきデータの論理ブロックを蓄積して、そ
    の蓄積した論理ブロックが選択した個数に達するまでそ
    の論理ブロックの更新を遅延させ、前記書込みバッファ
    に蓄積された各論理ブロックに対する論理アドレスから
    構成される論理アドレスタグブロックを生成して、選択
    した個数の論理ブロックに前記論理アドレスタグブロッ
    クを加えた(N―1)×K個のデータ論理ブロックから
    K個のパリティブロックを生成し、このデータ論理ブロ
    ックにパリティブロックを加えたN×K個の論理ブロッ
    クをN台のディスク装置上の更新されるべきデータを保
    持している領域とは別の空領域に連続した書込み操作で
    順次書込制御装置とを具備することを特徴とするディス
    ク記憶制御システム。
  26. 【請求項26】 パリティを使った冗長性ディスク構成
    をとるために冗長ディスク装置を付加し、更に、書き込
    みの時間的順序を維持するタイムスタンプが格納される
    揮発性メモリと、ディスク装置に書き込むべきデータを
    ログ構造化して保持する上記書き込みバッファ、ならび
    に、書き込みバッファ内の空き領域及び保持されている
    書き込みデータの論理アドレス情報を保持するバッファ
    管理情報が格納される不揮発性メモリを具備することを
    特徴とする請求項25記載のディスク記憶制御システ
    ム。
JP9214656A 1997-08-08 1997-08-08 ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム Pending JPH1153235A (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP9214656A JPH1153235A (ja) 1997-08-08 1997-08-08 ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム
KR1019980027214A KR100310896B1 (ko) 1997-08-08 1998-07-07 디스크기억장치의데이터갱신방법및디스크기억제어장치
DE69831455T DE69831455T2 (de) 1997-08-08 1998-07-09 Datenaktualisierungsverfahren für ein Plattenspeichersteuergerät
EP98112743A EP0898228B1 (en) 1997-08-08 1998-07-09 Disk storage data updating method and disk storage controller
US09/128,774 US6219752B1 (en) 1997-08-08 1998-08-04 Disk storage data updating method and disk storage controller
CNB011255730A CN1194298C (zh) 1997-08-08 1998-08-07 盘存储装置的数据更新方法和盘存储控制装置
CNB981162282A CN1174318C (zh) 1997-08-08 1998-08-07 盘存储装置的数据更新方法和盘存储控制装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9214656A JPH1153235A (ja) 1997-08-08 1997-08-08 ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム

Publications (1)

Publication Number Publication Date
JPH1153235A true JPH1153235A (ja) 1999-02-26

Family

ID=16659392

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9214656A Pending JPH1153235A (ja) 1997-08-08 1997-08-08 ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム

Country Status (6)

Country Link
US (1) US6219752B1 (ja)
EP (1) EP0898228B1 (ja)
JP (1) JPH1153235A (ja)
KR (1) KR100310896B1 (ja)
CN (2) CN1194298C (ja)
DE (1) DE69831455T2 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002207572A (ja) * 2001-01-09 2002-07-26 Toshiba Corp ディスク制御システムおよびディスク制御方法
JP2003223284A (ja) * 2002-01-31 2003-08-08 Toshiba Corp ディスクアレイ装置及び同装置における動的記憶容量拡張方法
US6609176B1 (en) 1999-12-27 2003-08-19 Kabushiki Kaisha Toshiba Disk control system and data rearrangement method
JP2004102822A (ja) * 2002-09-11 2004-04-02 Toshiba Corp ディスクアレイ制御装置及びディスクアレイ制御装置におけるデータ書き込み方法
US6721863B1 (en) 2000-02-29 2004-04-13 Kabushiki Kaisha Toshiba Disk control mechanism preferable for random disk write
CN100334567C (zh) * 2003-07-02 2007-08-29 普安科技股份有限公司 冗余外部储存虚拟化计算机***
US7734153B1 (en) 1999-10-08 2010-06-08 Samsung Electronics Co., Ltd. Video stream processing method for time-delayed viewing
JP2010191499A (ja) * 2009-02-16 2010-09-02 Nec Corp ストレージシステム
US7987315B2 (en) 2006-02-03 2011-07-26 Samsung Electronics Co., Ltd. Data storage apparatus with block reclaim for nonvolatile buffer
JP2013506190A (ja) * 2009-09-29 2013-02-21 マイクロン テクノロジー, インク. ストライプベースのメモリ動作
JP2013257900A (ja) * 2006-12-08 2013-12-26 Lsi Inc 複数のストレージデバイスでのデータ冗長性
JP2016143296A (ja) * 2015-02-03 2016-08-08 富士通株式会社 情報記憶装置、ストレージシステムおよび情報記憶装置制御プログラム
US10121507B2 (en) 2015-03-27 2018-11-06 Panasonic Intellectual Property Management Co., Ltd. Writing method of data, reading method of data, and optical disc drive

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3233079B2 (ja) * 1997-09-30 2001-11-26 ソニー株式会社 データ処理システム及びデータ処理方法
US6532517B1 (en) * 1999-04-13 2003-03-11 Webtv Networks, Inc. System and method for reducing disk chatter from disk-based data storage systems
TW535161B (en) * 1999-12-03 2003-06-01 Nec Electronics Corp Semiconductor memory device and its testing method
JP3607153B2 (ja) * 2000-02-28 2005-01-05 シャープ株式会社 ファイル管理方法及び装置
SG99941A1 (en) * 2000-08-30 2003-11-27 Ibm Transaction support on logical disks
US6871271B2 (en) * 2000-12-21 2005-03-22 Emc Corporation Incrementally restoring a mass storage device to a prior state
US6763424B2 (en) * 2001-01-19 2004-07-13 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
KR100401946B1 (ko) * 2001-08-10 2003-10-17 박종원 주소계산과 자료이동방법 및 이를 이용한 충돌회피 기억 장치
JP3682256B2 (ja) * 2001-11-30 2005-08-10 株式会社東芝 ディスクアレイ装置及び同装置におけるパリティ処理方法
JP3579389B2 (ja) * 2001-11-30 2004-10-20 株式会社東芝 ディスクアレイ装置及び同装置におけるデータ復旧方法
JP3590381B2 (ja) * 2001-12-18 2004-11-17 株式会社東芝 ディスクアレイ装置及び同装置におけるデータ更新方法
JP3526452B2 (ja) * 2001-12-18 2004-05-17 株式会社東芝 ディスクアレイ装置及びデータバックアップ方法
EP1336967A1 (en) * 2002-02-15 2003-08-20 Deutsche Thomson-Brandt Gmbh Method and apparatus for addressing data segments on a recording medium for replay
US20040003172A1 (en) * 2002-07-01 2004-01-01 Hui Su Fast disc write mechanism in hard disc drives
US7069465B2 (en) * 2002-07-26 2006-06-27 International Business Machines Corporation Method and apparatus for reliable failover involving incomplete raid disk writes in a clustering system
JP4651913B2 (ja) 2003-02-17 2011-03-16 株式会社日立製作所 記憶装置システム
JP4060235B2 (ja) * 2003-05-22 2008-03-12 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の制御方法
JP2004348464A (ja) 2003-05-22 2004-12-09 Hitachi Ltd ストレージ装置、及び通信信号の整形回路
US7509473B2 (en) * 2003-08-27 2009-03-24 Adaptec, Inc. Segmented storage system mapping
US7991748B2 (en) 2003-09-23 2011-08-02 Symantec Corporation Virtual data store creation and use
US7730222B2 (en) 2004-08-24 2010-06-01 Symantec Operating System Processing storage-related I/O requests using binary tree data structures
US7725760B2 (en) 2003-09-23 2010-05-25 Symantec Operating Corporation Data storage system
US7577807B2 (en) * 2003-09-23 2009-08-18 Symantec Operating Corporation Methods and devices for restoring a portion of a data store
US7904428B2 (en) 2003-09-23 2011-03-08 Symantec Corporation Methods and apparatus for recording write requests directed to a data store
US7827362B2 (en) 2004-08-24 2010-11-02 Symantec Corporation Systems, apparatus, and methods for processing I/O requests
US7577806B2 (en) * 2003-09-23 2009-08-18 Symantec Operating Corporation Systems and methods for time dependent data storage and recovery
US7287133B2 (en) 2004-08-24 2007-10-23 Symantec Operating Corporation Systems and methods for providing a modification history for a location within a data store
JP4307202B2 (ja) * 2003-09-29 2009-08-05 株式会社日立製作所 記憶システム及び記憶制御装置
US7080768B2 (en) * 2003-11-10 2006-07-25 Worktools, Inc. Spring energized desktop stapler
JP4156499B2 (ja) * 2003-11-28 2008-09-24 株式会社日立製作所 ディスクアレイ装置
JP4497918B2 (ja) * 2003-12-25 2010-07-07 株式会社日立製作所 ストレージシステム
JP4634049B2 (ja) 2004-02-04 2011-02-16 株式会社日立製作所 ディスクアレイ装置における異常通知制御
JP4306525B2 (ja) * 2004-04-16 2009-08-05 ソニー株式会社 情報処理装置および方法、並びにプログラム
US7188212B2 (en) * 2004-05-06 2007-03-06 International Business Machines Corporation Method and system for storing data in an array of storage devices with additional and autonomic protection
US7821896B2 (en) 2004-05-10 2010-10-26 Panasonic Corporation Data recording/reproduction for write-once discs
US7093157B2 (en) * 2004-06-17 2006-08-15 International Business Machines Corporation Method and system for autonomic protection against data strip loss
US8066515B2 (en) * 2004-11-17 2011-11-29 Nvidia Corporation Multiple graphics adapter connection systems
US7885921B2 (en) * 2004-11-18 2011-02-08 International Business Machines Corporation Managing atomic updates on metadata tracks in a storage system
KR100578143B1 (ko) * 2004-12-21 2006-05-10 삼성전자주식회사 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는저장 시스템 및 그것을 포함한 컴퓨팅 시스템
US8122193B2 (en) 2004-12-21 2012-02-21 Samsung Electronics Co., Ltd. Storage device and user device including the same
JP4248510B2 (ja) * 2005-03-24 2009-04-02 株式会社東芝 計算機システム、ディスク装置およびデータ更新制御方法
US20060230455A1 (en) * 2005-04-12 2006-10-12 Yuan-Chang Lo Apparatus and methods for file system with write buffer to protect against malware
JP2007072839A (ja) * 2005-09-08 2007-03-22 Sony Corp 記録制御装置および方法、並びにプログラム
WO2007047346A2 (en) * 2005-10-14 2007-04-26 Symantec Operating Corporation Technique for timeline compression in a data store
JP4892225B2 (ja) * 2005-10-28 2012-03-07 株式会社日立ハイテクノロジーズ 真空処理方法、真空搬送装置および半導体処理装置
US7549021B2 (en) 2006-02-22 2009-06-16 Seagate Technology Llc Enhanced data integrity using parallel volatile and non-volatile transfer buffers
US20070294565A1 (en) * 2006-04-28 2007-12-20 Network Appliance, Inc. Simplified parity disk generation in a redundant array of inexpensive disks
US8250316B2 (en) * 2006-06-06 2012-08-21 Seagate Technology Llc Write caching random data and sequential data simultaneously
US10002000B2 (en) * 2007-04-09 2018-06-19 Open Invention Network, Llc Trace-assisted startup optimization from a virtual disk
KR101028929B1 (ko) * 2008-12-31 2011-04-12 성균관대학교산학협력단 실시간 시스템을 위한 로그 블록 연관성 분산 방법 및 이를수행하는 플래시 메모리 장치
KR101581859B1 (ko) * 2009-02-27 2016-01-21 삼성전자주식회사 메모리 시스템 및 그것의 플래시 변환 계층의 데이터 관리 방법
US8799572B2 (en) 2009-04-20 2014-08-05 Microsoft Corporation Sliding-window multi-class striping
JP4599450B2 (ja) * 2009-04-24 2010-12-15 株式会社東芝 電子機器、ファイルシステムの記憶領域割当法、および記憶領域割当プログラム
KR20110103660A (ko) * 2010-03-15 2011-09-21 주식회사 히타치엘지 데이터 스토리지 코리아 광디스크 드라이브 레이드 기록 장치 및 방법
US9588888B2 (en) 2010-07-30 2017-03-07 Hewlett Packard Enterprise Development Lp Memory device and method for altering performance characteristic based on bandwidth demand
CN101930404B (zh) * 2010-08-27 2012-11-21 威盛电子股份有限公司 存储装置及其操作方法
US9389805B2 (en) 2011-08-09 2016-07-12 Seagate Technology Llc I/O device and computing host interoperation
KR101522848B1 (ko) * 2011-10-05 2015-05-26 엘에스아이 코포레이션 비휘발성 스토리지에 대한 셀프-저널링 및 계층적 일치성
JP2013196276A (ja) * 2012-03-19 2013-09-30 Fujitsu Ltd 情報処理装置、プログラムおよびデータ配置方法
US9395924B2 (en) 2013-01-22 2016-07-19 Seagate Technology Llc Management of and region selection for writes to non-volatile memory
US9213633B2 (en) 2013-04-30 2015-12-15 Seagate Technology Llc Flash translation layer with lower write amplification
JP5747133B1 (ja) * 2014-06-11 2015-07-08 株式会社東芝 共有ストレージシステム、及びストレージ装置へのアクセスを制御する方法
CN107436735A (zh) * 2017-07-28 2017-12-05 郑州云海信息技术有限公司 一种分布式文件***中存储单元状态更新方法
CN110568993B (zh) * 2019-08-06 2022-04-12 新华三技术有限公司成都分公司 一种数据更新方法及相关装置
US11329803B2 (en) 2020-09-29 2022-05-10 Amazon Technologies, Inc. Redundancy controls in convergent encryption using dynamic salt values
US11582025B2 (en) 2020-09-29 2023-02-14 Amazon Technologies, Inc. Efficient deduplication using block-based convergent encryption

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5195100A (en) * 1990-03-02 1993-03-16 Micro Technology, Inc. Non-volatile memory storage of write operation identifier in data sotrage device
US5233618A (en) * 1990-03-02 1993-08-03 Micro Technology, Inc. Data correcting applicable to redundant arrays of independent disks
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
US5274799A (en) * 1991-01-04 1993-12-28 Array Technology Corporation Storage device array architecture with copyback cache
KR970004255B1 (ko) * 1992-12-07 1997-03-26 인터내셔널 비지네스 머신즈 코포레이션 병렬 디스크 상에서의 고속 데이타 갱신 방법
WO1997001139A1 (en) * 1995-06-23 1997-01-09 Elonex Plc Disk array controller with enhanced synchronous write
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 (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7734153B1 (en) 1999-10-08 2010-06-08 Samsung Electronics Co., Ltd. Video stream processing method for time-delayed viewing
US6609176B1 (en) 1999-12-27 2003-08-19 Kabushiki Kaisha Toshiba Disk control system and data rearrangement method
US6721863B1 (en) 2000-02-29 2004-04-13 Kabushiki Kaisha Toshiba Disk control mechanism preferable for random disk write
US7216199B2 (en) 2001-01-09 2007-05-08 Kabushiki Kaisha Toshiba Disk control system and method
JP2002207572A (ja) * 2001-01-09 2002-07-26 Toshiba Corp ディスク制御システムおよびディスク制御方法
JP2003223284A (ja) * 2002-01-31 2003-08-08 Toshiba Corp ディスクアレイ装置及び同装置における動的記憶容量拡張方法
JP2004102822A (ja) * 2002-09-11 2004-04-02 Toshiba Corp ディスクアレイ制御装置及びディスクアレイ制御装置におけるデータ書き込み方法
CN100334567C (zh) * 2003-07-02 2007-08-29 普安科技股份有限公司 冗余外部储存虚拟化计算机***
US7987315B2 (en) 2006-02-03 2011-07-26 Samsung Electronics Co., Ltd. Data storage apparatus with block reclaim for nonvolatile buffer
JP2013257900A (ja) * 2006-12-08 2013-12-26 Lsi Inc 複数のストレージデバイスでのデータ冗長性
JP2010191499A (ja) * 2009-02-16 2010-09-02 Nec Corp ストレージシステム
US8555007B2 (en) 2009-02-16 2013-10-08 Nec Corporation Storage system with journal disks dynamically assigned
JP2013506190A (ja) * 2009-09-29 2013-02-21 マイクロン テクノロジー, インク. ストライプベースのメモリ動作
JP2016143296A (ja) * 2015-02-03 2016-08-08 富士通株式会社 情報記憶装置、ストレージシステムおよび情報記憶装置制御プログラム
US10121507B2 (en) 2015-03-27 2018-11-06 Panasonic Intellectual Property Management Co., Ltd. Writing method of data, reading method of data, and optical disc drive

Also Published As

Publication number Publication date
DE69831455T2 (de) 2006-06-14
KR19990023182A (ko) 1999-03-25
EP0898228A2 (en) 1999-02-24
CN1194298C (zh) 2005-03-23
KR100310896B1 (ko) 2001-11-15
US6219752B1 (en) 2001-04-17
CN1347031A (zh) 2002-05-01
DE69831455D1 (de) 2005-10-13
CN1174318C (zh) 2004-11-03
CN1208891A (zh) 1999-02-24
EP0898228A3 (en) 2004-01-21
EP0898228B1 (en) 2005-09-07

Similar Documents

Publication Publication Date Title
JPH1153235A (ja) ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム
JPH11194899A (ja) ディスク記憶システム及び同システムに適用するデータ更新方法
US5537534A (en) Disk array having redundant storage and methods for incrementally generating redundancy as data is written to the disk array
US5542065A (en) Methods for using non-contiguously reserved storage space for data migration in a redundant hierarchic data storage system
US6904498B2 (en) Raid controller disk write mask
US5379391A (en) Method and apparatus to access data records in a cache memory by multiple virtual addresses
US8677063B2 (en) Parity declustered storage device array with partition groups
EP0726521B1 (en) Disk array having hot spare resources and methods for using hot spare resources to store user data
JP5315348B2 (ja) シン・プロビジョニングの移行および取り消しのための方法および装置
US5375128A (en) Fast updating of DASD arrays using selective shadow writing of parity and data blocks, tracks, or cylinders
US5572661A (en) Methods and system for detecting data loss in a hierarchic data storage system
US5420983A (en) Method for merging memory blocks, fetching associated disk chunk, merging memory blocks with the disk chunk, and writing the merged data
JP2003223284A (ja) ディスクアレイ装置及び同装置における動的記憶容量拡張方法
JP2003186624A (ja) ディスクアレイ装置及び同装置におけるデータ更新方法
JPH05216593A (ja) 間接アクセス記憶装置
US11334277B2 (en) Issuing efficient writes to erasure coded objects in a distributed storage system with two tiers of storage
JP2000010738A (ja) ディスクアレイシステム、同システムに適用される記憶容量拡張方法および記録媒体
US11334276B2 (en) Using segment pre-allocation to support large segments
US11263146B2 (en) Efficient accessing methods for bypassing second layer mapping of data blocks in file systems of distributed data systems
US8086914B2 (en) Storing data to multi-chip low-latency random read memory device using non-aligned striping
US11262919B2 (en) Efficient segment cleaning employing remapping of data blocks in log-structured file systems of distributed data systems
US20210311919A1 (en) Techniques for Reducing Data Log Recovery Time and Metadata Write Amplification
CN111913664B (zh) 一种数据写入方法及装置
JPH0541037A (ja) デイジタルデータ記録再生装置
JP2000132917A (ja) 情報記録媒体の欠陥を管理する方法、その装置及び情報記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040806

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080115

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080610