JP2006114008A - システム構成を更新するための回復記録を構成するための方法および装置 - Google Patents

システム構成を更新するための回復記録を構成するための方法および装置 Download PDF

Info

Publication number
JP2006114008A
JP2006114008A JP2005138586A JP2005138586A JP2006114008A JP 2006114008 A JP2006114008 A JP 2006114008A JP 2005138586 A JP2005138586 A JP 2005138586A JP 2005138586 A JP2005138586 A JP 2005138586A JP 2006114008 A JP2006114008 A JP 2006114008A
Authority
JP
Japan
Prior art keywords
system configuration
storage
allocation information
allocation
updating
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
JP2005138586A
Other languages
English (en)
Inventor
Randy L Roberson
エル. ロバーソン ランディ
Clark Edward Lubbers
エドワード ルッベルス クラーク
Tarun Thakur
タークル タルン
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.)
Seagate Technology LLC
Original Assignee
Seagate Technology LLC
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 Seagate Technology LLC filed Critical Seagate Technology LLC
Publication of JP2006114008A publication Critical patent/JP2006114008A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】コンピュータ・システム構成の更新中にクラッシュが起こったときでも誤りなくシステムを回復する方法を提供する。
【解決手段】記憶空間内の記憶割振りのシステム構成内の変化に関連する記憶割振り情報(162)と、システム構成を更新する前に記憶割振り情報を保存することによりシステム構成を更新する手段(164)とを含むデータ記憶装置(110)を提供する。回復記録(160)は記憶割振りのシステム構成内の変化に関連する記憶割振り情報(162)を含み、完了標識(164)は、記憶割振り情報がシステム構成要素以内に含まれるときは第1の値を含み、記憶割振り情報がシステム構成要素以内に含まれないときは第2の値を含む。
【選択図】図5

Description

本発明は一般にコンピュータ・システムに関するもので、特に記憶割振りに関連する更新中のシステム構成の完全性を保持することに関するが、これに限定されるものではない。
コンピュータ・システムは、入力装置、出力装置、一個以上のCPU、記憶媒体(半導体RAM、EEPROM、ディスク・ドライブ、CDドライブ、その他の記憶媒体など)で構成してよい。オペレーティング・システムはアプリケーション環境と、ファイルを作成し変更し削除するときに記憶容量の割振り(および割振りの解除)を行うためのファイル・システムとを提供する。例えば、サーバやストレージアレイなどの特殊なコンピュータ・システムは、ネットワークやその他の接続によりアクセスされる記憶容量を割り振るためのファイル・システムも用いる。サーバやストレージアレイは、例えばRAIDレベルなどの望ましい記憶フォーマットに従って、複数のディスク・ドライブにまたがってファイルを記憶する。ユーザ・データ・ファイルは1個以上のディスク・ドライブの1つ以上の領域にマップされる。マッピングはミラー・データまたはパリティ・データの記憶を含む。データ・ファイルを1個以上のディスク・ドライブにマップする方法を記述する構成情報はメタデータと呼ばれる表または他のデータ構造に含まれる。ファイルを作成し変更し削除するときはメタデータを更新して、記憶容量の割振りまたは割振り解除を反映する。
システムをマルチスレッド化およびマルチタスク化して、多数のプロセスを同時に実行することができる。1つのプロセス(システム・プロセスまたはユーザ・アプリケーションなど)の実行が異常になると、1つ以上プロセスが未完状態で終了することがある。オペレーティング・システムは、1つのアプリケーションの実行が異常になったときに他のアプリケーションに影響を与えない動作環境を与えるよう努めるが、バス故障、記憶誤り、コード誤り、停電、電力サージ、その他の状態、などによりシステム・クラッシュが起こることがある。クラッシュによりシステムの実行が停止したとき記憶容量の割振りまたは割振り解除のプロセスが作動して、割振りまたは割振り解除の誤りやデータの消失を生じる可能性がある。
ここで示しまた後でクレームするように、本発明は一般にコンピュータ・システム構成情報を更新するための装置とこれに関連する方法とを提供するものである。
或る実施の形態では、記憶空間内に記憶される回復記録が与えられる。回復記録は、記憶空間の記憶割振りのシステム構成内の変化に関連する記憶割振り情報と、記憶割振り情報がシステム構成内に含まれるときは第1の値を含み、記憶割振り情報がシステム構成内に含まれないときは第2の値を含む完了標識とで構成する。
別の実施の形態では、記憶空間の記憶割振りのシステム構成内の変化に関連する記憶割振り情報を記憶し、また完了標識に第1の値を割り当てて記憶割振り情報がシステム構成内に含まれないことを示すことを含む方法が与えられる。
別の実施の形態では、システム構成内の変化に関連するシステム構成変化情報と、システム構成を更新する前にシステム構成変化情報を保存することによりシステム構成を更新するための手段とを備えるデータ記憶装置が与えられる。
本発明の実施の形態を特徴づけるこれらの機能と利点は、以下の詳細な説明を読み、関連する図面を参照することにより明らかになる。
本発明の現在好ましいと考えられる実施の形態を実行するのに適した例示的な環境を示すために、図1に大容量記憶を用いるワイド・エリア・ネットワーク(WAN)として特徴づけられるコンピュータ・ベースのシステム100を示す。
システム100は、それぞれホストA,B,Cで示す多数のホスト・コンピュータ102を含む。ホスト・コンピュータ102はファブリック106を介して相互に対話し、また1対のデータストレージアレイ104(それぞれA,Bで示す)と対話する。ファブリック106は好ましくはファブリック・チャンネル・ベースのスイッチング・ネットワークでよいが、インターネットを含む他の構成を用いてもよい。
各アレイ104は1対のコントローラ108(A1,A2およびB1,B2で示す)と、好ましくはRAID(独立ディスクの冗長アレイ)として動作するハード・ディスク・ドライブの特徴を有する一組のデータ記憶装置110とを含む。コントローラ108とデータ記憶装置110とは好ましくはフォールトトレラント構造を用いるので、種々のコントローラ108は並列の冗長リンクを用い、システム100が記憶する少なくともいくつかのユーザ・データを少なくとも一組のデータ記憶装置110内に冗長フォーマットで記憶する。
更に考えられるのは、Aホスト・コンピュータ102とAデータストレージアレイ104とを物理的に第1のサイトに置き、Bホスト・コンピュータ102とB記憶配列104とを物理的に第2のサイトに置き、Cホスト・コンピュータ102を別の第3のサイトに置いてよい。ただしこれは単なる例であって、これに限定されるわけではない。
図2は選択された1つのコントローラ108の詳細を示す。コントローラ108は単一の集積回路で実現してもよいし、必要に応じて多数の離散的回路に分散してもよい。主プロセッサ112は好ましくはプログラム可能なコンピュータ・プロセッサであって、不揮発性記憶114(フラッシュ・メモリなど)やダイナミックRAM(DRAM)116内に記憶されているプログラミング・ステップと処理データとに従ってトップ・レベルの制御を行う。
ファブリック・インターフェース(I/F)回路118はファブリック106を介して他のコントローラ108やホスト・コンピュータ102と通信し、装置I/F回路120は記憶装置110と通信する。I/F回路118,120と経路コントローラ122とは、キャッシュ・メモリ124を用いるなどして、ストレージアレイ104とホスト102の間にパスコマンドやデータを送る通信経路を形成する。離散的に図示したが、理解されるように、経路コントローラ122とI/F回路118,120とは一体で構築してよい。
所定のアレイ104内のデータ記憶装置110の範囲で定義される配列104のデータ記憶容量は、アレイ104との間で書込みおよび読取りを行うことのできる順序付きファイルに編成される。システム構成情報は、関連するパリティ・データおよびミラー・データを含んでそれぞれの記憶位置を持つユーザ・データ・ファイルの間の関係を定義する。システム構成は更に、ユーザ・ファイルに割り振られた記憶容量のブロックの間の関係と、論理ブロック・アドレスなどのメモリ記憶位置とを識別する。システム構成は更に、論理ブロック・アドレスにマップされる仮想ブロック・アドレスを定義することによる仮想化を含んでよい。
新しいファイルを保存しまたは既存のファイルを拡張するなどして記憶容量が割り振られたとき、またはファイルを削除しまたは既存のファイルのサイズを小さくするなどして記憶容量の割振りが解除された後は、システム構成情報が変わる。システム・メタデータはファイル割振り情報や、割振りプロセスを支援する他のデータ構造を定義する。
図3は、ビット配列の形のメタデータ構造130を示す簡単な図である。この図では、メタデータ130の列(a,b,c,d,...)はアレイ104内の1つ以上のデータ記憶装置110に関係してよい。メタデータ130の行(1,2,3,4,...)は1つ以上のドライブの予め選択された記憶容量を表してよい。したがって、各行と列との交点にある、配列130内の各ビットは記憶容量の割振り可能な1単位を表す。配列130内のビットは、記憶容量の各単位にすでに割り振られている場合は第1の値に設定し、記憶容量のその単位に割振り可能な場合は第2の値に設定する。
このようにメタデータ130は記憶容量使用に関するシステム構成の概要を表す。メタデータ130を更新することは、標識ビット・データを変えて、割振りの前(例えば、時刻t0)の状態から割振りの後(例えば、t1)の状態への割振りの変化を反映することを含む。好ましくは、更新は図4の流れ図に示すような1パス・プロセスで行われる。更新プロセス140はブロック141で開始して、ブロック142で割振り要求が起こるまでコンピュータ・システム100は正常動作を行う。ブロック146でシステム100は関連する記憶を割り振り、これに従ってメタデータを更新する。継続する動作の間および次の割振り要求142の間、システム100は更新されたメタデータを参照することができる。
更新ステップ146中にシステム100のクラッシュなどによりシステム100内で誤りが発生した場合は、システム100は部分的に更新されたメタデータをかかえたまま再開しようとすることがある。本発明の実施の形態は、メタデータ130の2パス回復プロセスを行えるようにすることによりこの問題を解決する。
図5は、1パスのメタデータ更新プロセス140(図4)と、2パスのメタデータ更新プロセス152との違いを示す簡単な図である。システム構成は、割振り要求142の前の時刻t0と割振り要求142の後の時刻t1でのメタデータで定義される。割振り要求142の前のメタデータの状態をブロック154にMETADATAt0で表す。割振り要求142があって更新に成功した後のメタデータの状態をブロック156にMETADATAt1で表す。
2パス・プロセス152では、記憶割振り情報162(MAI)という記憶された記録を含む回復記録160を作成する。MAI162は、割振り要求142により生じるシステム構成内の変化に関連する情報を含む。また回復記録160は完了標識164を含む。これは、MAI162がシステム構成に含まれる場合は第1の値168を含み、MAI162がシステム構成に含まれない場合は第2の値166を含む。すなわち、2パス・プロセス152では、システム構成はMETADATAtとMAI162との組合せで定義され、両者は別個にメモリ内に記憶される。好ましくは瞬時停電が起こった場合の回復に備えて、両者を不揮発性メモリ(例えば、前記の図3に示す構造と同様のもの)内に記憶する。完了標識164の変化で示すようにMETADATAtとMAI162とをうまく組み合わせると、この組合せが割振り要求142の後のシステム100構成の状態をMETADATAt1156として定義する。
図3に戻ると、メタデータ130は記憶割振りマップと特徴づけることができる。その中のMAI162は、割振り要求142のために変化した部分だけ定義する。本発明の種々の実施の形態で、MAI162は、各データ記憶単位132の割振りへの利用可能性、割振りに利用可能なデータ記憶単位の総数、ゾーン化された記憶容量を用いるマッピング配列でのゾーン当たりの利用可能なデータ記憶単位の数など(これに限定されない)の有用な情報を報告するようしてよい。別の実施の形態では、指定された論理装置にMAI162を割り当ててよい。更に別の実施の形態では、回復記録160はMAI162を含むシステム構成を自動的に更新するコード(限定されないが、実行可能なコードなど)を更に含む。
図6は、本発明の実施の形態に係る、2パス更新プロセス152を示す流れ図である。ブロック141で正常動作を行っているとき、ブロック142で割振り要求を受ける。割振り要求へのシステム100の応答に基づいて、ブロック170でMAI162を決定して記憶する。ブロック172で、システム構成をMAI162で更新する。流れはブロック174に進み、ブロック172でのシステム構成の更新が首尾よく完了したかどうか判定する。或る実施の形態では、これは完了標識164の状態をチェックして決定することができる。更新に成功した場合は、ブロック176でMAIを消去して、流れはブロック141に戻って正常動作を行う。ブロック172の更新ステップ中にシステム100がクラッシュした場合などにより更新に成功しなかった場合は、ブロック178でMAI162を呼び戻し、流れは更新ステップ172に戻る。
ブロック170でMAI162を記憶するステップは、好ましくはバックアップの目的でMAI162のコピーを記憶することを含む。詳しく述べると、或る実施の形態では、ライトバック・キャッシュ・メモリ内にMAI162のミラーを作るとよい。上に説明したように、ブロック170でMAI162を記憶するステップは、種々の情報(例えば、或るデータ記憶単位の割振りへの利用可能性、割振りに利用可能なデータ記憶単位の総数、ゾーン化された記憶容量のマップされた配列内のゾーン当たりの利用可能なデータ記憶単位の総数など)も含むとよい。
認識されるように、本発明の種々の好ましい実施の形態は一般に、記憶割振りのシステム100構成内の変化に関連する記憶割振り情報162と、システム構成を更新する前に記憶割振り情報162を保存することによりシステム100構成を更新するための手段とを含む、データ記憶システム100を考える。これは一般に、まず記憶割振り情報162を保存し、次にシステム構成を更新するという2パス・プロセスで定義される。
更新するための手段は、記憶割振り情報162がシステム100構成内に含まれるかどうかを示す完了標識164(これに限定されない)などの標識手段により特徴づけられる。更新するための手段は、メタデータ130(これに限定されない)などのシステム100構成の割振り可能性をマッピングする手段により特徴づけられる。更新するための手段は、或るデータ記憶単位132の割振り可能性(これに限定されない)などの、システム100構成の割振り可能性を示すための手段により特徴づけられる。指示する手段は代替的に、割振りに利用可能なデータ記憶単位の総数と、ゾーン化された記憶配列内で割振りに利用可能なゾーン当たりのデータ記憶単位の数とを指示してよい。
図7は、グリッド・ベース型のデータ記憶装置の更に詳細な例を示す。記憶容量は複数のグリッド200に編成され、各グリッド200は複数の行202と複数の列204とを有する。グリッド200内の列204は複数のデータ記憶装置110(図1)のそれぞれに対応し、グリッド200の各行202は複数のストライプに対応する。各データ記憶装置110(図1)内に1つのストライプがある。ストライプは或る論理ブロック・アドレスで始まる予め定められた容量の量である。
引き続き図7と図3とを参照するが、グリッド200をグループ化して、それぞれが予め定められた数のグリッド200を有する複数のグリッド・グループ206を作ることができる。グリッド200内の1つ以上のストライプは割当て可能な単位を含んでよい。ストライプは、ユーザ情報、ミラー・データ、パリティ・データを含むものとして示してよい。例えば、ミラー・データ・ストライプはユーザ情報ストライプのコピーである。パリティ・ストライプは2つ以上のユーザ情報ストライプから計算されたパリティ・データを含む。一組のユーザ情報ストライプと、関連するミラー・データ・ストライプまたはパリティ・データ・ストライプとで、データ記憶単位132を定義する。
例えば、RAIDレベルなどの記憶フォーマットに従って、グリッド200は異なる数のデータ記憶単位132を含んでよい。或るグリッド200内の全てのデータ記憶単位132を同じ記憶フォーマットにし、グリッド200内の全てのデータ記憶単位132を同じ論理装置に割り振ると、メタデータ130配列の処理が簡単になる。グリッド・グループ206を或る論理装置に割り当て、そのグリッド・グループ206内のグリッド200を必要に応じてその論理装置に割り当ててよい。複数のグリッド200の各グリッド200に1つの番号を割り当ててよく、グリッド200はグリッド番号(一連番号でよいが、これに限定されない)に従って論理装置に割り当ててよい。グリッド・グループ206内の最初のグリッド200の番号をグリッド・グループ206の識別子としてよい。または他の番号または識別子をグリッド・グループに割り当ててよい。
図8は図7のグリッド・ベースの記憶装置100のメタデータの図を示す。グリッド・グループ・メタデータはグリッド・グループ割振りマップ(GGAM)210とグリッド・グループ割振り要約表(GGAST)212とを含んでよい。GGAM210はシステム100内のグリッド・グループ206毎に1ビットを有する記憶割振りマップであり、GGAM内のビットは、対応するグリッド・グループ206がフリーの場合は第1の値に設定され、対応するグリッド・グループ206がすでに割り振られている場合は第2の値に設定される。フリー・グリッド・グループ206の位置がどこかはGGAST212により簡単に知ることができる。GGAST212は、グリッド・グループの全数のカウント214、フリー・グリッド・グループの数のカウント216、GGAMのゾーン内のフリー・グリッド・グループ216の数のカウント218,220を含んでよい。例えば、ゾーン1フリー・グリッド・グループ218はGGAM210の第1のゾーン222内のフリー・グリッド・グループの数を含む。同様にゾーン2フリー・グリッド・グループ220はGGAM210の第2のゾーン226内のフリー・グリッド・グループの数を含む。ゾーン222,226内のフリー・グリッド・グループの数をチェックすることにより、GGAM210を解析するよりもフリー記憶容量の位置をより早く識別することができる。グリッド・グループ206に割振りまたは割振り解除を行うと、GGAM210およびGGAST212は更新される。
図9は図7のグリッド・ベースのデータ記憶装置内の論理装置割振りのためのメタデータを示す。このメタデータは、論理装置毎の論理装置グリッド表(LDGT)242を有する論理装置割振りマップ(LDAM)240を含む。LDGT242はその論理装置に割り当てられたグリッド200および/またはグリッド・グループ206のリストであって、例えばRAIDレベルなどの他の情報を含んでよい。論理装置番号または論理装置番号に所定の値を掛けた番号をLDAM240へのオフセットとして用いることにより、或る論理装置のLDAM240内のLDGT242の位置にアクセスできるようにLDAM240を編成することができる。言い換えると、論理装置番号を用いてLDAM240およびLDGT242にアクセスすることができる。他のアドレス指定方法も用いることができる。
好ましくは、割振り要求142(図6)は論理装置番号と、割振りまたは割振り解除を行うべき記憶容量の量とを指定する。現在のシステム構成は、GGAM210とGGAST212とにアクセスするなどしてメタデータにアクセスすることにより決定される。割振り解除のためにまたは既存の論理装置のサイズを増やすために指定するなどのように、割振り要求142が既存の論理装置を指定する場合は、指定された論理装置番号のLDAM240とLDGT242とにアクセスしてよい。
割振り要求142を満たすために選択される記憶容量を決定するには、要求された容量のGGAST212を評価し、各ゾーン内のフリーグリッド・グループのカウントを評価してどこに十分なフリー・グリッド・グループが存在するかを識別する。次にGGAM212を用いて1つ以上のフリー・グリッド・グループを選択して、要求された記憶容量を与えることができる。また割振り要求142が既存の論理装置のサイズを増やすことを指定する場合は、GGAM212を用いて、既存のボリュームに割り振られた他の記憶に隣接または近接する記憶を選択してよい。
割振りが決まると、それぞれの変化をシステム100構成に反映しなければならない。これを行うには、MAI162(図5)を定義するときに割振りの変化により影響されるGGAM210のその部分をコピーする。MAI162内の標識ビットなどの標識は、対応するグリッド・グループが割り振られている場合は第1の値に設定し、対応するグリッド・グループの割振りが解除されている場合は第2の値に設定してよい。優れている点は、更新されたメタデータ値をMAI162(図5)に記憶することにより、システム構成を増分的にまたは減分的に変化させるのとは異なり、同じMAI162を用いて何度でも更新することができるし、または部分的に更新しておいて(システム100クラッシュにより中断されることがあるので)、後で完全に更新することができる。
注意すべきであるが、MAI162は結果のデータだけを含み、導出過程のデータ(formulaic data)を含まないので、システム構成の更新中にこれを用いて何らかのプロセスを再開することはない点が優れている。したがって、回復記録160はクラッシュ回復のための知能すなわち意思決定を必要としない。つまり、クラッシュ回復にはアドレス決定や書込みなどの機械的な計算だけを行えばよい。回復記録160の回復コードは、どの高レベルの動作が中断されたのかを知る必要がない。クラッシュ回復に関して、回復される動作が割振りか割振り解除かは問題ではなく、更新されたメタデータ値をそれぞれの位置に記憶するだけである。
この方法により、回復コードは簡単で信頼性の高いものになる。或る更新されたメタデータ値を書き込む実際のアドレスは、回復記録160内のその値の位置により間接的に、他の構造(すなわち、論理装置番号)を参照することにより間接的に、または回復記録160内の実際のアドレスにより直接的に、示すことができる。特に優れている点は、これにより回復記録160をシステム構成の等べき更新(idempotent updating)のコードに用いて、最も早く回復できることである。システム100構成内の位置を識別するアドレスは、更新すべきマップ、表、またはその他のデータ構造毎にMAI162に書き込んでよい。または、MAI162内の情報(論理装置番号やグリッド番号など)は、メタデータ・アドレスを生成するための情報を与える。また、MAI162内の更新情報の位置を用いて、更新すべきデータ構造を示すことができる。例えば、フリー・グリッド・グループのカウントはMAI162内の予め定められた位置を占めてよい。
MAI162内にデータを記憶するためのフォーマットの例を図10に示す。同じ項目は同じ参照番号を有し、ダッシュは割振りの変化に関連するMAI162の値を示す。有効性標識250(チェックサムまたはその他の符号化法など)はMAI162の有効性をチェックするのに用いてよい。完了標識164はフラグまたはその他のデータ要素を含み、予め定めた値にこれを設定して、MAI162内に含まれる更新がシステム100構成にまだ適用されていないことを示してよい。完了応答情報252は、割振り要求演算コード、回答メッセージ、復帰コード、割振り要求を識別するその他のデータ要素を含んでよく、これをMAI162に書き込んでよい。実行可能コード254を生成すると、MAI162はシステム100構成を更新する実行可能な要素になる。例えば、リブートすなわち再起動に関係する自動実行(autoexec)ファイルは、実行可能なMAI162記録を呼び出すことができる。
図10のMAI162記録は、更新されたGGAM値210’、全フリー・グリッド・グループの更新されたカウント214’、GGAM210の少なくとも1つのゾーンのためのフリー・グリッド・グループの更新されたカウント222’,226’、論理装置番号のための新しいまたは更新されたLDGT242’を含む。或る実施の形態では、更新されるGGAM210の部分とフリー・グリッド・グループ・カウントが更新されるゾーンとを、LDGT242内に含まれるグリッド番号から決定することができる。または、MAI162記録は、更新を書き込むべきGGAM210内の開始位置を指定するGGAMアドレス256、GGAST212内の全フリー・グリッド・グループ・カウントのアドレスを指定するフリー・グリッド・グループ・カウント・アドレス258、1つのゾーンの1つのフリー・グリッド・グループ・カウントのGGAST212内のアドレスを指定するGGAMゾーン・フリー・グリッド・グループ・カウント・アドレス260、1つの論理装置のLDGT242のアドレスを指定するLDAMアドレス262を含む。
上の説明はグリッド・ベースの記憶構造を用いたが、本発明の実施の形態は特定の記憶構造に限定されるものではない。割振り可能な単位は論理装置に割り振られる記憶容量の量を表す。上の例は割振り可能な単位としてグリッド・グループを用いたが、本発明の実施の形態は割振り可能な単位の編成やサイズについて限定されるものではなく、また割振り可能な単位として例えばストライプを含んでよい。
上の例はデータ記憶装置の構成を述べた(また、ディスク・ドライブ、ウァーム・ドライブ、書込み可能なCD ROM、DVD、EEPROM、半導体RAM、EEPROMを含むがこれらに限定されない任意の媒体を用いる記憶装置に適用することができる)が、本発明の実施の形態は、構成要素や接続構成(ネットワーク・インターフェースやグラフィック・アダプタなど)を含むコンピュータ・システムの他のハードウエアおよびソフトウエアで構成可能な要素や、アプリケーション環境設定、レジスタ設定、パスワードなどのソフトウエア構成に適用することができる。例えば、本発明の方法をパスワードの設定に適用することにより、パスワードの変更中にクラッシュが発生してパスワードが破壊された場合に、回復記録を用いて、破壊されてないパスワードを書き込むことができる。このように、メタデータ更新要求はシステムの構成情報を更新する全ての要求を表す。
理解されるように、本発明の種々の実施の形態の種々の特徴と利点とを上の説明に述べ、また本発明の種々の実施の形態の構造と機能の詳細を述べたが、この詳細な説明は単なる例であって、詳細については、特に特許請求の範囲に示されている用語の広い一般的な意味で示す全範囲にわたる本発明の原理内の部分の構造と配列については、変更を行ってよい。例えば、特定の要素を特定のメタデータ構造に従って変更しても、本発明の精神と範囲から逸れることはない。
大容量記憶を用いるワイド・エリア・ネットワークとして特徴づけられるコンピュータ・ベースのシステムのトップ・レベルの機能ブロック図である。 図1の選択された1つのコントローラを示す機能的ブロック図である。 メタデータ構造を示す図である。 本発明の実施の形態に係る、システム構成情報の1パス更新を行うステップを示す流れ図である。 本発明の実施の形態に係る、システム構成情報を更新するための1パス・プロセスと2パス・プロセスを示す図である。 本発明の実施の形態に係る、システム構成情報の2パス更新を行うステップを示す流れ図である。 本発明の実施の形態で用いるのに適したメタデータ構造と記憶割振り情報記録とを示す図である。 本発明の実施の形態で用いるのに適したメタデータ構造と記憶割振り情報記録とを示す図である。 本発明の実施の形態で用いるのに適したメタデータ構造と記憶割振り情報記録とを示す図である。 本発明の実施の形態で用いるのに適したメタデータ構造と記憶割振り情報記録とを示す図である。
符号の説明
110 データ記憶装置
160 回復記録
162 記憶割振り情報
164 完了標識

Claims (20)

  1. メモリ内に記憶される回復記録であって、
    記憶空間の記憶割振りのシステム構成内の変化に関連する結果のデータを定義する記憶割振り情報と、
    前記記憶割振り情報が前記システム構成内に含まれるときは第1の値を含み、前期記憶割振り情報が前記システム構成内に含まれないときは第2の値を含む完了標識と、
    で構成する回復記録。
  2. 前記記憶割振り情報が前記システム構成内に含まれるときは、前記記憶割振り情報は複数の割振り可能なデータ記憶単位を表す記憶割振りマップの一部を定義する、請求項1記載の回復記録。
  3. 前記記憶割振り情報は各データ記憶単位の割振りへの利用可能性を示す、請求項2記載の回復記録。
  4. 前記記憶割振り情報は割振りに利用可能な多数のデータ記憶単位を更に示す、請求項2記載の回復記録。
  5. 前記記憶割振りマップは第1のゾーンと第2のゾーンとを含み、また前記記憶割振り情報は前記ゾーンに関してデータ記憶単位の利用可能性を示す、請求項2記載の回復記録。
  6. 前記記憶割振り情報は論理装置への割振り可能なデータ記憶単位の割当てを指定する、請求項2記載の回復記録。
  7. 前記システム構成の等べき更新に適した記憶割振り情報を備えさせて、前記記憶割振り情報を含めるようにした、請求項1記載の回復記録。
  8. 記憶空間の記憶割振りのシステム構成内の変化に関連する結果のデータを定義する記憶割振り情報を記憶し、
    前記記憶割振り情報が前記システム構成内に含まれないことを示す第1の値を完了標識に割り当てる、
    ことを含む方法。
  9. 前記記憶割振り情報を含む前記システム構成を更新し、
    前記記憶割振り情報が前記システム構成要素内に含まれることを示す、前記第1の値とは異なる第2の値を前記完了標識に割り当てる、
    ことを含む、請求項8記載の方法。
  10. 前記記憶空間内に前記記憶割振り情報のコピーを保存することを含む、請求項8記載の方法。
  11. 前記コピーをライト・バック・キャッシュ内にミラーリングすることを含む、請求項10記載の方法。
  12. 前記記憶割振り情報と共にデータ記憶単位の割振りへの利用可能性を示すことを含む、請求項8記載の方法。
  13. 前記更新するステップは等べきとして特徴づけられる、請求項9記載の方法。
  14. 前記システム構成は第1のゾーンと第2のゾーンとを含み、また前記記憶するステップは前記ゾーンに関してデータ記憶単位の利用可能性を記憶することを含む、請求項8記載の方法。
  15. データ記憶装置であって、
    システム構成内の変化に関連するシステム構成変化情報と、
    前記システム構成を更新する前に前記システム構成変化情報を保存することにより前記システム構成を更新するための手段と、
    を備えるデータ記憶装置。
  16. 更新するための前記手段は、記憶空間の記憶割振りのシステム構成内の変化に関連する結果のデータを定義する記憶割振り情報を保存することにより特徴づけられる、請求項15記載のデータ記憶装置。
  17. 更新するための前記手段は前記システム構成の等べき更新により特徴づけられる、請求項15記載のデータ記憶装置。
  18. 更新するための前記手段は前記システム構成変化情報が前記システム構成内に含まれるかどうかを示す標識手段により特徴づけられる、請求項15記載のデータ記憶装置。
  19. 更新するための前記手段は前記システム構成割振り可能性をマッピングするための手段により特徴づけられる、請求項16記載のデータ記憶装置。
  20. 更新するための前記手段は前記システム構成の割振り可能性を示すための手段により特徴づけられる、請求項17記載のデータ記憶装置。
JP2005138586A 2004-10-18 2005-05-11 システム構成を更新するための回復記録を構成するための方法および装置 Pending JP2006114008A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/967,615 US7330955B2 (en) 2004-10-18 2004-10-18 Recovery record for updating a system configuration

Publications (1)

Publication Number Publication Date
JP2006114008A true JP2006114008A (ja) 2006-04-27

Family

ID=36182167

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005138586A Pending JP2006114008A (ja) 2004-10-18 2005-05-11 システム構成を更新するための回復記録を構成するための方法および装置

Country Status (2)

Country Link
US (1) US7330955B2 (ja)
JP (1) JP2006114008A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7483422B2 (en) * 2005-02-10 2009-01-27 International Business Machines Corporation Data processing system, method and interconnect fabric for selective link information allocation in a data processing system
US9778882B2 (en) * 2008-06-30 2017-10-03 Hitachi Data Systems Engineering UK Limited Dynamic write balancing in a data storage system
US11892913B2 (en) * 2015-01-05 2024-02-06 Rubrik, Inc. Data lineage based multi-data store recovery
US10020067B2 (en) * 2016-08-31 2018-07-10 Nxp Usa, Inc. Integrated circuits and methods for dynamic allocation of one-time programmable memory
KR102586768B1 (ko) * 2018-03-27 2023-10-16 에스케이하이닉스 주식회사 컴퓨팅 시스템 및 그것의 동작방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999018507A1 (en) * 1997-10-08 1999-04-15 Seagate Technology, Inc. Hybrid data storage and reconstruction system and method for a data storage device
WO2001077908A2 (en) * 2000-03-30 2001-10-18 Microsoft Corporation Transactional file system
WO2004036353A2 (en) * 2002-10-17 2004-04-29 Spinnaker Networks, Inc. Method and system for providing persistent storage of user data
WO2004046971A1 (en) * 2002-11-14 2004-06-03 Isilon Systems, Inc. Systems and methods for restriping files in a distributed file system

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01140342A (ja) 1987-11-27 1989-06-01 Nec Corp 仮想計算機システム
US5276860A (en) 1989-12-19 1994-01-04 Epoch Systems, Inc. Digital data processor with improved backup storage
US5752250A (en) 1994-12-02 1998-05-12 Fujitsu Limited Instance updating method and apparatus therefor
US5632027A (en) 1995-09-14 1997-05-20 International Business Machines Corporation Method and system for mass storage device configuration management
US5761678A (en) 1996-06-26 1998-06-02 International Business Machines Corporation Creation of clone storage area with identification of base storage area and deferred cloning of metadata
US6243773B1 (en) 1997-05-13 2001-06-05 Micron Electronics, Inc. Configuration management system for hot adding and hot replacing devices
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
US5961625A (en) 1997-07-31 1999-10-05 Advanced Micro Devices, Inc. Bus bridge state monitoring in a bus bridge verification system
GB2343020A (en) 1998-10-19 2000-04-26 Ibm Handling transaction failures in a transaction processing system
US6195695B1 (en) 1998-10-27 2001-02-27 International Business Machines Corporation Data processing system and method for recovering from system crashes
JP2000163344A (ja) 1998-11-27 2000-06-16 Nec Corp ネットワーク管理システムのデータベース復旧方式
US6438606B1 (en) 1998-12-23 2002-08-20 Cisco Technology, Inc. Router image support device
PT1067460E (pt) 1999-04-10 2002-06-28 Basis Gmbh Edv Vertriebs Ges Suporte de dados em que o estado fundamental dos dados de base e reuperavel e processo para criar aquele suporte de dados
US6584499B1 (en) 1999-07-09 2003-06-24 Lsi Logic Corporation Methods and apparatus for performing mass operations on a plurality of managed devices on a network
US6769022B1 (en) 1999-07-09 2004-07-27 Lsi Logic Corporation Methods and apparatus for managing heterogeneous storage devices
US6629111B1 (en) 1999-10-13 2003-09-30 Cisco Technology, Inc. Memory allocation system
US6338126B1 (en) 1999-12-06 2002-01-08 Legato Systems, Inc. Crash recovery without complete remirror
US6477612B1 (en) 2000-02-08 2002-11-05 Microsoft Corporation Providing access to physical memory allocated to a process by selectively mapping pages of the physical memory with virtual memory allocated to the process
US6427198B1 (en) 2000-02-15 2002-07-30 International Business Machines Corporation Method, system, and program for determining system configuration
US6625754B1 (en) 2000-03-16 2003-09-23 International Business Machines Corporation Automatic recovery of a corrupted boot image in a data processing system
US6687849B1 (en) 2000-06-30 2004-02-03 Cisco Technology, Inc. Method and apparatus for implementing fault-tolerant processing without duplicating working process
US6701421B1 (en) 2000-08-17 2004-03-02 International Business Machines Corporation Application-level memory affinity control
US6697971B1 (en) 2000-10-24 2004-02-24 Hewlett-Packard Development Company, L.P. System and method for detecting attempts to access data residing outside of allocated memory
US6684293B1 (en) 2001-03-27 2004-01-27 Novell, Inc. Methods and computer readable media for preserving unique critical information during data imaging
US6671777B1 (en) 2001-06-15 2003-12-30 Lsi Logic Corporation Data storage system and method for managing critical data in an N-way mirrored storage device using first and second sequence numbers
US6779130B2 (en) 2001-09-13 2004-08-17 International Business Machines Corporation Method and system for root filesystem replication
US6715055B1 (en) 2001-10-15 2004-03-30 Advanced Micro Devices, Inc. Apparatus and method for allocating buffer space
US7426554B2 (en) 2002-03-06 2008-09-16 Sun Microsystems, Inc. System and method for determining availability of an arbitrary network configuration
US6910100B2 (en) * 2002-03-13 2005-06-21 Intel Corporation Detecting open write transactions to mass storage
US6732171B2 (en) 2002-05-31 2004-05-04 Lefthand Networks, Inc. Distributed network storage system with virtualization
US20040028069A1 (en) * 2002-08-07 2004-02-12 Tindal Glen D. Event bus with passive queuing and active routing
EP1584016A4 (en) * 2003-01-13 2009-03-11 Hewlett Packard Development Co MOBILE COMBINER HAVING THE CAPACITY TO UPDATE ITS UPDATE AGENT
US20050144609A1 (en) * 2003-12-12 2005-06-30 Intel Corporation Methods and apparatus to provide a robust code update

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999018507A1 (en) * 1997-10-08 1999-04-15 Seagate Technology, Inc. Hybrid data storage and reconstruction system and method for a data storage device
WO2001077908A2 (en) * 2000-03-30 2001-10-18 Microsoft Corporation Transactional file system
WO2004036353A2 (en) * 2002-10-17 2004-04-29 Spinnaker Networks, Inc. Method and system for providing persistent storage of user data
JP2006503370A (ja) * 2002-10-17 2006-01-26 スピンネイカー・ネットワークス・インコーポレイテッド 利用者データの永続的な格納を提供するための方法およびシステム
WO2004046971A1 (en) * 2002-11-14 2004-06-03 Isilon Systems, Inc. Systems and methods for restriping files in a distributed file system

Also Published As

Publication number Publication date
US20060085617A1 (en) 2006-04-20
US7330955B2 (en) 2008-02-12

Similar Documents

Publication Publication Date Title
EP3800554B1 (en) Storage system managing metadata, host system controlling storage system, and storage system operating method
US10140041B1 (en) Mapped RAID (redundant array of independent disks) in a data storage system with RAID extent sub-groups that are used to perform drive extent allocation and data striping for sequential data accesses to a storage object
US6898668B2 (en) System and method for reorganizing data in a raid storage system
US7831764B2 (en) Storage system having plural flash memory drives and method for controlling data storage
US6647460B2 (en) Storage device with I/O counter for partial data reallocation
US6282670B1 (en) Managing defective media in a RAID system
US7523356B2 (en) Storage controller and a system for recording diagnostic information
US5950230A (en) RAID array configuration synchronization at power on
CN110096217B (zh) 用于重新定位数据的方法、数据存储系统和介质
WO2009130848A1 (ja) ストレージシステム及びストレージシステムの制御方法
US10552078B2 (en) Determining an effective capacity of a drive extent pool generated from one or more drive groups in an array of storage drives of a data storage system that uses mapped RAID (redundant array of independent disks) technology
US7587630B1 (en) Method and system for rapidly recovering data from a “dead” disk in a RAID disk group
US20170300393A1 (en) Raid rebuild algorithm with low i/o impact
JP2006120120A (ja) 複数のデータ・フォーマットを割り振るための一般記憶コンテナ
WO2014098872A1 (en) Raid storage processing
CN111124262B (zh) 独立盘冗余阵列(raid)的管理方法、设备和计算机可读介质
JP2006120119A (ja) 二重制御装置を有する冗長データ記憶システムおよびその動作方法
JP2006114008A (ja) システム構成を更新するための回復記録を構成するための方法および装置
US20050076260A1 (en) Raid consistency initialization method
CN109558068B (zh) 数据迁移方法及迁移系统
JP2006252165A (ja) ディスクアレイ装置、及びコンピュータシステム
JP6957845B2 (ja) ストレージ制御装置及びストレージ装置
CN107491263B (zh) 一种基于存储对象的数据重构方法
JP3967073B2 (ja) Raid制御装置
JP5601053B2 (ja) 制御装置、制御モジュールおよび制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080512

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110215

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110516

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110519

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110523

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110705