JPH07152624A - 二重化ファイル書き込み方法 - Google Patents

二重化ファイル書き込み方法

Info

Publication number
JPH07152624A
JPH07152624A JP5299790A JP29979093A JPH07152624A JP H07152624 A JPH07152624 A JP H07152624A JP 5299790 A JP5299790 A JP 5299790A JP 29979093 A JP29979093 A JP 29979093A JP H07152624 A JPH07152624 A JP H07152624A
Authority
JP
Japan
Prior art keywords
file
files
writing
recording medium
information
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
JP5299790A
Other languages
English (en)
Inventor
Hisanori Matsuzawa
寿典 松沢
Tomoji Takehisa
友二 竹久
Junichi Kikuchi
淳一 菊池
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP5299790A priority Critical patent/JPH07152624A/ja
Publication of JPH07152624A publication Critical patent/JPH07152624A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 システムを停止せずにファイルの再配置を行
って連続した二重化したファイルを作成すること。 【構成】 二次記録媒体上に格納された全てのファイル
の書き込み状況、すなわち、ファイル毎に、そのファイ
ルが有効に格納されている二次記録媒体を指定する有効
ディスク番号(有効DK)、ファイルの格納が連続領域
にあるかを指定する情報(連続)、そのファイルが二次
記録媒体上の何番目のファイルかを示す情報(順序)、
そのファイルがアクセス完了しているものかアクセスの
途中であるかを示す情報(状態)を管理しておき、上記
ファイルの書き込み状況を参照することによって、二重
書き込みを実行する際にファイルの再配置もあわせて行
うようにしている。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、二重化ファイル書き込
み方法に関し、特に、ブロック単位の二重化制御をファ
イル単位の二重化制御に変更することによって、システ
ムを停止することなくファイルを再配置し連続したファ
イルを生成する二重化書き込み方法にに関する。
【0002】
【従来の技術】一般に、電子計算機システムは、入力装
置、主記憶装置、外部記憶装置、CPU(中央処理装
置)、出力装置からなり、入力装置または外部記憶装置
から取り入れたデータを主記憶装置に格納しておき、C
PU(中央処理装置)でそのデータを読み出して処理
し、処理結果を再び主記憶装置に格納し、必要に応じて
外部記憶装置、または、表示装置やプリンタなどの出力
装置に出力するようになっている。主記憶装置としては
高速アクセスが可能な半導体記憶装置が用いられている
が、半導体記憶装置の容量は制限されているため、それ
を補助するための外部記憶装置として大容量の磁気や光
を利用したディスク装置が用いられている。半導体記憶
装置からなる主記憶装置は電源をoffにすると記憶内容
が消えてしまう揮発性でありが、ディスク装置は電源を
offにしても記憶内容が保持される不揮発性である。
【0003】ディスク上のデータは、入出力単位である
ブロック単位でアクセスしなければならないが、ブロッ
ク単位でアクセスするためにはディスク上の物理的な位
置をいちいち指定する必要があり、非常に煩雑である。
そのため、OS(オペレーティングシステム)側でブロ
ックとファイルの対応関係を管理(以下、ファイル管理
という))しておくことによって、アプリケーションプ
ログラムから物理的な位置を示すブロックを意識せずに
仮想的なファイルという概念でデータの入出力ができる
ようしている。この事情を図1に示す。図1において、
1はアプリケーションプログラム、2はファイルA、3
はファイルB、4はディスク、5はファイル/ブロック
の対応を管理している管理域、6はファイルAが格納さ
れるブロック、7はファイルBが格納されるブロックを
表している。アプリケーションプログラム1によりファ
イルA(またはファイルB)に対して読み込みまたは書
き込みする際には、OSの管理域5を参照し、ファイル
A(またはファイルB)のディスク上の位置を示すブロ
ックポインタを取り出し、そのポインタが指し示すブロ
ック6(またはブロック7)にアクセスするようにして
いる。
【0004】ファイル管理を行っているOSでは、新規
ファイルの作成や削除があった場合には、ディスク上の
空き領域を新規ファイルとして割り当てたり、使用して
いたファイルの領域を空き領域とする処理を行い、この
状態を内部の管理情報として、ディスク上の特定な領域
に記録している。この方式では、ファイルの新規作成や
削除を繰り返すことによって、フラグメンテーションを
引き起こす可能性がある。
【0005】フラグメンテーションとは、ファイルの削
除/生成を繰り返した場合に多数の細切れな空き領域が
生じてしまい、新たなファイルを生成する場合に不連続
なファイルしか生成できない。この例を図2に示す。ま
ず、ディスク上に、ファイルA、ファイルB、ファイル
Cが連続して存在し、その後に空き領域がある状態
(1)を考える。この状態(1)からファイルBを削除
すると、ファイルBがあった領域が空き領域の状態
(2)になる。この状態(2)にファイルDを生成しよ
うとしたとき、ファイルDの大きさがファイルBの大き
さ、空き領域の大きさより大きい場合には、ファイルD
を分割してファイルBのあった領域と空き領域に分散し
て格納しなければならない。このときの状態は状態
(3)のようになり、ファイルDが不連続な領域に分散
してしまい、いわゆるフラグメンテーションが生じる。
1つのファイルが複数の領域に分散して格納されている
と、ファイルアクセス時の性能劣化を引き起こす。
【0006】これを回避するために、ファイルの再配
置、すなわち、状態(3)において、ファイルCをファ
イルAの連続した領域に移動することによって分散され
ている空き領域を一箇所にまとめる。この状態は状態
(4)のようになる。状態(4)では空き領域がファイ
ルDの大きさより大きくなるため、ファイルDを連続し
た領域に格納することができる。この状態を状態(5)
に示す。この場合、上記のようなフラグメンテーション
によるファイルアクセス時の性能の劣化を防ぐことがで
きる。
【0007】
【発明が解決しようとする課題】上記従来技術では、フ
ァイルの再配置をすることによってフラグメンテーショ
ンによるファイルアクセス時の性能の劣化は防止できる
が、再配置中(ファイルCの移動中)はそのファイルへ
のアクセスが不可能になり、システムを一旦停止しなく
てはならず、結局、フラグメンテーションによる性能劣
化とは別の性能劣化が新たに発生してしまう。また、シ
ステムを停止させずにファイルの再配置を行うために
は、予備のディスクを用意しておき、予備ディスクとの
間でコピーを行いながら再配置をする方法が考えられる
が、再配置のためだけに予備ディスクを用意するので
は、装置の有効利用が図れない。そこで、信頼性向上の
ために従来から使用されているディスクのミラー方式を
利用することが考えられる。従来のミラー方式は、ファ
イル/ブロック管理とは独立したものであり、ファイル
という概念は存在しない。この方式では、実際にブロッ
ク単位で読み込み/書き込みを行う場合には2つのディ
スクにアクセスするようになっており、2つのディスク
とも全く同じブロック配置になる。また、一方のディス
ク上のブロックが破壊された場合、他方のディスクから
コピーすることによって復旧される。このようなミラー
方式を利用して二重化を行いながら再配置を行うように
すると、一応予備ディスクの有効利用が図れる。しかし
ながら、前述のブロックとファイルの対応を管理してい
る部分と従来のミラー方式で二重化制御を行っている部
分は全く独立しているため、単純にミラー方式を利用し
て再配置を行うだけでは、システムを停止せずにファイ
ルの再配置を行うことは不可能である。本発明の目的
は、これらの問題点を解消し、システムを停止せずにフ
ァイルの再配置を行って連続した二重化したファイルを
作成することにある。
【0008】
【課題を解決するための手段】本発明は、上記目的を達
成するために、論理的な単位であるファイルと二次記録
媒体上の物理的な位置を表すブロックとの対応関係およ
びファイルの有効性を管理しておくことによってファイ
ル単位でデータの入出力を行うとともに、一方の二次記
録媒体のファイルに障害が発生した場合に他方の二次記
録媒体をもとにして障害を発生した二次記録媒体上のフ
ァイルを復旧するようにした二重化ファイル書き込み方
法において、上記二次記録媒体上に格納された全てのフ
ァイルの書き込み状況を管理しておき、上記ファイルの
書き込み状況を参照することによって、二重書き込みを
実行する際にファイルの再配置もあわせて行うようにし
ている。すなわち、従来の二重化制御方法を応用し、従
来ファイル管理とは独立して行っていたブロック単位の
二重化制御をファイル単位の二重化制御に変更し、ファ
イル管理内で行うことにより、ファイルの再配置を行
い、システムを停止せずに連続したファイルを作成する
ようにしている。
【0009】
【作用】本発明は、二次記録媒体上に格納された全ての
ファイルの書き込み状況を管理しておき、上記ファイル
の書き込み状況を参照することによって、二重書き込み
を実行する際にファイルの再配置もあわせて行うように
したため、システムを停止せずにファイルの再配置を行
って連続した二重化したファイルを作成することができ
る。
【0010】
【実施例】本発明の具体的な例を図3〜図15を用いて
説明する。図3および図4は本発明におけるファイル再
配置処理と障害時の回復処理を含む二重化ファイル書き
込み方法を説明するためのフローチャート、図5〜図1
4は図3および図4のフローチャートの各ステップにお
けるディスク上のファイル配置の状態図とディスク上の
ファイルの管理状態を保持する管理表を示す図である。
管理表は、ファイル毎に、そのファイルが存在するディ
スクはどれか(「有効DK」情報)、そのファイルの前
に空き領域がない(「連続」情報)か、そのファイルが
先頭から何番目のファイルか(「順序」情報)、そのフ
ァイルの状態は書き込み中か書き込み完了か(「状態」
情報)などの各種管理情報を格納する。管理表にファイ
ル毎の「有効DK」情報と「状態」情報を管理しておく
ことにより、処理の途中で何らかの障害が発生した場合
に1つ前の状態に戻して処理を再開することが可能にな
る。また、「連続」情報と「順序」情報を同時に管理し
ておくことにより、再配置の必要性や再配置対象になる
ファイルを判断できる。
【0011】次に、本発明の二重化ファイル書き込み方
法を、図3および図4のフローチャートに沿って詳細に
説明する。まず、図3のステップ11の状態は、ディス
ク1及びディスク2にファイルA、B、Cが連続した領
域に割り当てられており、その後に空き領域が割り当て
られている状態である(図5(a)参照)。このときの
管理表は図5(b)のようになる。図5(b)はファイ
ルA、B、Cが“両方”のディスクにあり、それらが連
続配置され、かつ書き込み完了状態であり、その順序は
ファイルAが“1”番目、ファイルBが“2”番目、フ
ァイルCが“3”番目であることを意味している。な
お、図5〜図14のディスク上のファイル配置図におけ
るファイルの状態表示の仕方は図5の凡例に示す通りで
ある。
【0012】次のステップ12の状態は、ファイルBが
削除され、ファイルAとファイルCの間に空き領域が生
じ、空き領域が2箇所に存在する状態である(図6
(a)参照)。このときの管理表は図6(b)のように
なる。すなわち、ファイルAに関する管理情報は変わら
ないが、ファイルBが削除されたため、ファイルCは不
連続な領域(「連続」情報が“×”)に変わり、順序は
“2”番目に変わる。この状態では、ファイルCの前に
空き領域があるので、ファイルDを連続して作成するた
めに、ファイルC以下の再配置を行う必要がある。すな
わち、この状態で、例えば、削除したファイルBより大
きなファイルDを新たに作成しようとすると、再配置を
行わない場合には、ファイルDをファイルBのあった領
域と空き領域に分散して不連続に作成しなくてはならな
い。本発明では上述した管理表を参照して以下のステッ
プ13〜ステップ24の処理を経てディスクの再配置を
行うことによって、最終的に、ステップ25に示したよ
うにファイルA、C、Dを連続した領域に割り当てるこ
とが可能になる。
【0013】以下、ステップ13〜ステップ25につい
て詳細に説明する。ステップ13は、ディスク上にファ
イルDを入れる連続した空き領域がないため、ディスク
1上の以前にファイルBがあった空き領域とファイルC
の領域の一部をつぶし、ファイルAに連続した領域にフ
ァイルDを作成しつつある状態(図7(a)参照)であ
り、このときの管理表は図7(b)のようになる。すな
わち、ファイルAについては変わらないが、ファイルC
については、ディスク1のファイルCはつぶされるので
「有効DK」情報が“両方”から“ディスク2”に変わ
り、またファイルDについては、まだ書き込み中である
ので「有効DK」情報は無し“×”に、「状態」情報は
書き込み中を示す“書中”に変わる。
【0014】ステップ13におけるファイルDの書き込
み中に障害が発生した場合は、まずステップ14におい
てファイルD作成中につぶされたディスク1上のファイ
ルCをディスク2から同一位置にコピーし、ステップ1
5において管理表のファイルDの行を削除し、ファイル
Cの「有効DK」情報を“両方”にした後、ステップ1
3の処理を最初からやり直す。
【0015】ステップ16はステップ13でのファイル
Dの作成が正常に完了した状態である。このときの管理
表は図8のようになる。すなわち、ファイルCの「順
序」情報が“3”に変わり、ファイルDについては、
「有効DK」情報が“ディスク1”に、「連続」情報が
“○”に、「順序」情報が“2”に、「状態」情報が
“完了”に変わる。
【0016】ステップ13の処理でディスク1上にファ
イルDを作成したことにより、二重化されているファイ
ルCのうちディスク1上のファイルはつぶれてしまった
ので、ディスク2からコピーする必要がある。ステップ
17は、ファイルCをディスク2からディスク1上のフ
ァイルDの後方にコピーしている状態である(図9
(a)参照)。このときの管理表は図9(b)に示した
ように、ファイルCの「状態」情報が“書中”に変わ
る。
【0017】ステップ17におけるファイルCのコピー
中に障害が発生した場合は、ステップ18において、管
理表のファイルCの「状態」情報を“書中”から“完
了”に戻してファイルCのコピー前の状態にした後、ス
テップ17におけるファイルCのコピー処理を最初から
やり直す。ステップ19は、ステップ17におけるファ
イルCのコピーが正常に終了した状態である。このと
き、管理表は図10のようになる。すなわち、ファイル
Cについて、「有効DK」情報が“ディスク1”に、
「連続」情報が“○”に、「状態」情報が“完了”に変
わる。
【0018】図4のステップ20は、ディスク1上の1
重化のファイルDを二重化にするためにディスク2上へ
コピーしている状態を示している。ディスク2へのコピ
ー先はファイルAの後方の領域である(図11(a)参
照)。このときの管理表は、図11(b)のようにな
る。すなわち、ファイルDについて、「状態」情報が
“完了”から“書中”に変わる。ステップ20における
ファイルDのコピー中に障害が発生した場合は、ステッ
プ21において、管理表のファイルDの「状態」情報を
“書中”から“完了”に戻してファイルDのコピー前の
状態にした後、ステップ20におけるファイルDのコピ
ー処理を最初からやり直す。
【0019】ステップ22はステップ20におけるファ
イルDのコピーが正常に終了した状態である。このとき
の管理表は図12のようになる。すなわち、ファイルD
について、「有効DK」情報が“ディスク1”から“両
方”に、「状態」情報が“書中”から“完了”に変わ
る。
【0020】ファイルDの2重化時につぶされてしまっ
たファイルCを再度二重化するために、ファイルCをデ
ィスク1からディスク2へコピーする必要がある。ステ
ップ23は、ファイルCをディスク1からディスク2の
ファイルDの後方へコピーしている状態である(図13
(a)参照)。このときの管理表は図13(b)のよう
になる。すなわち、ファイルCについて、「状態」情報
が“完了”から“書中”に変わる。
【0021】ステップ23におけるファイルCのコピー
中に障害が発生した場合は、ステップ24において、管
理表のファイルCの「状態」情報を“書中”から“完
了”に戻し、ファイルCのコピー前の状態にした後、ス
テップ23におけるファイルCのコピー処理を最初から
やり直す。ステップ25は、ステップ23におけるファ
イルCのコピーが正常に終了した状態である。このとき
のディスク上のファイル配置は、ファイルA、ファイル
D、ファイルCがディスク1及び2上に連続的に、全て
が二重化されて配置される(図14(a)参照)。この
ときの管理表は図14(b)のようになる。すなわち、
ファイルCについて、「有効DK」情報が“ディスク
1”から“両方”に、「状態」情報が“書中”から“完
了”に変わる。本発明によると、管理表の「有効DK」
情報により該当ファイルのどちらのディスクにアクセス
すべきかがわかるので、たとえ、再配置中であってもア
プリケーションプログラムからのアクセスが可能にな
る。したがって、本発明では、システムを停止させず
に、連続した二重化したファイルを作成することができ
る。
【0022】
【発明の効果】本発明は、ファイルの二重化制御を応用
してファイルを管理することによって、システムを停止
することなく、連続ファイルのための再配置が行えるの
で、ファイルへのアクセス性能の低下を大幅に抑えるこ
とができる。
【図面の簡単な説明】
【図1】アプリケーションプログラムからディスク上の
ファイルをアクセスする場合の模式図である。
【図2】フラグメンテーションとその回避策を説明する
ための図である。
【図3】本発明の二重化ファイル書き込み方法を説明す
るためのフローチャートである(その1)。
【図4】本発明の二重化ファイル書き込み方法を説明す
るためのフローチャートである(その2)。
【図5】図3のステップ11におけるディスクの状態を
表す図および図5〜図14中のファイルの表記法を表す
図である。
【図6】図3のステップ12におけるディスクの状態を
表す図である。
【図7】図3のステップ13におけるディスクの状態を
表す図である。
【図8】図3のステップ16におけるディスクの状態を
表す図である。
【図9】図3のステップ17におけるディスクの状態を
表す図である。
【図10】図3のステップ19におけるディスクの状態
を表す図である。
【図11】図4のステップ20におけるディスクの状態
を表す図である。
【図12】図4のステップ22におけるディスクの状態
を表す図である。
【図13】図4のステップ23におけるディスクの状態
を表す図である。
【図14】図4のステップ25におけるディスクの状態
を表す図である。
【符号の説明】
1 アプリケーションプログラム 2 ファイルA 3 ファイルB 4 ディスク 5 管理域 6、7 ブロック

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 論理的な単位であるファイルと二次記録
    媒体上の物理的な位置を表すブロックとの対応関係およ
    びファイルの有効性を管理しておくことによってファイ
    ル単位でデータの入出力を行うとともに、一方の二次記
    録媒体のファイルに障害が発生した場合に他方の二次記
    録媒体をもとにして障害を発生した二次記録媒体上のフ
    ァイルを復旧するようにした二重化ファイル書き込み方
    法において、 上記二次記録媒体上に格納された全てのファイルの書き
    込み状況を管理しておき、上記ファイルの書き込み状況
    を参照することによって、二重書き込みを実行する際に
    ファイルの再配置もあわせて行うようにしたことを特徴
    とする二重化ファイル書き込み方法。
  2. 【請求項2】 請求項1記載の二重化ファイル書き込み
    方法において、上記ファイルの書き込み状況は、ファイ
    ルが有効に格納されている二次記録媒体を指定する有効
    記録媒体番号、ファイルの格納が連続領域にあるかを指
    定する情報、そのファイルが二次記録媒体上の何番目の
    ファイルかを示す情報、そのファイルがアクセス完了し
    ているものかアクセスの途中であるかを示す情報からな
    っていることを特徴とする二重化ファイル書き込み方
    法。
JP5299790A 1993-11-30 1993-11-30 二重化ファイル書き込み方法 Pending JPH07152624A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5299790A JPH07152624A (ja) 1993-11-30 1993-11-30 二重化ファイル書き込み方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5299790A JPH07152624A (ja) 1993-11-30 1993-11-30 二重化ファイル書き込み方法

Publications (1)

Publication Number Publication Date
JPH07152624A true JPH07152624A (ja) 1995-06-16

Family

ID=17876977

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5299790A Pending JPH07152624A (ja) 1993-11-30 1993-11-30 二重化ファイル書き込み方法

Country Status (1)

Country Link
JP (1) JPH07152624A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000293317A (ja) * 1996-04-08 2000-10-20 Hitachi Ltd 記憶制御装置
JP2003271425A (ja) * 2003-04-01 2003-09-26 Hitachi Ltd 記憶制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000293317A (ja) * 1996-04-08 2000-10-20 Hitachi Ltd 記憶制御装置
JP2003271425A (ja) * 2003-04-01 2003-09-26 Hitachi Ltd 記憶制御装置

Similar Documents

Publication Publication Date Title
JP3249868B2 (ja) アレイ形式の記憶装置システム
US7720928B2 (en) Centralized fine-grained enhancements for distributed table driven I/O mapping
JP3505093B2 (ja) ファイル管理システム
JP3316500B2 (ja) 移動されたデータの完全性を維持しながらraidセットにおけるドライブ数の拡張
US7089385B1 (en) Tracking in-progress writes through use of multi-column bitmaps
US8108597B2 (en) Storage control method and system for performing backup and/or restoration
US20030236944A1 (en) System and method for reorganizing data in a raid storage system
US7743227B1 (en) Volume restoration using an accumulator map
US20060155944A1 (en) System and method for data migration and shredding
US7330947B2 (en) Method and apparatus for backing up data in virtual storage medium
JP2002259062A (ja) 記憶装置システム及び記憶装置システムにおけるデータの複写方法
JP2014137711A (ja) ストレージ装置、バックアッププログラム、およびバックアップ方法
JP3246146B2 (ja) 外部記憶装置のデータ移行方法
JP2691087B2 (ja) データ・ファイルについてのディレクトリ・システム、装置および方法
US6629203B1 (en) Alternating shadow directories in pairs of storage spaces for data storage
US7165160B2 (en) Computing system with memory mirroring and snapshot reliability
JP2804974B2 (ja) 光磁気ディスクのデータ整合性を維持する方法および装置
US7313724B1 (en) Method and apparatus for synchronizing redundant data with a volume
JP4394467B2 (ja) ストレージシステム、サーバ装置及び先行コピーデータ生成方法
JP3687111B2 (ja) 記憶装置システムおよび記憶装置の制御方法
JPH07152624A (ja) 二重化ファイル書き込み方法
JP3067558B2 (ja) ディスクアレイ装置の拡張構成方法およびディスクアレイ装置
JP3008801B2 (ja) 記憶装置システムおよびディスクアレイ制御装置
JP2004013786A (ja) データ記憶方法およびデータ記憶制御装置
JP3614886B2 (ja) ファイルシステム