JP2003296047A - Raidファイルシステム - Google Patents

Raidファイルシステム

Info

Publication number
JP2003296047A
JP2003296047A JP2002096579A JP2002096579A JP2003296047A JP 2003296047 A JP2003296047 A JP 2003296047A JP 2002096579 A JP2002096579 A JP 2002096579A JP 2002096579 A JP2002096579 A JP 2002096579A JP 2003296047 A JP2003296047 A JP 2003296047A
Authority
JP
Japan
Prior art keywords
parity
block
updated
data block
update
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.)
Withdrawn
Application number
JP2002096579A
Other languages
English (en)
Inventor
Naomi Yoshizawa
直美 吉沢
Yoshitake Shinkai
慶武 新開
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2002096579A priority Critical patent/JP2003296047A/ja
Publication of JP2003296047A publication Critical patent/JP2003296047A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 書き込み途上のどの時点で書き込みが中止さ
れたとしてもパリティの整合性が維持されるRAIDフ
ァイルシステムを提供する。 【解決手段】 RAIDの実現が可能なように物理ディ
スクvol 1,3,6に分散して格納されている論理
ブロック4〜6で構成されるストライプ中の論理ブロッ
ク5を更新するにあたって、更新後の論理ブロック5n
ewと更新に伴って新たに計算されたパリティブロック
4newの格納領域を、論理ブロック6との間でRAI
Dが実現できる形でディスクの未使用領域に確保して書
き込み、その後、メタデータを更新する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、パリティ整合性の
維持機能を備えたRAIDファイルシステムに関する。
【0002】
【従来の技術】ディスクに書き込まれたデータの信頼性
を向上し、ディスクのアクセス速度を向上するため、複
数のディスク装置にデータを冗長化して格納するRAI
Dファイルシステムが良く知られている。
【0003】特開2000−99282号公報には、実
ディスクアレイの構成とは独立して、ファイル毎にスト
ライプ幅を任意に設定することが可能なRAIDファイ
ルシステムが開示されている。各ファイルを記述するメ
タデータには、ストライプ幅と、ストライプ幅によって
定まる論理的なストライプ構成内の論理ブロックの番号
を実ディスク内のブロック番号に変換するアドレス変換
表が含まれ、これによって、論理ストライプ構成内の各
ブロックを実ディスク内のブロックにRAIDを実現す
る条件を満たしつつダイナミックにかつ効率的にマッピ
ングすることができる。
【0004】RAIDファイルシステムの信頼性はファ
イルの構成要素として各ストライプにデータブロック以
外にパリティブロックと呼ばれる情報が存在することに
より提供されている。これは或るブロックが読み取り不
可能な状態などの信頼性を損なう状態になった場合にパ
リティブロック(及び当該ブロックの属するストライプ
を構成するデータブロック群)を用いることにより当該
ブロックを復元するものであり、当然のことであるがパ
リティブロックはデータブロックの更新に伴い更新され
る必要がある。
【0005】ここで問題となるのはデータ書き込み開始
時点よりパリティ書き込み完了時点までの間に書き込み
処理を行っているノードがダウンしてしまった場合であ
る。この状態は新旧のいずれかの状態でデータとパリテ
ィの整合性が取れている可能性もあれば、新データが書
きかけである(パリティは古いまま)可能性、(データ
は新しいものの)パリティブロックが書きかけ状態であ
る可能性もある。
【0006】この状態を捨ておいた場合、あるブロック
(ここでは特にダウン途上に書きかけたブロックとは別
のものを想定)が読み取り不可能になった場合、このブ
ロックの復元処理を上記の信頼性のないパリティブロッ
クとデータブロックを元に行うことになり、異常処理
(先の書き込み途上のダウン)とは何ら関係のないブロ
ックに対して信頼性が保証できない状態が伝播してしま
うことになる。
【0007】これをさけるために、RAIDファイルを
許容するファイルシステムでは、データ及びパリティの
整合性保証手段を提供する必要がある。
【0008】
【発明が解決しようとする課題】したがって本発明の目
的は、書き込み途上のどの時点で書き込みが中止された
としてもパリティの整合性が保証されるRAIDファイ
ルシステムを提供することにある。
【0009】
【課題を解決するための手段】本発明によれば、各スト
ライプがデータブロックに加えてパリティブロックを有
する、RAIDファイルシステムであって、更新後のデ
ータブロックおよびデータブロックの更新に伴って更新
された後のパリティブロックを、該データブロックが属
するストライプ内の他のデータブロックが格納されてい
る外部記憶装置とは異なりかつ相異なる外部記憶装置の
未使用領域にそれぞれ書き込む手段と、更新後のデータ
ブロックおよび更新後のパリティブロックの書き込みが
完了した後に、更新後のデータブロックおよび更新後の
パリティブロックが書き込まれた領域を含んでファイル
が構成されるようにメタデータを更新する手段とを具備
するRAIDファイルシステムが提供される。
【0010】このシステムは、更新すべきデータブロッ
クが属するファイルに設定された属性に基いて、前記未
使用領域書き込み手段およびメタデータ更新手段により
データブロックの更新を行うか否かを決定する手段をさ
らに具備することが好ましい。
【0011】本発明によれば、各ストライプがデータブ
ロックに加えてパリティブロックを有し、複数のノード
からの書き込みが可能である、RAIDファイルシステ
ムであって、更新個所を特定する情報を記憶した後に更
新後のデータおよび更新後のパリティをそれぞれ更新前
のデータブロックおよび更新前のパリティブロックに上
書きする手段と、書き込みの権限がノードから返還され
るときのみ、前記更新個所特定情報を無効化する手段
と、システム再開時において、無効化されていない更新
個所特定情報が存在するとき、対応するストライプにつ
いてパリティのチェックを行なう手段とを具備するRA
IDファイルシステムもまた提供される。
【0012】本発明によれば、各ストライプがデータブ
ロックに加えてパリティブロックを有し、複数のノード
からの書き込みの競合がトークンにより制御される、R
AIDファイルシステムであって、ダウンしたノードに
発行されていたすべてのトークンを特定する手段と、特
定されたトークンにより更新可能なブロックのすべてに
ついてパリティ整合性を復旧する手段とを具備するRA
IDファイルシステムもまた提供される。
【0013】本発明によれば、前述のRAIDファイル
システムをコンピュータに実現させるプログラムもまた
提供される。
【0014】
【発明の実施の形態】図1は本発明の一実施形態に係る
ファイルシステムを示す。本システムでは、1つ以上の
物理ディスクで1つ以上の仮想(論理)ディスクが実現
される。図に示した例では4つの物理ディスクvol
1〜4が1つの論理ディスク10として認識される。論
理ディスク10内に格納されるファイルのメタデータ1
2はデータ格納用のディスクvol 1〜4とは別の物
理ディスクに格納される。
【0015】このファイルシステムはRAIDファイル
をサポートしており、RAIDファイルについては、そ
のメタデータ12内の1ファイル情報14にはファイル
名16、ファイルサイズ18の他にRAIDストライプ
幅20が設定される。このRAIDストライプ幅は物理
ディスクの数に無関係に設定することができる。また、
ストライプ幅の異なるファイルを混在させることもでき
る。RAIDを実現するために各物理ディスクvol
1〜4の記憶容量が揃っていることも要求されない。
【0016】図1の右下には、ストライプ幅が3である
ファイルの論理ストライプ構成24が示されている。ス
トライプ幅が3であるとき、第1のストライプは論理ブ
ロック1〜3で、第2のストライプは4〜6で、第3の
ストライプは論理ブロック7…で構成される。各ストラ
イプには1つのパリティブロックが含まれる。図に示し
た例では、一例として論理ブロック番号1,2,3…を
ストライプ幅で割算をした余りが1であるブロック1,
4,7…をパリティブロックとしている。
【0017】1ファイル情報14内の(またはそれから
ポイントされる)RAID情報22にはこの論理ストラ
イプ構成に従う順序で情報が格納される。RAIDを実
現するため、各ストライプを構成する複数の論理ブロッ
クはその内容が相異なる物理ディスクに格納されるよう
に実ディスク上にマッピングされる。図に示した例で
は、第2ストライプを構成する論理ブロック4はvol
1内の或るブロックに、論理ブロック5はvol 3
内のブロックに、論理ブロック5はvol 4内のブロ
ックにマッピングされている。また、第1ストライプを
構成する論理ブロック1〜3はそれぞれ、vol 1,
2および4内のブロックにマッピングされている。これ
らの情報がRAID情報22内の(またはそれからポイ
ントされる)1ストライプ情報26に格納される。
【0018】本発明の一実施形態に係る更新方法を以下
に説明する。
【0019】i)更新対象データd−oldが格納され
ている物理ブロック(群)をb−oldとする。
【0020】ii)これに対し更新後のデータをd−ne
wとする。
【0021】iii)更新すべきファイルのファイル属性が
RAIDかつパリティ付きである場合には、更新対象ブ
ロックが属するストライプに属する他の物理ブロックの
位置に基いてRAIDが実現できる配置になるようにデ
ータブロック、パリティブロックの格納位置を未使用領
域の中から確保する。
【0022】ここではd−newを物理ブロック(群)
b−newに、この更新により変更が必要となるパリテ
ィのためのブロック(群)をp−newに確保できたと
する。
【0023】iv)d−newを物理ブロックb−new
に書き込む。
【0024】v)同じストライプに属する他のブロック
のデータを読み込み、d−newと併せて新たなパリテ
ィを計算しこれをp−newに書き込む。
【0025】この時点でメタデータ(ファイル属性情
報)はファイルを構成するブロックがb−old,p−
oldであると認識している。図1の例でデータブロッ
ク5を更新する場合には、図2に示すように、更新後の
データブロック5newとパリティブロック4newが
それぞれvol 3とvol 2のいずれかのブロック
に書き込まれるが、メタデータは依然として更新前のブ
ロック5およびブロック4をポイントしている。
【0026】vi)メタデータを更新後の状況に書き換え
る。
【0027】この時点をもって該当ファイルはb−ne
w,p−newを構成ブロックとして認識可能となる。
図1および図2に示した例では、図3に示すようにメタ
データ12内の1ストライプ情報26をブロック4ne
wおよび5newをポイントするように書き換えること
で更新が完了する。
【0028】なお、ここではメタデータファイルへの更
新がデータ、パリティ共に新領域に用意される毎に行な
われるものとしている。これ以外にもファイルクローズ
時にブロック群とパリティ群を全てまとめて一括反映さ
せる、複数のファイルをまとめて処理する、等が考えら
れる。
【0029】上記いずれかのタイミングで書き込み途上
のプロセスがダウンした場合でも、ファイルの該当部分
の構成は、旧データ・旧パリティの組み合わせ、新デー
タ・新パリティの組み合わせ以外の形は取らないので、
ファイル上のパリティ整合性が維持されることになる。
したがって、パリティ整合性の維持のための復旧処理は
不要である。なお、メタデータ書き込み途上でダウンし
た場合について言及されていないが、メタデータの正当
性の維持については、書き込みに先立って書き込み内容
をロギングする等の従来技術で対処可能である。
【0030】この更新処理によれば、1ファイル内で更
新部分が未更新部分から離れた位置に格納されることに
なっていわゆるファイルの断片化が生じ、アクセス性能
が低下する。これに対しては、更新後のファイルの読み
出しの頻度が一定以上高ければ(あるいは頻度自体は低
くても必要な時に高速読み出しを要求されるのであれ
ば)ユーザ指定の処理とは別に(例えばバックグラウン
ド処理で)デフラグ及びファイル構成ブロック群のディ
スク内における再構成(最適化を追求した位置変更)を
実施すれば良い。
【0031】その他にも、更新処理の中で更新部分とそ
れから離れた未更新部分にアクセスしなければならない
ので、単純にデータブロックの上書きのみを行なう場合
よりも処理時間が長くなるという問題もある。
【0032】そこで、メタデータファイル内にある各種
ファイル属性を判断基準として単純な上書き処理と本発
明の更新処理との間で使い分けをすることが考えられ
る。
【0033】判別方式は以下のようになる。
【0034】i)ファイル属性(群)を入力として、書
き込み処理タイプを出力とする演算の格納・計算機構を
用意する。
【0035】ii)書き込み処理に先立ちファイル属性の
参照を必須とする。
【0036】iii)先の演算機構にファイル属性を与え、
書き込み処理タイプの判別を行う。
【0037】iv)それぞれのファイルに対する書き込み
(更新)処理はこのタイプを参照した後相応するものが
選択される。
【0038】上記のもっとも単純な例としてはファイル
属性として「書き込みタイプ」が存在し直接これを参照
することであろう。ただしこの場合には、ユーザあるい
は上位アプリケーションによる設定もファイル単位で行
う必要がある。通常設定されるファイル属性の1つまた
はそれ以上から「書き込みタイプ」を演算により決定す
れば、こういった煩雑性は避けられる。
【0039】この「書き込みタイプ」に従って書き込み
(更新)処理を実行する際の上記以外の選択肢として
は、例えば書き込みに先立ち該書き込みにより影響をう
けるパリティ位置をロギングする方式が考えられる。そ
して、復旧時にはロギングされたパリティ位置のパリテ
ィを、現存するデータから計算して書き替えることによ
り、パリティの整合性の維持を図る。この方式はダウン
時にパリティ整合性を復旧するのみでデータ自体は新旧
いずれの状態になるか保証されないものの、書き込みの
際の追加負荷が(ブロック番号等の)パリティブロック
を特定するに足る情報のロギングのみであるというもの
である。したがって、前述の、新規領域へ書き込み後新
旧ブロックを差し換える方式とは逆の特性を持ってい
る。
【0040】この「パリティ位置をロギングする方式」
について説明すると、まず、パリティ整合性のみ(デー
タ自体の保証はしない)を保証するのであれば、最も単
純な処理はパリティ整合性が保証できなくなった時点で
ファイルシステム(が保持するデータ)全体のパリティ
計算をやり直すことである。しかし、これでは長時間を
要することになり短期での復旧、システム再起動は見込
めない。このため、何らかの方式で再計算範囲を限定す
る手段を提供することになる。上記の「パリティ位置を
ロギングする方式」では、これを実際に書き込みが生じ
たことにより影響をうけるパリティブロックを特定する
情報をロギングすることにより実現している。
【0041】この「パリティ位置を特定する情報」は書
き込み完了後に無効化される。そして、システム再開時
において、無効化されていないパリティ位置特定情報が
残っていればそれに対応するストライプについてパリテ
ィの再計算を行なってパリティの整合性を回復させる。
【0042】ところで、複数のノードからの書き込みが
行なわれるファイルシステムでは、例えばブロック毎に
1つずつトークンが用意され、トークンを持つノードの
みにディスクへの実際の書き込みを許すことにより、複
数のノードからの書き込みの競合を制御している。そこ
で、ロギング情報の無効化、すなわち無効化情報のログ
への書き込みを各ブロックの書き込みの完了毎に行なう
のでなく、トークン返却時に行なうことで、無効化情報
の書き込みに要する負荷が軽減される。
【0043】この手法が採用されるとき、同一ノード内
における1トークン取得期間内に実行される一つ以上の
書き込み処理に対し、無効化情報が一つしか存在しない
が、少なくとも無効化情報が存在する場合には復旧不要
であり、無効化情報が存在しない場合にはログに存在す
る該当ブロックに対する最後の更新データが有効である
ことが分かる。あるいは最後の更新データを抽出しなく
とも、有効な全データを順次ライトしていくことによ
り、実際に最後の更新データの状態にすることも可能で
ある。
【0044】なお同様の手段として、ロック方式による
ディスク書込制御の際、ロックを解放する時点をもって
無効化情報を書く、ということが考えられる。
【0045】この手法は、ロギング処理の負荷がそこそ
こ高く、かつあるプロセスにおけるファイル更新の範囲
が狭い(例えば特定ファイルに片寄っているなど)場合
に有効である。
【0046】ディスクのアクセスがトークン制御されて
いるということは、あるノードがファイルのある部分を
更新している途上では該当部分のトークンを必ず保持し
ていることを意味する。従ってあるノードがダウンした
場合に該当ノードが保持していたトークンで更新可能な
全ての場所のパリティチェックを行うことは、パリティ
の整合性復旧の充分条件を満した処理となる。
【0047】ただし、この処理はパリティ位置をロギン
グする場合と比較してその復旧範囲がより広くなる(最
悪の場合で全く等しい)、すなわち復旧所要時間の増大
を招く。
【0048】このため、この機能を使用する条件をロギ
ングされたパリティ位置の情報が信頼性を失った場合に
限定することが望ましい。このような状況は、ログにア
クセス可能なすべてのノードがダウンした場合に起こり
得る。
【0049】前述の、新規領域への書き込み後新旧ブロ
ックを差し換える方式では復旧処理というものは不要で
あった。パリティ位置をロギングする方式では、ログフ
ァイルを参照することにより、ダウン時に書き込み途上
であったために整合性が取れていない可能性のあるスト
ライプを特定可能である。これを対象としてパリティ再
計算を行う。計算前後でパリティ値が異なっている場合
にはストライプ情報を何らかの形で(ユーザあるいは管
理者等に)提示し、この新規パリティ値の書き込みを実
行する。これによりストライプの整合性が保証され、更
に、該当ストライプのダウン時に書き込みしていたデー
タ部分が意図しない値になっている可能性がユーザに提
示されていることにより必要であれば再度の書き込みを
指示出来る。なお、該当(正当な値が入っていない可能
性のある)データブロックがこの状態である(データと
しての正当性を欠く無効な情報である)ことはメタデー
タのディスクに記録し、不用意に該当データを用いない
ようにすること。また、パリティ再計算は、該当ストラ
イプを構成する全てのブロックが正常にアクセス可能で
あることを前提としている。この条件を満さない場合に
は、該当データブロック(およびアクセス不可能なブロ
ック)の(正当性のない旨の)メタデータへの記録を無
条件に指示する。
【0050】ログにアクセスできない場合にダウンした
ノードが保持していたトークンで更新可能なすべてのス
トライプのパリティチェックを行なう方式ではダウン時
に実際にどのストライプを更新していたかの限定は不可
能となり、更新していた可能性のある範囲を示すにとど
まる。この場合にも該当範囲に属するストライプを対象
としたパリティ再計算とパリティ書き込みを行うのは前
述の通りである。ただし、今回は計算前後で異なる値の
パリティブロックが発生した場合には、該当ストライプ
情報を(意図しない値がはいってる可能性のある範囲と
して)提示する必要がある。
【0051】トークンの情報すらも得られない場合、デ
ィスク(格納領域)全体をパリティ再計算範囲とする。
この場合には無保証範囲はパリティ計算不可能であった
ストライプ全体、及び、計算前後で値の異なっていたパ
リティブロックに関連するデータブロック群(ストライ
プ)全体である。
【0052】(付記1)各ストライプがデータブロック
に加えてパリティブロックを有する、RAIDファイル
システムにおけるデータブロックの更新方法であって、
(a)更新後のデータブロックおよびデータブロックの
更新に伴って更新された後のパリティブロックを、該デ
ータブロックが属するストライプ内の他のデータブロッ
クが格納されている外部記憶装置とは異なりかつ相異な
る外部記憶装置の未使用領域にそれぞれ書き込み、
(b)更新後のデータブロックおよび更新後のパリティ
ブロックの書き込みが完了した後に、更新後のデータブ
ロックおよび更新後のパリティブロックが書き込まれた
領域を含んでファイルが構成されるようにメタデータを
更新するステップを具備する方法。
【0053】(付記2)(c)更新すべきデータブロッ
クが属するファイルに設定された属性に基いて、ステッ
プ(a)および(b)によりデータブロックの更新を行
うか否かを決定するステップをさらに具備する付記1記
載の方法。
【0054】(付記3)(d)ステップ(c)において
ステップ(a)および(b)による更新を行なわないと
決定されるとき、更新個所を特定する情報を記憶した後
に更新後のデータおよび更新後のパリティをそれぞれ更
新前のデータブロックおよび更新前のパリティブロック
に上書きし、(e)ステップ(d)の終了後に前記更新
個所特定情報を無効化し、(f)システム再開時に無効
化されていない更新個所特定情報が存在するとき、対応
するストライプについてパリティの再計算を行なうステ
ップをさらに具備する付記2記載の方法。
【0055】(付記4)各ストライプがデータブロック
に加えてパリティブロックを有し、複数のノードからの
書き込みが可能である、RAIDファイルシステムにお
けるデータブロックの更新方法であって、(a)更新個
所を特定する情報を記憶した後に更新後のデータブロッ
クおよび更新後のパリティブロックをそれぞれ更新前の
データブロックおよび更新前のパリティブロックに上書
きし、(b)書き込みの権限がノードから返還されると
きのみ、前記更新個所特定情報を無効化し、(c)シス
テム再開時において、無効化されていない更新個所特定
情報が存在するとき、対応するストライプについてパリ
ティのチェックを行なうステップを具備する方法。
【0056】(付記5)各ストライプがデータブロック
に加えてパリティブロックを有し、複数のノードからの
書き込みの競合がトークンにより制御される、RAID
ファイルシステムにおけるパリティの整合性の復旧方法
であって、ダウンしたノードに発行されていたすべての
トークンを特定し、特定されたトークンにより更新可能
なブロックのすべてについてパリティ整合性を復旧する
ステップを具備する方法。
【0057】(付記6)各ストライプがデータブロック
に加えてパリティブロックを有する、RAIDファイル
システムであって、更新後のデータブロックおよびデー
タブロックの更新に伴って更新された後のパリティブロ
ックを、該データブロックが属するストライプ内の他の
データブロックが格納されている外部記憶装置とは異な
りかつ相異なる外部記憶装置の未使用領域にそれぞれ書
き込む手段と、更新後のデータブロックおよび更新後の
パリティブロックの書き込みが完了した後に、更新後の
データブロックおよび更新後のパリティブロックが書き
込まれた領域を含んでファイルが構成されるようにメタ
データを更新する手段とを具備するRAIDファイルシ
ステム。(1) (付記7)更新すべきデータブロックが属するファイル
に設定された属性に基いて、前記未使用領域書き込み手
段およびメタデータ更新手段によりデータブロックの更
新を行うか否かを決定する手段をさらに具備する付記6
記載のRAIDファイルシステム。(2) (付記8)前記決定手段が未使用領域書き込み手段およ
びメタデータ更新手段による更新を行なわないと決定す
るとき、更新個所を特定する情報を記憶した後に更新後
のデータおよび更新後のパリティをそれぞれ更新前のデ
ータブロックおよび更新前のパリティブロックに上書き
する手段と、上書きの終了後に前記更新個所特定情報を
無効化する手段と、システム再開時に無効化されていな
い更新個所特定情報が存在するとき、対応するストライ
プについてパリティの再計算を行なう手段をさらに具備
する付記7記載のRAIDファイルシステム。
【0058】(付記9)各ストライプがデータブロック
に加えてパリティブロックを有し、複数のノードからの
書き込みが可能である、RAIDファイルシステムであ
って、更新個所を特定する情報を記憶した後に更新後の
データブロックおよび更新後のパリティブロックをそれ
ぞれ更新前のデータブロックおよび更新前のパリティブ
ロックに上書きする手段と、書き込みの権限がノードか
ら返還されるときのみ、前記更新個所特定情報を無効化
する手段と、システム再開時において、無効化されてい
ない更新個所特定情報が存在するとき、対応するストラ
イプについてパリティのチェックを行なう手段とを具備
するRAIDファイルシステム。(3) (付記10)各ストライプがデータブロックに加えてパ
リティブロックを有し、複数のノードからの書き込みの
競合がトークンにより制御される、RAIDファイルシ
ステムであって、ダウンしたノードに発行されていたす
べてのトークンを特定する手段と、特定されたトークン
により更新可能なブロックのすべてについてパリティ整
合性を復旧する手段とを具備するRAIDファイルシス
テム。(4) (付記11)付記6〜10のいずれか1項記載のRAI
Dファイルシステムをコンピュータに実現させるプログ
ラム。(5)
【0059】
【発明の効果】以上説明したように、本発明では以下の
効果が期待できる。
【0060】(1)書き込み途上においてノードダウン
が生じた場合でもデータの出実(新旧どちらかの状態に
限定され中途半端な状態にはならない)とパリティ整合
性は確保される。
【0061】(2)上記処理が一定負荷を覚悟した場合
でなければ使用できない状態では代替手段が存在し、少
なくともダウン発生以後もパリティ整合性の保証は確保
できる。
【0062】(3)上記整合性を復元するにあたり必要
な所要時間を必要最小限に出来る。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るファイルシステムの
ブロック図である。
【図2】データブロックおよびパリティブロックの更新
途中の状態を示すブロック図である。
【図3】データブロックおよびパリティブロックの更新
完了後の状態を示すブロック図である。
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B065 BA01 CA30 EA03 EA12 EA31 5B082 CA01

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 各ストライプがデータブロックに加えて
    パリティブロックを有する、RAIDファイルシステム
    であって、 更新後のデータブロックおよびデータブロックの更新に
    伴って更新された後のパリティブロックを、該データブ
    ロックが属するストライプ内の他のデータブロックが格
    納されている外部記憶装置とは異なりかつ相異なる外部
    記憶装置の未使用領域にそれぞれ書き込む手段と、 更新後のデータブロックおよび更新後のパリティブロッ
    クの書き込みが完了した後に、更新後のデータブロック
    および更新後のパリティブロックが書き込まれた領域を
    含んでファイルが構成されるようにメタデータを更新す
    る手段とを具備するRAIDファイルシステム。
  2. 【請求項2】 更新すべきデータブロックが属するファ
    イルに設定された属性に基いて、前記未使用領域書き込
    み手段およびメタデータ更新手段によりデータブロック
    の更新を行うか否かを決定する手段をさらに具備する請
    求項1記載のRAIDファイルシステム。
  3. 【請求項3】 各ストライプがデータブロックに加えて
    パリティブロックを有し、複数のノードからの書き込み
    が可能である、RAIDファイルシステムであって、 更新個所を特定する情報を記憶した後に更新後のデータ
    および更新後のパリティをそれぞれ更新前のデータブロ
    ックおよび更新前のパリティブロックに上書きする手段
    と、 書き込みの権限がノードから返還されるときのみ、前記
    更新個所特定情報を無効化する手段と、 システム再開時において、無効化されていない更新個所
    特定情報が存在するとき、対応するストライプについて
    パリティのチェックを行なう手段とを具備するRAID
    ファイルシステム。
  4. 【請求項4】 各ストライプがデータブロックに加えて
    パリティブロックを有し、複数のノードからの書き込み
    の競合がトークンにより制御される、RAIDファイル
    システムであって、 ダウンしたノードに発行されていたすべてのトークンを
    特定する手段と、 特定されたトークンにより更新可能なブロックのすべて
    についてパリティ整合性を復旧する手段とを具備するR
    AIDファイルシステム。
  5. 【請求項5】 請求項1〜4のいずれか1項記載のRA
    IDファイルシステムをコンピュータに実現させるプロ
    グラム。
JP2002096579A 2002-03-29 2002-03-29 Raidファイルシステム Withdrawn JP2003296047A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002096579A JP2003296047A (ja) 2002-03-29 2002-03-29 Raidファイルシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002096579A JP2003296047A (ja) 2002-03-29 2002-03-29 Raidファイルシステム

Publications (1)

Publication Number Publication Date
JP2003296047A true JP2003296047A (ja) 2003-10-17

Family

ID=29387469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002096579A Withdrawn JP2003296047A (ja) 2002-03-29 2002-03-29 Raidファイルシステム

Country Status (1)

Country Link
JP (1) JP2003296047A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100579133B1 (ko) 2004-12-06 2006-05-12 한국전자통신연구원 블록분할 디스크 어레이에서의 분산 패러티를 이용한데이터 배치 방법 및 블록분할 분산패러티 디스크어레이에서의 대형/소형 블록 읽기/쓰기 제어 방법
CN100388221C (zh) * 2004-11-19 2008-05-14 国际商业机器公司 磁盘阵列从奇偶校验更新操作中断中恢复的方法和系统
JP2009230395A (ja) * 2008-03-21 2009-10-08 Hitachi Systems & Services Ltd ジャーナルログ記録制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100388221C (zh) * 2004-11-19 2008-05-14 国际商业机器公司 磁盘阵列从奇偶校验更新操作中断中恢复的方法和系统
KR100579133B1 (ko) 2004-12-06 2006-05-12 한국전자통신연구원 블록분할 디스크 어레이에서의 분산 패러티를 이용한데이터 배치 방법 및 블록분할 분산패러티 디스크어레이에서의 대형/소형 블록 읽기/쓰기 제어 방법
JP2009230395A (ja) * 2008-03-21 2009-10-08 Hitachi Systems & Services Ltd ジャーナルログ記録制御方法

Similar Documents

Publication Publication Date Title
US8738845B2 (en) Transaction-safe fat file system improvements
US6460054B1 (en) System and method for data storage archive bit update after snapshot backup
EP1739535B1 (en) File system storing transaction records in flash-like media
US6779001B1 (en) Transactional file system for realizing atomic update of plural files by transactions
US7237076B2 (en) Method of maintaining a plurality of snapshots, server apparatus and storage apparatus
JP3662510B2 (ja) フラッシュメモリのための再写像制御方法及びこれによるフラッシュメモリの構造
US6983351B2 (en) System and method to guarantee overwrite of expired data in a virtual tape server
JP3422370B2 (ja) ディスクキャッシュ制御装置
US6678809B1 (en) Write-ahead log in directory management for concurrent I/O access for block storage
US20050071436A1 (en) System and method for detecting and sharing common blocks in an object storage system
CA2818472C (en) Optimized startup verification of file system integrity
US20050033930A1 (en) High-speed snapshot method
US6629203B1 (en) Alternating shadow directories in pairs of storage spaces for data storage
CN119248197B (zh) 一种数据处理方法、装置、设备及介质
CN118672516B (zh) 一种数据存储方法、设备、存储介质及计算机程序产品
US6636954B2 (en) Method and apparatus for inter-disk copy processing, and a computer product
JP3793868B2 (ja) フラッシュメモリ管理装置及び記録媒体
CN118069432A (zh) 分布式块存储卷快照回滚方法、装置、设备和存储介质
CN115373608A (zh) 数据存储方法及装置
JP2005284816A (ja) ディスクアレイシステム
CN120336088A (zh) 快照回滚方法、装置、电子设备及存储介质
JP2003296047A (ja) Raidファイルシステム
US10209926B2 (en) Storage system and control method therefor
JP3957464B2 (ja) データ更新装置
CN115469802A (zh) 数据存储设备

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20050607