JPH0764870A - デジタル情報のデータ・ブロックを記憶する方法及びそのためのディスク記憶装置 - Google Patents
デジタル情報のデータ・ブロックを記憶する方法及びそのためのディスク記憶装置Info
- Publication number
- JPH0764870A JPH0764870A JP5219992A JP21999293A JPH0764870A JP H0764870 A JPH0764870 A JP H0764870A JP 5219992 A JP5219992 A JP 5219992A JP 21999293 A JP21999293 A JP 21999293A JP H0764870 A JPH0764870 A JP H0764870A
- Authority
- JP
- Japan
- Prior art keywords
- disk
- mode
- pair
- disks
- controller
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2082—Data synchronisation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/002—Programmed access in sequence to a plurality of record carriers or indexed parts, e.g. tracks, thereof, e.g. for editing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/74—Masking faults in memories by using spares or by reconfiguring using duplex memories, i.e. using dual copies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/40—Combinations of multiple record carriers
- G11B2220/41—Flat as opposed to hierarchical combination, e.g. library of tapes or discs, CD changer, or groups of record carriers that together store one title
- G11B2220/415—Redundant array of inexpensive disks [RAID] systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99955—Archiving or backup
Abstract
(57)【要約】
【目的】 ランダム・ディスク読取りに対して高いスル
ープットを提供するとともにディスク読取りに対して高
い性能を保証する改善されたディスク書込み手法を有す
るフォールト・トレラント高性能2重化ディスク・サブ
システムを記載する。 【構成】 本発明はディスクに対する更新(すなわち、
書き込まれるブロック)が蓄積され、更新の連続したバ
ッチ・ランにスケジュールされ、2重化ディスクへ効率
的に書き込むことのできる配列を作成するために、スケ
ジューリングが行われる2重化ディスク・タイプのフォ
ールト・トレラント・ディスク記憶サブシステムを提供
する。更新がディスク制御装置のメモリに蓄積されるこ
とが好ましいが、必ずしも必要というものではなく、ま
たスケジューリングが2重化ディスク用のディスク制御
装置によって行われることが好ましいが、必ずしも必要
というものではない。メモリが不揮発性であるか、フォ
ールト・トレラントであることが好ましい。
ープットを提供するとともにディスク読取りに対して高
い性能を保証する改善されたディスク書込み手法を有す
るフォールト・トレラント高性能2重化ディスク・サブ
システムを記載する。 【構成】 本発明はディスクに対する更新(すなわち、
書き込まれるブロック)が蓄積され、更新の連続したバ
ッチ・ランにスケジュールされ、2重化ディスクへ効率
的に書き込むことのできる配列を作成するために、スケ
ジューリングが行われる2重化ディスク・タイプのフォ
ールト・トレラント・ディスク記憶サブシステムを提供
する。更新がディスク制御装置のメモリに蓄積されるこ
とが好ましいが、必ずしも必要というものではなく、ま
たスケジューリングが2重化ディスク用のディスク制御
装置によって行われることが好ましいが、必ずしも必要
というものではない。メモリが不揮発性であるか、フォ
ールト・トレラントであることが好ましい。
Description
【0001】
【産業上の利用分野】本発明は総括的にフォールト・ト
レラント・デジタル記憶ディスク・システムに関し、詳
細にいえば、2つの別々な記憶ディスクに重複してデジ
タル情報を記憶することによって信頼性がもたらされる
2重化ディスク・タイプのデジタル記憶ディスク・シス
テムに関する。
レラント・デジタル記憶ディスク・システムに関し、詳
細にいえば、2つの別々な記憶ディスクに重複してデジ
タル情報を記憶することによって信頼性がもたらされる
2重化ディスク・タイプのデジタル記憶ディスク・シス
テムに関する。
【0002】
【従来の技術】オンライン・データベース・トランザク
ション処理(OLTP)の必要性が高まるにつれて、毎
秒数千トランザクション程度の高いトランザクション速
度を、OLTPシステムによってサポートする必要がで
てきた。さらに、これらの適用業務には高い可用性及び
フォールト・トレランス性が必要である。OLTPなど
の適用業務においては、多くの要求がデータにランダム
にアクセスする。多くのデータがディスク上に置かれて
いるため、ディスク・サブシステムには毎秒数千回のラ
ンダム・アクセス程度の高いランダム・アクセス速度が
必要である。ディスクはOLTPに必要な可用性を満た
すためのフォールト・トレランス性(耐障害性)を必要
とする。
ション処理(OLTP)の必要性が高まるにつれて、毎
秒数千トランザクション程度の高いトランザクション速
度を、OLTPシステムによってサポートする必要がで
てきた。さらに、これらの適用業務には高い可用性及び
フォールト・トレランス性が必要である。OLTPなど
の適用業務においては、多くの要求がデータにランダム
にアクセスする。多くのデータがディスク上に置かれて
いるため、ディスク・サブシステムには毎秒数千回のラ
ンダム・アクセス程度の高いランダム・アクセス速度が
必要である。ディスクはOLTPに必要な可用性を満た
すためのフォールト・トレランス性(耐障害性)を必要
とする。
【0003】ディスクに対してランダム・アクセスを行
う場合、一般に、ディスクは新しい方向へ回転し、希望
するデータがディスク・アームの下にあるようにしなけ
ればならず、またこのデータ・アーム上の読み書きヘッ
ドも希望するデータが読み書きヘッドの下にくる新しい
半径方向位置へアームに沿って移動しなければならな
い。残念ながら、この物理的操作の性能、したがってラ
ンダム・ディスク入出力(I/O)性能はCPUのMI
PSなどの他のシステム・パラメータほど迅速には改善
されない。したがって、データへのランダム・アクセス
が顕著なものであるOLTPなどの適用業務は、この要
因によって限定され、これは当分野ではディスク・アー
ムの拘束といわれる。ディスク・アームが拘束されるシ
ステムにおいて、ディスクのコストはシステム・コスト
のますます大きな部分を占めるものとなる。それ故、従
来のディスク・システムがもたらすものよりも優れた性
能対価格比によって、高いランダム・アクセス速度(秒
速)をサポートできるサブシステムが必要である。
う場合、一般に、ディスクは新しい方向へ回転し、希望
するデータがディスク・アームの下にあるようにしなけ
ればならず、またこのデータ・アーム上の読み書きヘッ
ドも希望するデータが読み書きヘッドの下にくる新しい
半径方向位置へアームに沿って移動しなければならな
い。残念ながら、この物理的操作の性能、したがってラ
ンダム・ディスク入出力(I/O)性能はCPUのMI
PSなどの他のシステム・パラメータほど迅速には改善
されない。したがって、データへのランダム・アクセス
が顕著なものであるOLTPなどの適用業務は、この要
因によって限定され、これは当分野ではディスク・アー
ムの拘束といわれる。ディスク・アームが拘束されるシ
ステムにおいて、ディスクのコストはシステム・コスト
のますます大きな部分を占めるものとなる。それ故、従
来のディスク・システムがもたらすものよりも優れた性
能対価格比によって、高いランダム・アクセス速度(秒
速)をサポートできるサブシステムが必要である。
【0004】2重化ディスク・システム及びRAIDデ
ィスク・システム(独立したディスクの冗長アレイ)の
両方が、OLTP用のフォールト・トレラント・ディス
ク・システムを設けるために使用されている。2重化デ
ィスク・システムにおいて、各ディスクの情報は第2の
ディスク(したがって、冗長ディスク)に複写される。
RAIDアレイにおいては、何枚かのディスクの対応す
るブロック位置における情報を使用して、他のディスク
にパリティ・ブロックを作成する。障害が発生した場
合、RAIDアレイの任意のディスクをアレイ内の他の
ディスクから再構成することができる。指定された記憶
容量に対してRAIDアーキテクチャで必要とされるデ
ィスクの枚数は少なくなるが、2重化システムの方が一
般に性能が優れている。「An evaluation of redundant
arrays of disks using an Amdahl5890」、SIGMETRICS
Conference on Measurement and Modeling of Compute
r Systems、pp. 74-85、Boulder、Colorado、1990
年5月、P. Chen他という論文には、ランダム書込みが
主体のワークロードに関して、2重化ディスクの方がR
AID−5ディスク・アレイよりも優れていることが示
されている(すなわち、ランダム読み書きが主な場合、
2重化ディスク・アーキテクチャに対する平均読み書き
時間はRAID−5アーキテクチャに対するものよりも
短くなる)。RAID−5アーキテクチャについては、
たとえば、D. Patterson他が「A case for redundant a
rrays of inexpensive disks」、ACM SIGMOD Int'l Con
f. on Management of Data、pp. 109 - 116、Chicago、
Il, (1988年6月)に記載している。しかしなが
ら、2重化ディスクでは、各ディスク書込みを2重化対
の両方のディスクに書き込む必要がある。それ故、フォ
ールト・トレランス性をもたらすために、2重化ディス
ク記憶システムが性能面でのペナルティを課するもので
あることが一般に受け入れられている。
ィスク・システム(独立したディスクの冗長アレイ)の
両方が、OLTP用のフォールト・トレラント・ディス
ク・システムを設けるために使用されている。2重化デ
ィスク・システムにおいて、各ディスクの情報は第2の
ディスク(したがって、冗長ディスク)に複写される。
RAIDアレイにおいては、何枚かのディスクの対応す
るブロック位置における情報を使用して、他のディスク
にパリティ・ブロックを作成する。障害が発生した場
合、RAIDアレイの任意のディスクをアレイ内の他の
ディスクから再構成することができる。指定された記憶
容量に対してRAIDアーキテクチャで必要とされるデ
ィスクの枚数は少なくなるが、2重化システムの方が一
般に性能が優れている。「An evaluation of redundant
arrays of disks using an Amdahl5890」、SIGMETRICS
Conference on Measurement and Modeling of Compute
r Systems、pp. 74-85、Boulder、Colorado、1990
年5月、P. Chen他という論文には、ランダム書込みが
主体のワークロードに関して、2重化ディスクの方がR
AID−5ディスク・アレイよりも優れていることが示
されている(すなわち、ランダム読み書きが主な場合、
2重化ディスク・アーキテクチャに対する平均読み書き
時間はRAID−5アーキテクチャに対するものよりも
短くなる)。RAID−5アーキテクチャについては、
たとえば、D. Patterson他が「A case for redundant a
rrays of inexpensive disks」、ACM SIGMOD Int'l Con
f. on Management of Data、pp. 109 - 116、Chicago、
Il, (1988年6月)に記載している。しかしなが
ら、2重化ディスクでは、各ディスク書込みを2重化対
の両方のディスクに書き込む必要がある。それ故、フォ
ールト・トレランス性をもたらすために、2重化ディス
ク記憶システムが性能面でのペナルティを課するもので
あることが一般に受け入れられている。
【0005】1993年3月24日に出願された「Disk
Storage Method and Apparatus For Converting Rando
m Writes To Sequentail Writes While Retaining Phys
icalClustering On Disk」という名称の米国特許願第8
−036636号において、本発明の発明者のうち何人
かは単一のディスクまたはRAIDアレイの性能を改善
する方法を開示している。これはメモリ内にディスク書
込みの分類済みランを構築し、これらをログ・ディスク
に書き込み、ログ・ディスクからの分類済みランを組み
合わせ、これらを大きなディスク書込みのあるデータ・
ディスクを通る1つのパスに適用することによって行わ
れる。この方法はランダム書込みを順次書込みに大規模
に変換するという利点を有している。しかしながら、こ
の手法の問題の1つは、ランダム・ディスク読取りがバ
ッチ書込みに割り込んだ場合、バッチが書き込まれる間
ディスク書込み要求が遅延し、ディスク読取り応答時間
にペナルティが生じるか、あるいはバッチ書込みが読取
りによって割込みを受け、書込みのスループット(した
がって、全体的なスループット)に大きな損失が生じる
かのいずれかとなることである。いずれにせよ、全体的
な性能が損なわれ、バッチ書込み操作中にランダム・デ
ィスク書込みが頻繁に必要となった場合に、分類済みの
ランを作成する利点が大幅に相殺されるということであ
る。
Storage Method and Apparatus For Converting Rando
m Writes To Sequentail Writes While Retaining Phys
icalClustering On Disk」という名称の米国特許願第8
−036636号において、本発明の発明者のうち何人
かは単一のディスクまたはRAIDアレイの性能を改善
する方法を開示している。これはメモリ内にディスク書
込みの分類済みランを構築し、これらをログ・ディスク
に書き込み、ログ・ディスクからの分類済みランを組み
合わせ、これらを大きなディスク書込みのあるデータ・
ディスクを通る1つのパスに適用することによって行わ
れる。この方法はランダム書込みを順次書込みに大規模
に変換するという利点を有している。しかしながら、こ
の手法の問題の1つは、ランダム・ディスク読取りがバ
ッチ書込みに割り込んだ場合、バッチが書き込まれる間
ディスク書込み要求が遅延し、ディスク読取り応答時間
にペナルティが生じるか、あるいはバッチ書込みが読取
りによって割込みを受け、書込みのスループット(した
がって、全体的なスループット)に大きな損失が生じる
かのいずれかとなることである。いずれにせよ、全体的
な性能が損なわれ、バッチ書込み操作中にランダム・デ
ィスク書込みが頻繁に必要となった場合に、分類済みの
ランを作成する利点が大幅に相殺されるということであ
る。
【0006】2重化ディスク・システムにおける復元の
ための従来の方法は2重化対の存続しているディスクか
ら、スペアのバックアップ・ディスクに複写するもので
ある。これは通常、存続しているディスクのデータを走
査し、このプロセス中に生じる書込みを両方のディスク
に適用することによって行われる。この手法の問題の1
つは復元中にディスク・システムの性能が大幅に低下す
ることである。
ための従来の方法は2重化対の存続しているディスクか
ら、スペアのバックアップ・ディスクに複写するもので
ある。これは通常、存続しているディスクのデータを走
査し、このプロセス中に生じる書込みを両方のディスク
に適用することによって行われる。この手法の問題の1
つは復元中にディスク・システムの性能が大幅に低下す
ることである。
【0007】
【発明が解決しようとする課題】したがって、本発明の
目的は2重化対のディスクの両方のディスクに各ディス
ク書込みを重複することの必要性によって通常生じるペ
ナルティを大幅に少なくすることによって2重化ディス
ク・システムの性能を改善することである。
目的は2重化対のディスクの両方のディスクに各ディス
ク書込みを重複することの必要性によって通常生じるペ
ナルティを大幅に少なくすることによって2重化ディス
ク・システムの性能を改善することである。
【0008】また、本発明の目的はランダム・ディスク
書込み入出力を変換して、順次入出力に近づけることに
よって、ランダム・ディスク入出力の性能が改善された
2重化ディスク・サブシステムを提供することである。
書込み入出力を変換して、順次入出力に近づけることに
よって、ランダム・ディスク入出力の性能が改善された
2重化ディスク・サブシステムを提供することである。
【0009】さらに他の目的は読取り応答時間を損なう
ことなく2重化ディスクのスループットを改善すること
である。
ことなく2重化ディスクのスループットを改善すること
である。
【0010】さらにまた他の目的は高速な復元を維持し
ながら、復元中のディスクの読取り及び書込みに対して
保証された性能を提供することによって、障害を生じた
ディスクからの復元プロセス中の性能を改善することで
ある。
ながら、復元中のディスクの読取り及び書込みに対して
保証された性能を提供することによって、障害を生じた
ディスクからの復元プロセス中の性能を改善することで
ある。
【0011】
【課題を解決するための手段】これらの目的ならびにそ
の他の目的及び利点は、ディスクに対する更新(すなわ
ち、書き込まれるブロック)が蓄積され、更新の連続し
たバッチ・ランにスケジュールされ、2重化ディスクへ
効率的に書き込むことのできる配列を作成するために、
スケジューリングが行われる2重化ディスク・タイプの
フォールト・トレラント・ディスク記憶サブシステムを
設けることによって、本発明によって達成される。更新
がディスク制御装置のメモリに蓄積されることが好まし
いが、必ずしも必要というものではなく、またスケジュ
ーリングが2重化ディスク用のディスク制御装置によっ
て行われることが好ましいが、必ずしも必要というもの
ではない。メモリが不揮発性であるか、フォールト・ト
レラントであることが好ましい。
の他の目的及び利点は、ディスクに対する更新(すなわ
ち、書き込まれるブロック)が蓄積され、更新の連続し
たバッチ・ランにスケジュールされ、2重化ディスクへ
効率的に書き込むことのできる配列を作成するために、
スケジューリングが行われる2重化ディスク・タイプの
フォールト・トレラント・ディスク記憶サブシステムを
設けることによって、本発明によって達成される。更新
がディスク制御装置のメモリに蓄積されることが好まし
いが、必ずしも必要というものではなく、またスケジュ
ーリングが2重化ディスク用のディスク制御装置によっ
て行われることが好ましいが、必ずしも必要というもの
ではない。メモリが不揮発性であるか、フォールト・ト
レラントであることが好ましい。
【0012】好ましい実施例において、スケジューリン
グは2重化ディスク上の更新のホーム・ロケーションに
したがって(すなわち、更新が書き込まれるディスク上
の位置にしたがって)更新を分類することによって行わ
れる。これはディスクの走査に対応した配列である。
グは2重化ディスク上の更新のホーム・ロケーションに
したがって(すなわち、更新が書き込まれるディスク上
の位置にしたがって)更新を分類することによって行わ
れる。これはディスクの走査に対応した配列である。
【0013】この場合、各2重化対のディスクは、一方
が読取りモード、他方が書込みモードになるように位相
をずらせて作動する。書込みバッチはそれぞれの場合
に、スケジュールされた順序にしたがって書込みモード
のディスクに効率よくて起用される。更新がディスク上
の物理的な順序にしたがって2重化対の各ディスクに複
写されるため、書込みの適用に良好な性能が達成され
る。
が読取りモード、他方が書込みモードになるように位相
をずらせて作動する。書込みバッチはそれぞれの場合
に、スケジュールされた順序にしたがって書込みモード
のディスクに効率よくて起用される。更新がディスク上
の物理的な順序にしたがって2重化対の各ディスクに複
写されるため、書込みの適用に良好な性能が達成され
る。
【0014】したがって、ランダム書込みは大部分がデ
ィスクへの順次書込みに変換され、ディスク上のデータ
のクラスタは保存される。この方法を使用してブロック
の書込みを適用する平均時間は通常、ブロックのランダ
ム書込みをディスクに適用する時間の半分未満であり、
したがって、2重化ディスクの対へブロックを2回書き
込む問題が大幅に解消される。
ィスクへの順次書込みに変換され、ディスク上のデータ
のクラスタは保存される。この方法を使用してブロック
の書込みを適用する平均時間は通常、ブロックのランダ
ム書込みをディスクに適用する時間の半分未満であり、
したがって、2重化ディスクの対へブロックを2回書き
込む問題が大幅に解消される。
【0015】このとき、読取り要求はデータをメモリ、
あるいは読取りモードのディスクのいずれかから読み取
ることによって処理される。
あるいは読取りモードのディスクのいずれかから読み取
ることによって処理される。
【0016】それ故、読取り要求に対する保証された性
能も達成される。更新のバッチを2重化対のディスクの
一方に(すなわち、書込みモードのものへ)適用する場
合、ディスクは作動モードを切り換える。これら2つの
作動モードの間で、ディスクが両方とも読取りモードに
なる期間がある。また、たとえば、ロードやその他の大
規模な複写操作の間などに、2重化対の両方のディスク
が書込みモードになる場合もある。
能も達成される。更新のバッチを2重化対のディスクの
一方に(すなわち、書込みモードのものへ)適用する場
合、ディスクは作動モードを切り換える。これら2つの
作動モードの間で、ディスクが両方とも読取りモードに
なる期間がある。また、たとえば、ロードやその他の大
規模な複写操作の間などに、2重化対の両方のディスク
が書込みモードになる場合もある。
【0017】2重化対のディスクの一方のディスクの障
害からの回復は、交互2重化手法を使用して作動するス
ペアの2重化ディスクの対を導入することによって処理
される。回復時に、新しい書込みがスペアのディスク対
に送られる。読取りは存続しているディスク、または交
互ミラー・スペア・ディスク対のいずれかによって処理
される。背景では、スペア・サイクルを使用して、デー
タを走査し、存続しているディスクからスペアの交互2
重化対へ複写する。この方法は回復中の読取り及び書込
みの両方に対して性能が保証された高速な回復をもたら
す。
害からの回復は、交互2重化手法を使用して作動するス
ペアの2重化ディスクの対を導入することによって処理
される。回復時に、新しい書込みがスペアのディスク対
に送られる。読取りは存続しているディスク、または交
互ミラー・スペア・ディスク対のいずれかによって処理
される。背景では、スペア・サイクルを使用して、デー
タを走査し、存続しているディスクからスペアの交互2
重化対へ複写する。この方法は回復中の読取り及び書込
みの両方に対して性能が保証された高速な回復をもたら
す。
【0018】
【実施例】図1は効率よく書込みを行うため分類された
蓄積更新によってバッチ方式で交互に更新される2重化
記憶ディスクを有する本発明によるディスク記憶サブシ
ステム[Alternating Mirrors with Deferred Updates
(AMD、据置更新による交互ミラー)と以下で呼ぶこ
とがある]を組み込んだコンピュータシステムの好まし
い実施例のブロック図である。これは制御装置ないし入
出力プロセッサ(IOP)200、複数個の2重化ディ
スク対300−1ないし300−N、少なくとも一対の
スペア・ディスク400、及び中央演算処理装置(CP
U)100を含んでいる。制御装置200はCPU10
0に接続されており、プロセッサ210及び不揮発性メ
モリ220を有している。説明を簡単にするため、不揮
発性メモリの各々が2重化対に対応している領域220
−1ないし220−Nに分割されているものと想定す
る。
蓄積更新によってバッチ方式で交互に更新される2重化
記憶ディスクを有する本発明によるディスク記憶サブシ
ステム[Alternating Mirrors with Deferred Updates
(AMD、据置更新による交互ミラー)と以下で呼ぶこ
とがある]を組み込んだコンピュータシステムの好まし
い実施例のブロック図である。これは制御装置ないし入
出力プロセッサ(IOP)200、複数個の2重化ディ
スク対300−1ないし300−N、少なくとも一対の
スペア・ディスク400、及び中央演算処理装置(CP
U)100を含んでいる。制御装置200はCPU10
0に接続されており、プロセッサ210及び不揮発性メ
モリ220を有している。説明を簡単にするため、不揮
発性メモリの各々が2重化対に対応している領域220
−1ないし220−Nに分割されているものと想定す
る。
【0019】当分野の技術者には、メモリ及び制御装置
を図示のように個別の物理的サブシステムに構成する必
要がなく、メイン・コンピュータ・システムで作動する
ソフトウェアによって実現できることが容易に理解でき
よう。また、本発明の有益な利点を達成するためには、
メモリが不揮発性である必要はなく、また多くの環境に
おいて、フォールト・トレラントであってもよい(たと
えば、3重冗長及びボーティング機構を使用することに
よって)。メモリを分割する必要もなく、2つ以上のデ
ィスクのスペア対があってもよい。ディスクのスペア対
は正常作動時に使用する必要はないが、2重化ディスク
の一方が故障した場合に使用される。
を図示のように個別の物理的サブシステムに構成する必
要がなく、メイン・コンピュータ・システムで作動する
ソフトウェアによって実現できることが容易に理解でき
よう。また、本発明の有益な利点を達成するためには、
メモリが不揮発性である必要はなく、また多くの環境に
おいて、フォールト・トレラントであってもよい(たと
えば、3重冗長及びボーティング機構を使用することに
よって)。メモリを分割する必要もなく、2つ以上のデ
ィスクのスペア対があってもよい。ディスクのスペア対
は正常作動時に使用する必要はないが、2重化ディスク
の一方が故障した場合に使用される。
【0020】各2重化ディスク対はディスク対300−
1に対する300−a1及び300−b1という2つの
ディスク(したがって、ディスク対300−Nに対して
は300−aNと300−bN)からなっている。各2
重化対の2つのディスクは基本的に同一のデータを収納
している。しかしながら、以下の説明から理解されるよ
うに、各2重対のディスクに対する更新は、従来の2重
化ディスクの場合のように、同時に行われるものではな
い。その代わりに、本発明によれば、更新は不揮発性メ
モリ220に蓄積され、更新のバッチに記憶され、これ
が対となった2つのディスクに同時にではなく、まず一
方に、その後他方へ適用される。さらに、同一の更新は
最終的には対となった2つのディスクの各々に適用され
るのであるが(両方のディスクに適用される前に、不揮
発性メモリ220内でさらに更新されたために古いもの
となってしまった更新は除く)、各ディスクに独立して
行われる更新のバッチは一般に、これらが別な時間に適
用され、データの新しいブロックが対の各ディスクの独
立したバッチに含まれているので、同一のものではな
い。
1に対する300−a1及び300−b1という2つの
ディスク(したがって、ディスク対300−Nに対して
は300−aNと300−bN)からなっている。各2
重化対の2つのディスクは基本的に同一のデータを収納
している。しかしながら、以下の説明から理解されるよ
うに、各2重対のディスクに対する更新は、従来の2重
化ディスクの場合のように、同時に行われるものではな
い。その代わりに、本発明によれば、更新は不揮発性メ
モリ220に蓄積され、更新のバッチに記憶され、これ
が対となった2つのディスクに同時にではなく、まず一
方に、その後他方へ適用される。さらに、同一の更新は
最終的には対となった2つのディスクの各々に適用され
るのであるが(両方のディスクに適用される前に、不揮
発性メモリ220内でさらに更新されたために古いもの
となってしまった更新は除く)、各ディスクに独立して
行われる更新のバッチは一般に、これらが別な時間に適
用され、データの新しいブロックが対の各ディスクの独
立したバッチに含まれているので、同一のものではな
い。
【0021】図2は不揮発性メモリ220−iの領域の
1つを詳細に示す。この領域には221−1ないし22
1−kという多数のデータ・ブロックがある。各データ
・ブロックには、222−1及び223−1(ブロック
221−1に対する)ないし222−k及び223−k
(221−kに対する)という2つのタグが対応してい
る。各データ・ブロックに対する2つのタグは2重化対
の2つのディスクに対応しており、かつ対応するディス
クがまだデータ・ブロックの書込みを行わなければなら
ないのかどうかを示す。
1つを詳細に示す。この領域には221−1ないし22
1−kという多数のデータ・ブロックがある。各データ
・ブロックには、222−1及び223−1(ブロック
221−1に対する)ないし222−k及び223−k
(221−kに対する)という2つのタグが対応してい
る。各データ・ブロックに対する2つのタグは2重化対
の2つのディスクに対応しており、かつ対応するディス
クがまだデータ・ブロックの書込みを行わなければなら
ないのかどうかを示す。
【0022】不揮発性メモリの各領域には、225−1
ないし225−Lというポインタのリストもある。各ポ
インタは不揮発性メモリのいくつかの領域のデータ・ブ
ロックをポイントする。リスト内のポインタの順序は、
効率上げるためブロックをディスクに書き込む順序を示
す。
ないし225−Lというポインタのリストもある。各ポ
インタは不揮発性メモリのいくつかの領域のデータ・ブ
ロックをポイントする。リスト内のポインタの順序は、
効率上げるためブロックをディスクに書き込む順序を示
す。
【0023】不揮発性メモリはディスクに書き込まれる
データ・ブロックに対するキャッシュとして働く。当分
野の技術者には、このキャッシュが他のキャッシュと同
じように、ハッシュ・テーブル(現在、どのブロックが
キャッシュ内にあるかを判断するための)及びフリー・
リスト(フリー・ブロックを連鎖するための)を使用す
るなどして管理される。ハッシュ・テーブル及びフリー
・リストは図2には示されていない。
データ・ブロックに対するキャッシュとして働く。当分
野の技術者には、このキャッシュが他のキャッシュと同
じように、ハッシュ・テーブル(現在、どのブロックが
キャッシュ内にあるかを判断するための)及びフリー・
リスト(フリー・ブロックを連鎖するための)を使用す
るなどして管理される。ハッシュ・テーブル及びフリー
・リストは図2には示されていない。
【0024】本発明による好ましい実施例には、正規の
作動時に発生する4つのプロセスがある。第1のプロセ
スは書込み要求を取り扱うものであり、図3に示されて
いる。書込み要求が到着すると(ブロック510)、制
御装置の不揮発性メモリがそのブロックの古いバージョ
ンが存在しているかどうかについて検査される(図3の
ブロック520)。そのブロックの以前のバージョンが
ディスクの対応する対に対する不揮発性メモリにすでに
存在している場合には、以前のバージョンは上書きされ
(ブロック530)、このブロックに対応する両方のタ
グがオンにされ(ブロック560)、両方のディスクが
そのブロックの新しいバージョンをインストールしなけ
ればならないことを示す。
作動時に発生する4つのプロセスがある。第1のプロセ
スは書込み要求を取り扱うものであり、図3に示されて
いる。書込み要求が到着すると(ブロック510)、制
御装置の不揮発性メモリがそのブロックの古いバージョ
ンが存在しているかどうかについて検査される(図3の
ブロック520)。そのブロックの以前のバージョンが
ディスクの対応する対に対する不揮発性メモリにすでに
存在している場合には、以前のバージョンは上書きされ
(ブロック530)、このブロックに対応する両方のタ
グがオンにされ(ブロック560)、両方のディスクが
そのブロックの新しいバージョンをインストールしなけ
ればならないことを示す。
【0025】書き込むブロックの古いバージョンが不揮
発性メモリで見つからない場合には、制御装置は書き込
むブロックを一時的に記憶する不揮発性メモリ内のフリ
ー・スペースを探す(ブロック540)。そのブロック
のためのフリー・スペースが存在している場合には、書
込み要求によって定義されるデータ・ブロックがフリー
・スペースに書き込まれ、新しいブロックに対するポイ
ンタがポインタ・リスト(ブロック550)内の、ポイ
ントされたデータのディスクへの効率のよい書込みのた
めのスケジュールをリストが表すような位置(リスト内
の他のポインタに関して)へ挿入される。対応するタグ
がオンにされ、両方のディスクが新しいデータ・ブロッ
クの書込みを行わなければならないことを示す(ブロッ
ク560)。
発性メモリで見つからない場合には、制御装置は書き込
むブロックを一時的に記憶する不揮発性メモリ内のフリ
ー・スペースを探す(ブロック540)。そのブロック
のためのフリー・スペースが存在している場合には、書
込み要求によって定義されるデータ・ブロックがフリー
・スペースに書き込まれ、新しいブロックに対するポイ
ンタがポインタ・リスト(ブロック550)内の、ポイ
ントされたデータのディスクへの効率のよい書込みのた
めのスケジュールをリストが表すような位置(リスト内
の他のポインタに関して)へ挿入される。対応するタグ
がオンにされ、両方のディスクが新しいデータ・ブロッ
クの書込みを行わなければならないことを示す(ブロッ
ク560)。
【0026】書き込まれるデータ・ブロックが不揮発性
メモリ内になく、かつフリー・ブロック・スペースが利
用できない場合、新しいブロックが両方のブロックに同
期して書き込まれる(ブロック570)。不揮発性メモ
リが書込み活動の大きなバーストを吸収できるだけの大
きさであれば、この状況は通常発生しないが(ロード及
びその他のきわめて大きな複写操作の場合を除く)、い
ずれにせよ、書込み要求に遭遇し、不揮発性メモリにフ
リー・スペースがない場合に取られる処置を指定する必
要がある。
メモリ内になく、かつフリー・ブロック・スペースが利
用できない場合、新しいブロックが両方のブロックに同
期して書き込まれる(ブロック570)。不揮発性メモ
リが書込み活動の大きなバーストを吸収できるだけの大
きさであれば、この状況は通常発生しないが(ロード及
びその他のきわめて大きな複写操作の場合を除く)、い
ずれにせよ、書込み要求に遭遇し、不揮発性メモリにフ
リー・スペースがない場合に取られる処置を指定する必
要がある。
【0027】ポインタのリスト225はこのリストの対
象となるデータ・ブロックの順序ないしスケジュールを
定義する(不揮発性メモリ内に)。この順序ないしスケ
ジュールは、ディスクがこの順序でブロックにアクセス
する場合、すべてのブロックにアクセスする(及びこれ
らをディスクに書き込む)ための全時間が最小となるよ
うに、作成されるのが好ましい。第1の近似として、配
列がシリンダごとに行われるので、ディスク全体に対す
る走査(スウィープ)が1パスですべての更新を適用で
きる。特定のシリンダのすべてのブロックが書き込まれ
てから、次のブロックへ移動する。より手の込んだ手法
はシリンダ内にブロックを配列し、シリンダの回転待ち
時間を最短とするものである。さらに複雑な手法はシー
ク時間と回転遅延を考慮したものである。このような手
法は、たとえば、M. Seltzer他の「Disk Scheduling Re
visited」、Winter 1990 USENIX、pp. 313 - 323、Wash
ington, D.C.(1990年1月)に記載されている。
象となるデータ・ブロックの順序ないしスケジュールを
定義する(不揮発性メモリ内に)。この順序ないしスケ
ジュールは、ディスクがこの順序でブロックにアクセス
する場合、すべてのブロックにアクセスする(及びこれ
らをディスクに書き込む)ための全時間が最小となるよ
うに、作成されるのが好ましい。第1の近似として、配
列がシリンダごとに行われるので、ディスク全体に対す
る走査(スウィープ)が1パスですべての更新を適用で
きる。特定のシリンダのすべてのブロックが書き込まれ
てから、次のブロックへ移動する。より手の込んだ手法
はシリンダ内にブロックを配列し、シリンダの回転待ち
時間を最短とするものである。さらに複雑な手法はシー
ク時間と回転遅延を考慮したものである。このような手
法は、たとえば、M. Seltzer他の「Disk Scheduling Re
visited」、Winter 1990 USENIX、pp. 313 - 323、Wash
ington, D.C.(1990年1月)に記載されている。
【0028】周期的に起動し、不揮発性メモリで待機し
ている更新を対応するディスクに適用する2つのプロセ
ス(各ディスクに1つ)がある。更新を適用する論理は
2つのプロセスに対して同一であり、図4に示されてい
る。プロセスが起動すると(ブロック610)、ポイン
タ・リストの先頭へいき、ポインタ・リスト上を移動し
て、各ブロックを順に調べる。各ステップにおいて、リ
ストの終わりに到達したかどうかを調べる(ブロック6
20)。到達している場合には、休眠し(ブロック(6
80)、次の期間に始動する。他のブロックがある場合
には、ポインタ・リスト内の現在のブロックのタグを調
べる(ブロック630)。プロセスのディスクに対応す
るタグがオフの場合には、プロセスのリスト内の次のポ
インタへ移動する(ブロック670)。タグがオンの場
合には、プロセスはブロックをディスクに書き込み、タ
グをオフにする(ブロック640)。タグをオフにした
後、他のタグを調べる(ブロック650)。他のタグが
オンの場合、プロセスはリスト内の次のポインタに移動
する(ブロック670)。他のタグがオフの場合、両方
のディスクが更新を適用しているので、ポインタがリス
トから除去される(ブロック660)。ブロックは依然
有効であるが(そのブロックに対する読取りは依然キャ
ッシュ・ヒットする)、フリーであり、任意のブロック
の以降の書込みによって上書きできる。次いで、プロセ
スはリスト内の次のポインタに移動する(ブロック67
0)。
ている更新を対応するディスクに適用する2つのプロセ
ス(各ディスクに1つ)がある。更新を適用する論理は
2つのプロセスに対して同一であり、図4に示されてい
る。プロセスが起動すると(ブロック610)、ポイン
タ・リストの先頭へいき、ポインタ・リスト上を移動し
て、各ブロックを順に調べる。各ステップにおいて、リ
ストの終わりに到達したかどうかを調べる(ブロック6
20)。到達している場合には、休眠し(ブロック(6
80)、次の期間に始動する。他のブロックがある場合
には、ポインタ・リスト内の現在のブロックのタグを調
べる(ブロック630)。プロセスのディスクに対応す
るタグがオフの場合には、プロセスのリスト内の次のポ
インタへ移動する(ブロック670)。タグがオンの場
合には、プロセスはブロックをディスクに書き込み、タ
グをオフにする(ブロック640)。タグをオフにした
後、他のタグを調べる(ブロック650)。他のタグが
オンの場合、プロセスはリスト内の次のポインタに移動
する(ブロック670)。他のタグがオフの場合、両方
のディスクが更新を適用しているので、ポインタがリス
トから除去される(ブロック660)。ブロックは依然
有効であるが(そのブロックに対する読取りは依然キャ
ッシュ・ヒットする)、フリーであり、任意のブロック
の以降の書込みによって上書きできる。次いで、プロセ
スはリスト内の次のポインタに移動する(ブロック67
0)。
【0029】2つのディスクに更新を適用する2つのプ
ロセスは同じ論理を有しており、同じ期間であることが
好ましい。すなわち、プロセスの書込みフェーズの2つ
の連続した活動化の間の時間が2つのプロセスに対して
同じであることが好ましい。この期間を図示の実施例で
はTと呼ぶ。2つのプロセスは同期しておらず、図5に
おいては、180度の位相差があるものとして示されて
いる。ディスクaに対するプロセスは時間0、T、2
T、3Tなどで始動し、更新のバッチのディスクaへの
書込みを完了するまで行い、その後読取りモードに切り
替わり、ディスクbに対するプロセスは時間T/2、T
+T/2、2T+T/2、3T+T/2などで始動し、
更新のバッチのディスクbへの書込みを完了するまで行
い、その後読取りモードに切り替わる。図5はこれをタ
イミング図によって示すものであり、高い値は対応する
ディスクに対して書込みプロセスが活動している期間を
示す。書込みプロセスが休眠状態(非活動)である場
合、対応するディスクはランダム読取りトラフィックを
処理する。
ロセスは同じ論理を有しており、同じ期間であることが
好ましい。すなわち、プロセスの書込みフェーズの2つ
の連続した活動化の間の時間が2つのプロセスに対して
同じであることが好ましい。この期間を図示の実施例で
はTと呼ぶ。2つのプロセスは同期しておらず、図5に
おいては、180度の位相差があるものとして示されて
いる。ディスクaに対するプロセスは時間0、T、2
T、3Tなどで始動し、更新のバッチのディスクaへの
書込みを完了するまで行い、その後読取りモードに切り
替わり、ディスクbに対するプロセスは時間T/2、T
+T/2、2T+T/2、3T+T/2などで始動し、
更新のバッチのディスクbへの書込みを完了するまで行
い、その後読取りモードに切り替わる。図5はこれをタ
イミング図によって示すものであり、高い値は対応する
ディスクに対して書込みプロセスが活動している期間を
示す。書込みプロセスが休眠状態(非活動)である場
合、対応するディスクはランダム読取りトラフィックを
処理する。
【0030】図5に示すように、これは3種類の制御装
置モード、すなわちディスクaが書込みモードであり、
ディスクbが読取りモードである制御装置モード1、デ
ィスクbが書込みモードで、ディスクaが読み取りモー
ドである制御装置モード2、ならびにディスクa及びデ
ィスクbの両方が読取りモードである制御装置モード3
をもたらす。図3のブロック570に関して前述したよ
うに、ディスクa及びディスクbの両方が書込みモード
になっている制御装置モード4もある。それぞれのバッ
チ書込みが時間T/2未満で完了する限り、制御装置モ
ード4が発生することはない。両方のディスクが同時に
書込みモードになる状況が大幅に回避されるように、シ
ステムが構成されていることが好ましいが、これはバッ
チが書込みがT/2未満の時間で完了するように設計す
ることによって行われる。
置モード、すなわちディスクaが書込みモードであり、
ディスクbが読取りモードである制御装置モード1、デ
ィスクbが書込みモードで、ディスクaが読み取りモー
ドである制御装置モード2、ならびにディスクa及びデ
ィスクbの両方が読取りモードである制御装置モード3
をもたらす。図3のブロック570に関して前述したよ
うに、ディスクa及びディスクbの両方が書込みモード
になっている制御装置モード4もある。それぞれのバッ
チ書込みが時間T/2未満で完了する限り、制御装置モ
ード4が発生することはない。両方のディスクが同時に
書込みモードになる状況が大幅に回避されるように、シ
ステムが構成されていることが好ましいが、これはバッ
チが書込みがT/2未満の時間で完了するように設計す
ることによって行われる。
【0031】2つのプロセスを180度の位相差に維持
することによって、書込みを半分未満の期間で適用でき
る場合、ランダム読取り専用のディスク・アームが常に
存在し、読取りの応答時間を損なわずに、バッチを大き
くする(したがって、書込みの効率をよくする)ことが
可能となる。期間Tはシステムに依存するパラメータで
あり、期間Tに蓄積する書込みがメモリに適合しなけれ
ばならないのであるから、主として利用可能なメモリの
量によって決定される。
することによって、書込みを半分未満の期間で適用でき
る場合、ランダム読取り専用のディスク・アームが常に
存在し、読取りの応答時間を損なわずに、バッチを大き
くする(したがって、書込みの効率をよくする)ことが
可能となる。期間Tはシステムに依存するパラメータで
あり、期間Tに蓄積する書込みがメモリに適合しなけれ
ばならないのであるから、主として利用可能なメモリの
量によって決定される。
【0032】読取り要求を行うプロセスの論理を図6に
示す。読取り要求が到着すると(ブロック810)、読
み取るブロックが存在しているかどうかについて、不揮
発性メモリが調べられる(ブロック820)。ブロック
がメモリ内にある場合、プロセスは直ちに元へ戻る(ブ
ロック830)。ブロックがメモリ内にない場合、両方
のディスクが現在読取り要求にたずさわっているかどう
か(すなわち、制御装置が制御装置モード3であるかど
うか)の検査が行われる(ブロック840)。読取り要
求にたずさわっていない場合、要求は現在読取り専用モ
ードになっているディスク、すなわち書込みプロセスが
非活動であるディスクによって処理される(ブロック8
50)。両方のディスクが読取り専用モードである(す
なわち、制御モード3)場合、要求はいずれのディスク
によっても処理されるが、ヘッドが目標ブロックにもっ
とも近いディスクによって処理されることが好ましい
(ブロック860)。
示す。読取り要求が到着すると(ブロック810)、読
み取るブロックが存在しているかどうかについて、不揮
発性メモリが調べられる(ブロック820)。ブロック
がメモリ内にある場合、プロセスは直ちに元へ戻る(ブ
ロック830)。ブロックがメモリ内にない場合、両方
のディスクが現在読取り要求にたずさわっているかどう
か(すなわち、制御装置が制御装置モード3であるかど
うか)の検査が行われる(ブロック840)。読取り要
求にたずさわっていない場合、要求は現在読取り専用モ
ードになっているディスク、すなわち書込みプロセスが
非活動であるディスクによって処理される(ブロック8
50)。両方のディスクが読取り専用モードである(す
なわち、制御モード3)場合、要求はいずれのディスク
によっても処理されるが、ヘッドが目標ブロックにもっ
とも近いディスクによって処理されることが好ましい
(ブロック860)。
【0033】当分野の技術者には、2つ以上の上記のプ
ロセスによって同時にアクセスされる共用データの構造
(たとえば、タグ、ポインタ・リスト)の保全性を保存
するには、何らかのルーチンの同期化(たとえば、ラッ
チング)が必要なことが容易に理解されよう。また、各
ディスクが一般に不揮発性メモリに記憶されているブロ
ックの異なるサブセットをディスクに書き込むのである
から、バッチを書き込む時間を最小とするポインタの順
序は、2つのディスクで異なっていてもかまわない。
ロセスによって同時にアクセスされる共用データの構造
(たとえば、タグ、ポインタ・リスト)の保全性を保存
するには、何らかのルーチンの同期化(たとえば、ラッ
チング)が必要なことが容易に理解されよう。また、各
ディスクが一般に不揮発性メモリに記憶されているブロ
ックの異なるサブセットをディスクに書き込むのである
から、バッチを書き込む時間を最小とするポインタの順
序は、2つのディスクで異なっていてもかまわない。
【0034】障害シナリオの元での作動を図7に図示
し、説明する。2重化対300−gのディスク300−
bgが障害を生じたものとする。従来の回復手法では1
枚の交換ディスクを使用し、これに存続ディスク300
−agの内容を複写して、喪失した2重化ディスクを置
き換え、したがって、2重化ディスクを復元する。本発
明による好ましい回復手法では、単一の交換ディスクで
はなく、一対の交換ディスク400a及び400bを利
用する。回復が完了すると、対400のディスクは最新
のものとなり、存続している300−agが他に使用す
るためにシステムへ戻る。
し、説明する。2重化対300−gのディスク300−
bgが障害を生じたものとする。従来の回復手法では1
枚の交換ディスクを使用し、これに存続ディスク300
−agの内容を複写して、喪失した2重化ディスクを置
き換え、したがって、2重化ディスクを復元する。本発
明による好ましい回復手法では、単一の交換ディスクで
はなく、一対の交換ディスク400a及び400bを利
用する。回復が完了すると、対400のディスクは最新
のものとなり、存続している300−agが他に使用す
るためにシステムへ戻る。
【0035】回復中、存続ディスクは読取り専用モード
を維持する。存続ディスクは書込みには関与しない。当
分野の技術者には、不揮発性メモリに記憶されているビ
ット・マップ(図7の230)を使用して、回復が完了
する前に、どのブロックが存続しているディスクから検
索されているのかを追跡できることが容易に理解できよ
う。ビット・マップはディスク・ブロック当たり1ビッ
トを有しており、回復がスタートしたときに、すべての
ビットがクリアされる。あるいは、ビット・マップをシ
ステムの他のメモリ構成要素に記憶することもできる。
を維持する。存続ディスクは書込みには関与しない。当
分野の技術者には、不揮発性メモリに記憶されているビ
ット・マップ(図7の230)を使用して、回復が完了
する前に、どのブロックが存続しているディスクから検
索されているのかを追跡できることが容易に理解できよ
う。ビット・マップはディスク・ブロック当たり1ビッ
トを有しており、回復がスタートしたときに、すべての
ビットがクリアされる。あるいは、ビット・マップをシ
ステムの他のメモリ構成要素に記憶することもできる。
【0036】全体として、回復には5つのプロセスが関
与する。プロセスのうち2つ(各ディスクに1つ)は周
期的に始動し、キャッシュ内で待機している書込みを対
応するディスクに適用する。プロセスは同じ期間を有し
ており、180度の位相差で維持される。これらのプロ
セスの論理は図4に示した正規作動のものと同一であ
る。第3のプロセスは読取りを行うものであり、図8に
示されている。読取り要求が到着すると(ブロック91
0)、読み取るブロックが存在しているかどうかについ
て、メモリが検査される(ブロック920)。メモリ内
にブロックが存在している場合、これは直ちに戻される
(ブロック930)。ブロックが不揮発性メモリ内にな
い場合、ディスクから読み取らなければならない。ブロ
ックが交換ディスクで利用できるかどうかを調べるた
め、ビット・マップがまず調べられる(ブロック94
0)。利用できない場合には、読取りが存続ディスクか
ら行われる(ブロック960)。ブロックを存在ディス
クから読み取った後、プロセスは不揮発性メモリ内にフ
リー・スペースがあるかどうかを調べる(ブロック97
0)。存在していない場合には、プロセスは終了する。
不揮発性メモリにフリー・スペースが存在している場合
には、このブロックも不揮発性メモリに置かれ、ポイン
タがリストに挿入され、両方のタグがオンにされるので
(ブロック980)、ディスクはこれを次の書込みフェ
ーズで書き込む。さらに、このブロックに対応したビッ
ト・マップ内のビットがオンにされ、このブロックを存
続ディスクから読み取る必要がもはやなくなったという
ことを示す。
与する。プロセスのうち2つ(各ディスクに1つ)は周
期的に始動し、キャッシュ内で待機している書込みを対
応するディスクに適用する。プロセスは同じ期間を有し
ており、180度の位相差で維持される。これらのプロ
セスの論理は図4に示した正規作動のものと同一であ
る。第3のプロセスは読取りを行うものであり、図8に
示されている。読取り要求が到着すると(ブロック91
0)、読み取るブロックが存在しているかどうかについ
て、メモリが検査される(ブロック920)。メモリ内
にブロックが存在している場合、これは直ちに戻される
(ブロック930)。ブロックが不揮発性メモリ内にな
い場合、ディスクから読み取らなければならない。ブロ
ックが交換ディスクで利用できるかどうかを調べるた
め、ビット・マップがまず調べられる(ブロック94
0)。利用できない場合には、読取りが存続ディスクか
ら行われる(ブロック960)。ブロックを存在ディス
クから読み取った後、プロセスは不揮発性メモリ内にフ
リー・スペースがあるかどうかを調べる(ブロック97
0)。存在していない場合には、プロセスは終了する。
不揮発性メモリにフリー・スペースが存在している場合
には、このブロックも不揮発性メモリに置かれ、ポイン
タがリストに挿入され、両方のタグがオンにされるので
(ブロック980)、ディスクはこれを次の書込みフェ
ーズで書き込む。さらに、このブロックに対応したビッ
ト・マップ内のビットがオンにされ、このブロックを存
続ディスクから読み取る必要がもはやなくなったという
ことを示す。
【0037】読取り要求時に、ブロックが不揮発性メモ
リ内になく、かつ交換ディスクでブロックが利用できる
ことをビット・マップが示している場合には、ブロック
が交換ディスクの1つから読み取られる。その時点でい
くつの交換ディスクが読取りモードになっているのか
を、プロセスが調べることが好ましい(ブロック95
0)。読取りモードの交換ディスクが1つだけである場
合には、読取りはその交換ディスクによって行われる
(ブロック954)。両方の交換ディスクが読取りモー
ドである場合には、アームが要求されたディスクにもっ
とも近いディスクによって、要求が処理されることが好
ましい(ブロック952)。ブロックを交換ディスクか
ら読み取る場合には、ビット・マップを更新したり、ブ
ロックをキャッシュに記憶する必要はない。
リ内になく、かつ交換ディスクでブロックが利用できる
ことをビット・マップが示している場合には、ブロック
が交換ディスクの1つから読み取られる。その時点でい
くつの交換ディスクが読取りモードになっているのか
を、プロセスが調べることが好ましい(ブロック95
0)。読取りモードの交換ディスクが1つだけである場
合には、読取りはその交換ディスクによって行われる
(ブロック954)。両方の交換ディスクが読取りモー
ドである場合には、アームが要求されたディスクにもっ
とも近いディスクによって、要求が処理されることが好
ましい(ブロック952)。ブロックを交換ディスクか
ら読み取る場合には、ビット・マップを更新したり、ブ
ロックをキャッシュに記憶する必要はない。
【0038】第4のプロセスは回復中に書込みを行い、
図3に示したものとまったく同じステップを取る。さら
に、すべての場合に、書き込まれるビットに対応するビ
ットはビット・マップにセットされ(まだセットされて
いない場合)、そのブロックを存続ディスクから複写す
る必要がもはやないことを示す。
図3に示したものとまったく同じステップを取る。さら
に、すべての場合に、書き込まれるビットに対応するビ
ットはビット・マップにセットされ(まだセットされて
いない場合)、そのブロックを存続ディスクから複写す
る必要がもはやないことを示す。
【0039】第5のプロセス(図9に示す)は背景プロ
セスで、交換ディスクにまだ書き込まれていない存続デ
ィスクのブロックを走査する。システムが回復モードに
なると、プロセスが始まり(ブロック1000)、交換
ディスクが活動化される。存続ディスクがアイドルにな
るまで、すなわち、ランダム読取り要求が待ち状態にな
っていなくなるまで、プロセスは待機する(ブロック1
010)。次いで、走査されていないブロック、すなわ
ち、ビット・マップ内のビットがセットされていないブ
ロックがあるかどうか、検査される(ブロック102
0)。すべてのブロックが走査されている場合、回復は
完了し、プロセスは終了する(ブロック1060)。存
続ディスクを他に使用するためにシステムに戻すことが
できる。未走査のブロックがある場合、プロセスは不揮
発性メモリにフリースペースがあるかどうかを検査する
(ブロック1030)。ない場合には、プロセスはしば
らくの間休眠する(ブロック1040)。不揮発性メモ
リにフリー・スペースがある場合、プロセスは存続ディ
スクのヘッドの現在位置にもっとも近い未走査のブロッ
クを読み取る(ブロック1050)。ビット・マップは
どのブロックが未走査なのかを決めるために使用され
る。読み取られたブロックは不揮発性メモリに置かれ、
そのタグは両方ともオンになって、交換ディスクがブロ
ックを書き込まなければならないことを示す。ポインタ
もポインタ・リストに挿入される。さらに、ビット・マ
ップの対応するビットがセットされ、存続ディスクがブ
ロックを再度走査する必要がないことを示す。プロセス
は次いで、上記のステップを反復する(ブロック101
0へ戻る)。ランダム読取りが到着すると、読取りが完
了するまで、プロセスはブロック1010で中断する。
セスで、交換ディスクにまだ書き込まれていない存続デ
ィスクのブロックを走査する。システムが回復モードに
なると、プロセスが始まり(ブロック1000)、交換
ディスクが活動化される。存続ディスクがアイドルにな
るまで、すなわち、ランダム読取り要求が待ち状態にな
っていなくなるまで、プロセスは待機する(ブロック1
010)。次いで、走査されていないブロック、すなわ
ち、ビット・マップ内のビットがセットされていないブ
ロックがあるかどうか、検査される(ブロック102
0)。すべてのブロックが走査されている場合、回復は
完了し、プロセスは終了する(ブロック1060)。存
続ディスクを他に使用するためにシステムに戻すことが
できる。未走査のブロックがある場合、プロセスは不揮
発性メモリにフリースペースがあるかどうかを検査する
(ブロック1030)。ない場合には、プロセスはしば
らくの間休眠する(ブロック1040)。不揮発性メモ
リにフリー・スペースがある場合、プロセスは存続ディ
スクのヘッドの現在位置にもっとも近い未走査のブロッ
クを読み取る(ブロック1050)。ビット・マップは
どのブロックが未走査なのかを決めるために使用され
る。読み取られたブロックは不揮発性メモリに置かれ、
そのタグは両方ともオンになって、交換ディスクがブロ
ックを書き込まなければならないことを示す。ポインタ
もポインタ・リストに挿入される。さらに、ビット・マ
ップの対応するビットがセットされ、存続ディスクがブ
ロックを再度走査する必要がないことを示す。プロセス
は次いで、上記のステップを反復する(ブロック101
0へ戻る)。ランダム読取りが到着すると、読取りが完
了するまで、プロセスはブロック1010で中断する。
【0040】当分野の技術者には、回復プロセスを促進
するために存続ディスクが使用できる都合のよい方策が
あることが容易に理解できよう。たとえば、存続ディス
クがランダム読取りを取り扱う場合に、存続ディスクは
ディスクが目標ブロックまで回転してくるのを待ってい
る間に、そのアームの下を通過する未走査の(すなわ
ち、複写されていない)ブロックを読み取ることができ
る。さらに、図9に示すプロセスが一時に2つ以上のブ
ロックを読み取れることも明らかであろう。
するために存続ディスクが使用できる都合のよい方策が
あることが容易に理解できよう。たとえば、存続ディス
クがランダム読取りを取り扱う場合に、存続ディスクは
ディスクが目標ブロックまで回転してくるのを待ってい
る間に、そのアームの下を通過する未走査の(すなわ
ち、複写されていない)ブロックを読み取ることができ
る。さらに、図9に示すプロセスが一時に2つ以上のブ
ロックを読み取れることも明らかであろう。
【0041】
【発明の効果】本発明によれば、ランダム・ディスク書
込み入出力を変換して、順次入出力に近づけることによ
って、ランダム・ディスク入出力の性能が改善された2
重化ディスク・サブシステムが得られる。
込み入出力を変換して、順次入出力に近づけることによ
って、ランダム・ディスク入出力の性能が改善された2
重化ディスク・サブシステムが得られる。
【0042】さらに、読取り応答時間を損なうことなく
2重化ディスクのスループットを改善できる。
2重化ディスクのスループットを改善できる。
【0043】さらにまた、高速な復元を維持しながら、
復元中のディスクの読取り及び書込みに対して保証され
た性能を提供することによって、障害を生じたディスク
からの復元プロセス中の性能を改善することができる。
復元中のディスクの読取り及び書込みに対して保証され
た性能を提供することによって、障害を生じたディスク
からの復元プロセス中の性能を改善することができる。
【図1】本発明の好ましい実施例の全体的なブロック図
である。
である。
【図2】入出力プロセッサの不揮発性メモリにおけるデ
ータの好ましい編成の図である。
ータの好ましい編成の図である。
【図3】正規作動時の書込み要求の処理に関連するステ
ップを示す流れ図である。
ップを示す流れ図である。
【図4】正規作動時に書込みバッチを適用するプロセス
に関連するステップを示す流れ図である。
に関連するステップを示す流れ図である。
【図5】書込みバッチを2つの2重化ディスクに適用す
る2つのプロセスの間のタイミング関係を示すタイミン
グ図である。
る2つのプロセスの間のタイミング関係を示すタイミン
グ図である。
【図6】正規作動時の読取り要求の処理に関連するステ
ップを示す流れ図である。
ップを示す流れ図である。
【図7】障害を生じたディスクの回復時の構成の略図で
ある。
ある。
【図8】回復時の読取り要求を行うことに関連する流れ
図である。
図である。
【図9】存続しているディスクを走査する背景処理に関
連するステップを示す流れ図である。
連するステップを示す流れ図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ダニエル・エム・ディアス アメリカ合衆国ニューヨーク州マホパッ ク、ピケ・プレイス16 (72)発明者 クリストス・エイ・ポリゾイス アメリカ合衆国ニューヨーク州ホワイト・ プレーンズ、マーティン・アベニュー25
Claims (18)
- 【請求項1】2重化対の両方のディスクに重複してディ
ジタル情報のデータ・ブロックを記憶するための2重化
対のディスクと、 前記2重化対のディスクのための制御装置とからなり、
該制御装置がメモリを有しており、 前記2重化対の両方のブロックに重複してデータ・ブロ
ックが記憶されるまで、該制御装置がコンピュータ・シ
ステムによって与えられるデータ・ブロックを前記メモ
リに一時的に蓄積し、 前記制御装置が前記メモリに蓄積されている前記データ
・ブロックを、前記2重化対のディスクへ効率よく書き
込むための順序でスケジュールし、 前記制御装置が前記2重化対の一方のディスクが書込み
モードであり、前記2重化対の他方のディスクが読み取
りモードである第1作動モード、ならびに前記一方のデ
ィスクが読み取りモードであり、前記他方のディスクが
書込みモードである第2作動モードを有しており、 前記制御装置が前記第1作動モード中に前記メモリから
前記一方のディスクへ、前記一方のディスクへまだ書き
込まれていないスケジュールされた順序内のデータ・ブ
ロックを複写し、かつ前記第2作動モード中に前記メモ
リから前記他方のディスクへ、前記他方のディスクへま
だ書き込まれていないスケジュールされた順序内のデー
タ・ブロックを複写し、 前記制御装置が間隔を置いた時間で第1作動モードで、
また前記の時間間隔の間の少なくとも一部で第2作動モ
ードで前記2重化対のディスクを作動させ、 前記制御装置が要求されたデータ・ブロックが前記メモ
リ内にある場合には、前記メモリから、また前記2重化
対のディスクが前記第1作動モードで作動している場合
には、前記他方のディスクから、また前記2重化対のデ
ィスクが前記第2作動モードで作動している場合には、
前記一方のディスクから該要求されたデータ・ブロック
を前記コンピュータ・システムに複写し、 これによって、データ・ブロックが前記コンピュータ・
システムを妨害することなく、あるいは前記コンピュー
タ・システムによって要求されたデータ・ブロックを読
み取ることなく、スケジュールされた順序で前記2重化
対のディスクに複写されるコンピュータ・システム用の
デジタル情報のデータ・ブロックを記憶するためのディ
スク記憶サブシステム。 - 【請求項2】前記制御装置が前記コンピュータ・システ
ム内にソフトウェアによって実現され、前記制御装置の
前記メモリが前記コンピュータ・システムの汎用記憶資
源の一部である請求項1記載のディスク記憶サブシステ
ム。 - 【請求項3】前記制御装置及びメモリが専用ハードウェ
アによって実現されている請求項1記載のディスク記憶
サブシステム。 - 【請求項4】前記メモリが不揮発性メモリである請求項
1記載のディスク記憶サブシステム。 - 【請求項5】前記メモリがフォールト・トレランスであ
る請求項1記載のディスク記憶サブシステム。 - 【請求項6】前記第1作動モードが周期的に始動するよ
うにスケジュールされている請求項1記載のディスク記
憶サブシステム。 - 【請求項7】前記データ・ブロックがディスク全体の物
理的走査に対応する順序でスケジュールされている請求
項1記載のディスク記憶サブシステム。 - 【請求項8】前記制御装置がモード切換え前の前記第1
作動モード中にスケジュールされた順序で蓄積されたデ
ータ・ブロックに対して単一の走査を行う請求項1記載
のディスク記憶サブシステム。 - 【請求項9】前記制御装置がさらに、前記2重化対のデ
ィスクが両方とも読取りモードであり、要求されたデー
タ・ブロックが前記メモリ内にない場合に、該要求され
たデータ・ブロックを前記2重化対の前記ディスクのい
ずれかから検索できる第3作動モードを有している請求
項1記載のディスク記憶サブシステム。 - 【請求項10】前記第2作動モードの次のスケジュール
された始動の前に前記第1作動モードが終了した場合、
及び前記第1作動モードの次のスケジュールされた始動
の前に前記第2作動モードが終了した場合に、前記制御
装置が前記2重化対のディスクを前記第3作動モードで
作動させる請求項9記載のディスク記憶サブシステム。 - 【請求項11】前記第3作動モード中に、データ・ブロ
ックが前記コンピュータ・システムによって要求され、
前記メモリ内の存在していない場合、前記2重化対の前
記ディスクのいずれが前記の要求されたデータブロック
をもっとも短い時間で渡すことができるかを前記制御装
置が判断し、前記の要求されたデータ・ブロックを前記
の判断されたディスクから検索する請求項9記載のディ
スク記憶サブシステム。 - 【請求項12】前記制御装置がさらに、前記2重化対の
前記ディスクの両方が書込みモードで作動する第4作動
モードを有している請求項1記載のディスク記憶サブシ
ステム。 - 【請求項13】前記第1作動モードの始動時にスケジュ
ールされた順序のすべてのデータ・ブロックが、第2作
動モードのスケジュールされている再始動時までに前記
一方のディスクに書き込まれていない場合、ならびに前
記第2作動モードの始動時にスケジュールされた順序の
すべてのデータ・ブロックが、第1作動モードのスケジ
ュールされている再始動時までに前記他方のディスクに
書き込まれていない場合に、前記制御装置が前記2重化
対のディスクを前記第4作動モードで作動させる請求項
9記載のディスク記憶サブシステム。 - 【請求項14】前記サブシステムがスペア対の記憶ディ
スクを含んでおり、かつ前記2重化対の前記ディスクの
一方のみが作動状態を維持している場合、前記制御装置
が回復作動モード中に、前記スペア対によって前記2重
化対を増加させる請求項1記載のディスク記憶サブシス
テム。 - 【請求項15】前記回復作動モード中に、前記制御装置
が作動状態を維持している前記ディスクを、該作動状態
ディスクのすべてのブロックが前記メモリ、あるいは前
記スペア対のディスクの一方または両方のいずれかへ転
送されるまで、継続的の読取りモードとしておき、その
時点で、前記スペア対が前記2重化対を置き換え、前記
作動状態ディスクがスペア・ディスクになり、前記回復
作動モードが終了する請求項14記載のディスク記憶サ
ブシステム。 - 【請求項16】コンピュータ・システムから受け取った
デジタル情報のブロックを、2重化対の記憶ディスクを
記憶サブシステムに記憶し、前記コンピュータ・システ
ムからの要求時に前記記憶サブシステムからデータ・ブ
ロックを検索する方法において、 記憶するデータ・ブロックのグループを一時的に蓄積
し、 データ・ブロックの前記の蓄積されたグループを、前記
2重化対のディスクに効率よく書き込む順序でスケジュ
ールし、 前記2重化対のディスクを、前記2重化対の一方のディ
スクが書込みモードであり、前記2重化対の他方のディ
スクが読取りモードである第1作動モード、ならびに前
記一方のディスクが読み取りモードであり、前記他方の
ディスクが書込みモードである第2作動モードで作動さ
せ、 前記一方のディスクにまだ書き込まれていない前記の蓄
積されたグループ内の配列されたデータ・ブロックを、
前記第1作動モード中の前記一方のディスクに複写し、 前記他方のディスクにまだ書き込まれていない前記の蓄
積されたグループ内の配列されたデータ・ブロックを、
前記第2作動モード中の前記他方のディスクに複写し、 前記2重化対のディスクを間隔を置いた時間で第1作動
モードで、該時間間隔の少なくとも一部で第2作動モー
ドで作動させ、 要求されたデータ・ブロックが前記メモリ内にある場合
には、前記メモリから、また前記2重化対のディスクが
前記第1作動モードで作動している場合には、前記他方
のディスクから、また前記2重化対のディスクが前記第
2作動モードで作動している場合には、前記一方のディ
スクから該要求されたデータ・ブロックを検索するステ
ップからなり、 これによって、データ・ブロックが前記コンピュータ・
システムを妨害することなく、あるいは前記コンピュー
タ・システムによって要求されたデータ・ブロックを読
み取ることなく、スケジュールされた順序で前記2重化
対のディスクに複写される前記データ記憶方法。 - 【請求項17】前記2重化対の前記ディスクの両方に書
き込まれているデータ・ブロックを前記の蓄積されたグ
ループから削除するステップをさらに含んでいる請求項
16記載のデジタル情報のデータ・ブロックを記憶する
方法。 - 【請求項18】第1及び第2のフラグを前記グループの
各蓄積されたデータ・ブロックに関連づけるステップを
さらに含んでおり、特定のデータ・グループに関連づけ
られた前記第1フラグが該特定のデータ・グループが前
記一方のディスクに複写されているかどうかを示し、前
記特定のデータ・グループに関連づけられた前記第2グ
ループが該特定のデータ・ブロックが前記他方のディス
クに複写されているかどうかを示す請求項17記載のデ
ジタル情報のデータ・ブロックを記憶する方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US110467 | 1993-08-23 | ||
US08/110,467 US5432922A (en) | 1993-08-23 | 1993-08-23 | Digital storage system and method having alternating deferred updating of mirrored storage disks |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0764870A true JPH0764870A (ja) | 1995-03-10 |
JP3053511B2 JP3053511B2 (ja) | 2000-06-19 |
Family
ID=22333166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5219992A Expired - Fee Related JP3053511B2 (ja) | 1993-08-23 | 1993-09-03 | デジタル情報のデータ・ブロックを記憶する方法及びそのためのディスク記憶装置 |
Country Status (8)
Country | Link |
---|---|
US (1) | US5432922A (ja) |
EP (1) | EP0642081A3 (ja) |
JP (1) | JP3053511B2 (ja) |
KR (1) | KR0131554B1 (ja) |
CN (1) | CN1096639C (ja) |
BR (1) | BR9403306A (ja) |
CA (1) | CA2125201A1 (ja) |
SG (1) | SG42854A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012174037A (ja) * | 2011-02-22 | 2012-09-10 | Nec Corp | ディスクアレイ装置及びその制御方法 |
JP2015176521A (ja) * | 2014-03-18 | 2015-10-05 | 日本電気株式会社 | 冗長化記憶制御装置、冗長化記憶制御方法、及び冗長化記憶制御プログラム |
JP2015210760A (ja) * | 2014-04-30 | 2015-11-24 | パナソニックIpマネジメント株式会社 | 画像記録装置及び画像記録方法 |
Families Citing this family (77)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5544347A (en) | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
US5511177A (en) * | 1991-11-21 | 1996-04-23 | Hitachi, Ltd. | File data multiplexing method and data processing system |
US5729718A (en) * | 1993-11-10 | 1998-03-17 | Quantum Corporation | System for determining lead time latency as function of head switch, seek, and rotational latencies and utilizing embedded disk drive controller for command queue reordering |
JP3243919B2 (ja) * | 1994-02-23 | 2002-01-07 | 三菱電機株式会社 | ディスク装置、および、このディスク装置を使用したfaコントローラ |
JP2708386B2 (ja) * | 1994-03-18 | 1998-02-04 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 同時更新及び複写手順を通して重複データベースを回復させる方法及び装置 |
JP3085085B2 (ja) * | 1994-05-09 | 2000-09-04 | 三菱電機株式会社 | データアクセス装置及び分散データベースシステム |
EP0689125B1 (en) * | 1994-06-22 | 2004-11-17 | Hewlett-Packard Company, A Delaware Corporation | Method of utilizing storage disks of differing capacity in a single storage volume in a hierarchic disk array |
JPH086843A (ja) * | 1994-06-23 | 1996-01-12 | Fujitsu Ltd | 半導体記憶装置 |
EP0702302B1 (en) * | 1994-09-16 | 2001-12-05 | International Computers Limited | Disk array for data storage |
US5764903A (en) * | 1994-09-26 | 1998-06-09 | Acer America Corporation | High availability network disk mirroring system |
EP0707267A3 (en) * | 1994-10-12 | 1996-07-03 | Ibm | Redundant arrangement of disk drives with asymmetrical mirroring and data processing methods for asymmetrical mirroring |
JPH08152976A (ja) * | 1994-11-28 | 1996-06-11 | Fujitsu Ltd | 記憶装置のアクセス方法 |
US6067635A (en) * | 1995-10-27 | 2000-05-23 | Lsi Logic Corporation | Preservation of data integrity in a raid storage device |
US5708771A (en) * | 1995-11-21 | 1998-01-13 | Emc Corporation | Fault tolerant controller system and method |
US5805787A (en) * | 1995-12-29 | 1998-09-08 | Emc Corporation | Disk based disk cache interfacing system and method |
US5765172A (en) * | 1996-01-23 | 1998-06-09 | Dsc Communications Corporation | System and method for verifying integrity of replicated databases |
DE19607101A1 (de) * | 1996-02-24 | 1997-08-28 | Hella Kg Hueck & Co | Elektronisches Gerät und Einrichtung zur Datenübertragung zwischen zwei gleichartig aufgebauten elektronischen Geräten |
US5819310A (en) * | 1996-05-24 | 1998-10-06 | Emc Corporation | Method and apparatus for reading data from mirrored logical volumes on physical disk drives |
US5933653A (en) * | 1996-05-31 | 1999-08-03 | Emc Corporation | Method and apparatus for mirroring data in a remote data storage system |
US6092066A (en) * | 1996-05-31 | 2000-07-18 | Emc Corporation | Method and apparatus for independent operation of a remote data facility |
US6101497A (en) * | 1996-05-31 | 2000-08-08 | Emc Corporation | Method and apparatus for independent and simultaneous access to a common data set |
US5917998A (en) * | 1996-07-26 | 1999-06-29 | International Business Machines Corporation | Method and apparatus for establishing and maintaining the status of membership sets used in mirrored read and write input/output without logging |
US6567903B1 (en) * | 1996-08-23 | 2003-05-20 | Emc Corporation | Data storage system having master/slave addressable memories |
US6347365B1 (en) | 1996-08-23 | 2002-02-12 | Emc Corporation | Data storage system having a[n] memory responsive to clock pulses produced on a bus and clock pulses produced by an internal clock |
US6009481A (en) * | 1996-09-30 | 1999-12-28 | Emc Corporation | Mass storage system using internal system-level mirroring |
US5991852A (en) * | 1996-10-28 | 1999-11-23 | Mti Technology Corporation | Cache ram using a secondary controller and switching circuit and improved chassis arrangement |
US5950229A (en) * | 1997-03-12 | 1999-09-07 | Micron Electronics, Inc. | System for accelerating memory bandwidth |
US7389312B2 (en) * | 1997-04-28 | 2008-06-17 | Emc Corporation | Mirroring network data to establish virtual storage area network |
US6148368A (en) * | 1997-07-31 | 2000-11-14 | Lsi Logic Corporation | Method for accelerating disk array write operations using segmented cache memory and data logging |
US6112257A (en) * | 1997-09-24 | 2000-08-29 | Emc Corporation | Dynamic adjustment of mirror service policy for logical volumes in a disk drive system based on collected statistics |
US6105103A (en) * | 1997-12-19 | 2000-08-15 | Lsi Logic Corporation | Method for mapping in dynamically addressed storage subsystems |
JP3866862B2 (ja) * | 1998-06-05 | 2007-01-10 | パイオニア株式会社 | 情報記録装置及び方法 |
US6167531A (en) * | 1998-06-18 | 2000-12-26 | Unisys Corporation | Methods and apparatus for transferring mirrored disk sets during system fail-over |
US6230240B1 (en) * | 1998-06-23 | 2001-05-08 | Hewlett-Packard Company | Storage management system and auto-RAID transaction manager for coherent memory map across hot plug interface |
JP2000132915A (ja) * | 1998-10-22 | 2000-05-12 | Matsushita Electric Ind Co Ltd | ディスク装置およびそのデータ処理方法 |
US6209002B1 (en) * | 1999-02-17 | 2001-03-27 | Emc Corporation | Method and apparatus for cascading data through redundant data storage units |
DE60044409D1 (de) | 1999-03-19 | 2010-07-01 | Hitachi Ltd | System um Daten zu duplizieren |
EP1058190B1 (en) * | 1999-06-01 | 2010-02-24 | Hitachi, Ltd. | Data backup method |
US6463573B1 (en) * | 1999-06-03 | 2002-10-08 | International Business Machines Corporation | Data processor storage systems with dynamic resynchronization of mirrored logical data volumes subsequent to a storage system failure |
US6754682B1 (en) * | 2000-07-10 | 2004-06-22 | Emc Corporation | Method and apparatus for enabling consistent ancillary disk array storage device operations with respect to a main application |
US7386610B1 (en) | 2000-09-18 | 2008-06-10 | Hewlett-Packard Development Company, L.P. | Internet protocol data mirroring |
US6977927B1 (en) | 2000-09-18 | 2005-12-20 | Hewlett-Packard Development Company, L.P. | Method and system of allocating storage resources in a storage area network |
US6804819B1 (en) | 2000-09-18 | 2004-10-12 | Hewlett-Packard Development Company, L.P. | Method, system, and computer program product for a data propagation platform and applications of same |
US7032119B2 (en) * | 2000-09-27 | 2006-04-18 | Amphus, Inc. | Dynamic power and workload management for multi-server system |
US6820182B1 (en) | 2000-10-18 | 2004-11-16 | International Business Machines Corporation | Support for exhaustion recovery in a data processing system with memory mirroring |
US7133233B1 (en) * | 2000-10-24 | 2006-11-07 | Maxtor Corporation | Disk drive with read while write capability |
US6606690B2 (en) | 2001-02-20 | 2003-08-12 | Hewlett-Packard Development Company, L.P. | System and method for accessing a storage area network as network attached storage |
JP2003044230A (ja) * | 2001-05-23 | 2003-02-14 | Hitachi Ltd | 記憶装置システム |
US6993677B1 (en) * | 2001-06-14 | 2006-01-31 | Lsi Logic Corporation | System and method for data verification in a RAID system |
US6647460B2 (en) * | 2001-07-13 | 2003-11-11 | Hitachi, Ltd. | Storage device with I/O counter for partial data reallocation |
US6745303B2 (en) * | 2002-01-03 | 2004-06-01 | Hitachi, Ltd. | Data synchronization of multiple remote storage |
US7139932B2 (en) * | 2002-01-03 | 2006-11-21 | Hitachi, Ltd. | Data synchronization of multiple remote storage after remote copy suspension |
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 |
AU2003279086A1 (en) * | 2002-09-30 | 2004-04-23 | Insignia Solutions Plc | Efficient system and method for updating a memory device |
US7107483B2 (en) * | 2002-11-15 | 2006-09-12 | Lsi Logic Corporation | Apparatus and method for enhancing data availability by leveraging primary/backup data storage volumes |
US6934805B2 (en) | 2003-05-19 | 2005-08-23 | International Business Machines Corporation | Method and apparatus for managing computer storage devices for improved operational availability |
JP4512386B2 (ja) * | 2004-03-05 | 2010-07-28 | 株式会社日立製作所 | バックアップシステムおよび方法 |
US7492953B2 (en) * | 2004-06-17 | 2009-02-17 | Smith Micro Software, Inc. | Efficient method and system for reducing update requirements for a compressed binary image |
WO2007023497A1 (en) * | 2005-08-23 | 2007-03-01 | Red Bend Ltd. | Method and system for in-place updating content stored in a storage device |
JP4472617B2 (ja) * | 2005-10-28 | 2010-06-02 | 富士通株式会社 | Raidシステム、raidコントローラ及びそのリビルド/コピーバック処理方法 |
US20070180206A1 (en) * | 2006-01-18 | 2007-08-02 | Craft Julie L | Method of updating a duplicate copy of an operating system on the same disk |
US7707356B2 (en) * | 2006-09-28 | 2010-04-27 | Agere Systems Inc. | Method and apparatus for scheduling disk read requests |
US7694171B2 (en) * | 2006-11-30 | 2010-04-06 | Lsi Corporation | Raid5 error recovery logic |
US7882304B2 (en) * | 2007-04-27 | 2011-02-01 | Netapp, Inc. | System and method for efficient updates of sequential block storage |
US8375187B1 (en) * | 2007-09-27 | 2013-02-12 | Emc Corporation | I/O scheduling for flash drives |
US7827441B1 (en) * | 2007-10-30 | 2010-11-02 | Network Appliance, Inc. | Disk-less quorum device for a clustered storage system |
US20120226935A1 (en) * | 2011-03-03 | 2012-09-06 | Nitin Kishore | Virtual raid-1 drive as hot spare |
US20130166865A1 (en) * | 2011-12-22 | 2013-06-27 | Alex Lemberg | Systems and Methods for Managing Parallel Access to Multiple Storage Systems |
US8625386B2 (en) * | 2012-03-22 | 2014-01-07 | Seiko Epson Corporation | Non-volatile memory device, circuit board, printing material container and printer |
JP5843010B2 (ja) * | 2012-06-25 | 2016-01-13 | 富士通株式会社 | ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム |
CN106897311B (zh) * | 2015-12-21 | 2020-08-11 | 财团法人工业技术研究院 | 数据库批次更新方法、数据还原日志产生方法与存储装置 |
CN106933700B (zh) * | 2015-12-31 | 2021-12-03 | 伊姆西Ip控股有限责任公司 | 用于恢复存储器之间的数据备份的方法及设备 |
US10452301B1 (en) | 2016-09-29 | 2019-10-22 | Amazon Technologies, Inc. | Cluster-based storage device buffering |
CN110096216B (zh) * | 2018-01-30 | 2022-06-14 | 伊姆西Ip控股有限责任公司 | 用于管理数据存储系统中的数据存储的方法、装置以及计算机程序产品 |
US11226990B2 (en) * | 2018-07-20 | 2022-01-18 | Ionir Systems Ltd. | System and method for operating a digital storage system |
CN111338559B (zh) * | 2018-12-19 | 2023-11-10 | 深圳市茁壮网络股份有限公司 | 数据处理方法、用户模块、信息管理模块及系统 |
US11749335B2 (en) * | 2020-11-03 | 2023-09-05 | Jianzhong Bi | Host and its memory module and memory controller |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57168360A (en) * | 1981-03-31 | 1982-10-16 | Fujitsu Ltd | Magnetic recording controlling system |
JPS59135563A (ja) * | 1983-01-24 | 1984-08-03 | Hitachi Ltd | デイスク・キヤツシユ装置を有する計算機システム |
JPS61249132A (ja) * | 1985-04-27 | 1986-11-06 | Nec Corp | 磁気デイスク制御装置によるデ−タ二重書き方式 |
JPH0258140A (ja) * | 1988-08-24 | 1990-02-27 | Nec Corp | ボリューム障害対策方式 |
JPH02280221A (ja) * | 1989-04-21 | 1990-11-16 | Mitsubishi Electric Corp | ディスク制御方式 |
JPH03266046A (ja) * | 1990-03-16 | 1991-11-27 | Nippon Telegr & Teleph Corp <Ntt> | データベース高速アクセス方法 |
JPH0421021A (ja) * | 1990-05-14 | 1992-01-24 | Fujitsu Ltd | 半導体ディスク装置のデータバックアップ方式 |
JPH04102148A (ja) * | 1990-08-22 | 1992-04-03 | Hitachi Ltd | データ処理装置 |
JPH04125725A (ja) * | 1990-09-17 | 1992-04-27 | Hitachi Ltd | 磁気テープ制御装置およびその制御方法 |
JPH04195646A (ja) * | 1990-11-28 | 1992-07-15 | Hitachi Ltd | 多重化システム |
JPH04216152A (ja) * | 1990-12-17 | 1992-08-06 | Nec Kyushu Ltd | バックアップコントローラ |
JPH05165579A (ja) * | 1991-12-17 | 1993-07-02 | Yokogawa Electric Corp | ミラードディスク制御装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4722085A (en) * | 1986-02-03 | 1988-01-26 | Unisys Corp. | High capacity disk storage system having unusually high fault tolerance level and bandpass |
US5230073A (en) * | 1986-07-21 | 1993-07-20 | Bell Communications Research, Inc. | System and method for accessing and updating a continuously broadcasted stored database |
US5212784A (en) * | 1990-10-22 | 1993-05-18 | Delphi Data, A Division Of Sparks Industries, Inc. | Automated concurrent data backup system |
US5297258A (en) * | 1991-11-21 | 1994-03-22 | Ast Research, Inc. | Data logging for hard disk data storage systems |
-
1993
- 1993-08-23 US US08/110,467 patent/US5432922A/en not_active Expired - Lifetime
- 1993-09-03 JP JP5219992A patent/JP3053511B2/ja not_active Expired - Fee Related
-
1994
- 1994-06-06 CA CA002125201A patent/CA2125201A1/en not_active Abandoned
- 1994-07-15 EP EP94111044A patent/EP0642081A3/en not_active Withdrawn
- 1994-07-15 SG SG1996000149A patent/SG42854A1/en unknown
- 1994-07-25 CN CN94114809A patent/CN1096639C/zh not_active Expired - Fee Related
- 1994-07-25 KR KR1019940018211A patent/KR0131554B1/ko not_active IP Right Cessation
- 1994-08-22 BR BR9403306A patent/BR9403306A/pt not_active Application Discontinuation
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57168360A (en) * | 1981-03-31 | 1982-10-16 | Fujitsu Ltd | Magnetic recording controlling system |
JPS59135563A (ja) * | 1983-01-24 | 1984-08-03 | Hitachi Ltd | デイスク・キヤツシユ装置を有する計算機システム |
JPS61249132A (ja) * | 1985-04-27 | 1986-11-06 | Nec Corp | 磁気デイスク制御装置によるデ−タ二重書き方式 |
JPH0258140A (ja) * | 1988-08-24 | 1990-02-27 | Nec Corp | ボリューム障害対策方式 |
JPH02280221A (ja) * | 1989-04-21 | 1990-11-16 | Mitsubishi Electric Corp | ディスク制御方式 |
JPH03266046A (ja) * | 1990-03-16 | 1991-11-27 | Nippon Telegr & Teleph Corp <Ntt> | データベース高速アクセス方法 |
JPH0421021A (ja) * | 1990-05-14 | 1992-01-24 | Fujitsu Ltd | 半導体ディスク装置のデータバックアップ方式 |
JPH04102148A (ja) * | 1990-08-22 | 1992-04-03 | Hitachi Ltd | データ処理装置 |
JPH04125725A (ja) * | 1990-09-17 | 1992-04-27 | Hitachi Ltd | 磁気テープ制御装置およびその制御方法 |
JPH04195646A (ja) * | 1990-11-28 | 1992-07-15 | Hitachi Ltd | 多重化システム |
JPH04216152A (ja) * | 1990-12-17 | 1992-08-06 | Nec Kyushu Ltd | バックアップコントローラ |
JPH05165579A (ja) * | 1991-12-17 | 1993-07-02 | Yokogawa Electric Corp | ミラードディスク制御装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012174037A (ja) * | 2011-02-22 | 2012-09-10 | Nec Corp | ディスクアレイ装置及びその制御方法 |
JP2015176521A (ja) * | 2014-03-18 | 2015-10-05 | 日本電気株式会社 | 冗長化記憶制御装置、冗長化記憶制御方法、及び冗長化記憶制御プログラム |
JP2015210760A (ja) * | 2014-04-30 | 2015-11-24 | パナソニックIpマネジメント株式会社 | 画像記録装置及び画像記録方法 |
Also Published As
Publication number | Publication date |
---|---|
BR9403306A (pt) | 1995-06-20 |
JP3053511B2 (ja) | 2000-06-19 |
SG42854A1 (en) | 1997-10-17 |
CN1102896A (zh) | 1995-05-24 |
EP0642081A3 (en) | 1995-03-22 |
CN1096639C (zh) | 2002-12-18 |
KR0131554B1 (ko) | 1998-04-24 |
KR950006577A (ko) | 1995-03-21 |
CA2125201A1 (en) | 1995-02-24 |
US5432922A (en) | 1995-07-11 |
EP0642081A2 (en) | 1995-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3053511B2 (ja) | デジタル情報のデータ・ブロックを記憶する方法及びそのためのディスク記憶装置 | |
US5907849A (en) | Method and system for recovery in a partitioned shared nothing database system using virtual share disks | |
US5479653A (en) | Disk array apparatus and method which supports compound raid configurations and spareless hot sparing | |
US5546535A (en) | Multiple controller sharing in a redundant storage array | |
JP2501752B2 (ja) | コンピユ―タ・システムのストレ―ジ装置及びデ―タのストア方法 | |
US7159150B2 (en) | Distributed storage system capable of restoring data in case of a storage failure | |
US7337351B2 (en) | Disk mirror architecture for database appliance with locally balanced regeneration | |
US5696933A (en) | Apparatus for controlling data writing into a disk array system including a data length detecting unit and a writing mode selector | |
US7228381B2 (en) | Storage system using fast storage device for storing redundant data | |
US6463505B2 (en) | Disk array device with selectable method for generating redundant data | |
US6397348B1 (en) | Redundant array of disk drives with asymmetric mirroring and asymmetric mirroring data processing method | |
EP1550053A1 (en) | Disk mirror architecture for database appliance | |
US6301711B1 (en) | System and method for the network support of full motion video using a redundant array of inexpensive disks | |
US7130973B1 (en) | Method and apparatus to restore data redundancy and utilize spare storage spaces | |
JPH0863394A (ja) | 記憶装置システムおよび記憶装置の制御方法 | |
JPH09265359A (ja) | ディスクアレイシステムおよびディスクアレイシステムの制御方法 | |
JPH11327794A (ja) | Raidデ―タ記憶システム用デ―タマイグレ―ション方法 | |
Quinn | RAID-S Technical Overview: RAID 4 and 5-Compliant Hardware and Software Functionality Improves Data Availability Through Use of XOR-Capable Disks in an Integrated Cached Disk Army | |
JPH0736761A (ja) | 外部記憶装置のオンライン高信頼複写処理方法 | |
MXPA99003253A (en) | Expansion of the number of drives in a raid set while maintaining integrity of migrated data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090407 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100407 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |