JP2012509521A - ソリッドステートドライブデータを回復するためのシステム及び方法 - Google Patents

ソリッドステートドライブデータを回復するためのシステム及び方法 Download PDF

Info

Publication number
JP2012509521A
JP2012509521A JP2011536302A JP2011536302A JP2012509521A JP 2012509521 A JP2012509521 A JP 2012509521A JP 2011536302 A JP2011536302 A JP 2011536302A JP 2011536302 A JP2011536302 A JP 2011536302A JP 2012509521 A JP2012509521 A JP 2012509521A
Authority
JP
Japan
Prior art keywords
ssd
data blocks
data
faulty
drive
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.)
Ceased
Application number
JP2011536302A
Other languages
English (en)
Other versions
JP2012509521A5 (ja
Inventor
マッキーン,ブライアン
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.)
LSI Corp
Original Assignee
LSI Logic 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 LSI Logic Corp filed Critical LSI Logic Corp
Publication of JP2012509521A publication Critical patent/JP2012509521A/ja
Publication of JP2012509521A5 publication Critical patent/JP2012509521A5/ja
Ceased 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • G06F11/1662Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2094Redundant storage or storage space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

ソリッドステートドライブ(SSD)データを回復するための方法は、1又は複数のデータブロックを含む障害のあるSSDを検出し、該障害のあるSSDの1又は複数のデータブロックへのデータ書込み要求を受信すると、作業用ドライブの1又は複数のデータブロックにデータを書き込み、障害のあるSSD、及び作業用ドライブの1又は複数のデータブロックから障害のあるSSDを再構築する。SSDデータを回復するためのシステムは、1又は複数のデータブロックを含む障害のあるSSDを検出する手段と、障害のあるSSDの1又は複数のデータブロックへのデータ書込み要求を受信する手段と、作業用ドライブの1又は複数のデータブロックに書き込み要求されたデータを書き込む手段と、障害のあるSSD及び作業用ドライブの1又は複数のデータブロックから障害のあるSSDを再構築する手段とを備えている。

Description

本発明は、ソリッドステートドライブデータを回復するためのシステム及び方法に関する。
ソリッドステートドライブ(SSD)は、そのドライブが基にしているNAND技術のプログラム/消去サイクル数が限られているので、経時的に摩耗する場合がある。経時的に、SSDは、消去サイクルがNANDフラッシュブロックを書込み可能な状態にリセットできない点に達する場合がある。そのようなSSDは障害のあると言われる場合がある。スピンドルを基にする従来のディスクドライブをハンドリングするように設計される現在のディスクアレイコントローラは、読出し及び書込みの両方に悪影響を与え、ドライブを役に立たなくする故障モードを採用している場合がある。
しかしながら、SSDの中には、読出しのみ可能である故障モード(read-only failure mode)を採用するSSDもあり、該故障モードにおいては、結果として書込みコマンドが失敗する場合であっても、ドライブが読出しコマンドを問題なく実行できるようになる。失敗した書込みコマンドに対する現在のディスクアレイコントローラの典型的な応答は、そのドライブを故障していると指摘することであるので、そのようなコントローラは、SSDの読出しのみ可能である故障モードを有効に利用することはできない。
したがって、本発明の目的は、ソリッドステートドライブ(SSD)データを回復するためのシステム及び方法を提供することである。
本発明に係るソリッドステートドライブ(SSD)データを回復するための方法は、1又は複数のデータブロックを含む障害のあるSSDを検出するステップと、前記障害のあるSSDの前記1又は複数のデータブロックへのデータ書込み要求を受信するステップと、作業用ドライブの1又は複数のデータブロックに前記データを書き込むステップと、前記障害のあるSSD、及び前記作業用ドライブの前記1又は複数のデータブロックから前記障害のあるSSDを再構築するステップと、を含んでいる。
本発明に係るソリッドステートドライブ(SSD)データを回復するためのシステムは、1又は複数のデータブロックを含む障害のあるSSDを検出する手段と、前記障害のあるSSDの前記1又は複数のデータブロックへのデータ書込み要求を受信する手段と、作業用ドライブの1又は複数のデータブロックに前記データを書き込む手段と、前記障害のあるSSD、及び前記作業用ドライブの前記1又は複数のデータブロックから前記障害のあるSSDを再構築する手段と、を備えている。
上記した発明の概要及び以下の詳細な説明は単に例示し説明するためのものであり、必ずしも特許請求の範囲を制限するものではないことを理解されたい。本明細書において援用され、その一部を構成する添付の図面は、いくつかの例を示しており、概要と共に、本開示の原理を説明するのに有用である。
添付の図面を参照することによって、当業者は本開示の多数の利点をより良好に理解することができるであろう。
ソリッドステートドライブ(SSD)データを回復するためのハイレベルブロックシステムを示す図である。 ソリッドステートドライブ(SSD)データを回復するための過程を示す図である。 ソリッドステートドライブ(SSD)データを回復するための過程を示す図である。 ソリッドステートドライブ(SSD)データを回復するための過程を示す図である。 ソリッドステートドライブ(SSD)データを回復するための過程を示す図である。 ソリッドステートドライブ(SSD)データを回復するための過程を示す図である。 SSD構成を示す図である。 ルックアップテーブル構成を示す図である。 SSD構成を示す図である。 ルックアップテーブル構成を示す図である。
以下の詳細な説明では、本明細書の一部を形成する添付の図面が参照される。図面において、文脈において他に指示されない限り、類似の符号は通常類似の構成要素を特定する。詳細な説明、図面及び特許請求の範囲において記述される例示的な実施形態は、限定することを意図していない。本明細書において提示される主題の技術的思想及び範囲から逸脱することなく、他の実施形態が利用され、かつ他の変更が加えられるであろう。
図1は、1又は複数の技術が具備される1つのシステム例であり、コンピューティングデバイス101、アレイコントローラ102及びドライブアレイ103を含むデータ記憶システム100を示している。アレイコントローラ102は、ドライブ管理用の電子回路/ソフトウエアを含み、それにより、アレイコントローラ102は、ドライブアレイ103の種々のドライブにアクセスするコンピューティングデバイス101の読出し/書込み要求を処理することができる。ドライブアレイ103は、少なくとも1つのSSD104及び少なくとも1つの作業用ドライブ105を含む、1又は複数のドライブを含む。作業用ドライブ105は、SSD又はハードディスクドライブ(HDD)である。
図2は、SDD回復に関連する動作例を表す動作フロー200を示している。図2及び動作フローの種々の例を含む図3以降の図において、図1の上記の例に関連して及び/又は他の例及び状況に関連して、検討され説明される。しかしながら、多くの他の環境及び状況において、及び/又は図1のシステムを修正したシステムにおいて、それらの動作フローが実行される場合があることは理解されるであろう。さらに、示されるシーケンス(複数可)において、種々の動作フローが提示されるが、種々の動作は、示される順序以外の順序で実行してもよく、同時に実行してもよいことは理解されるであろう。
開始動作後の動作210は、1又は複数のデータブロックを含む障害のあるSSDを検出することである。例えば、図1に示されるように、アレイコントローラ102は、ドライブアレイ103のデータブロック106への書込み命令をドライブアレイ103がもはや処理することができないことを検出する。
次の動作220では、障害のあるSSDの1又は複数のデータブロックへのデータ書込み要求を受信する。例えば、図1に示されるように、アレイコントローラ102は、コンピューティングデバイス101から、SSD104のデータブロック106へのデータ書込み要求を受信する。
動作230では、作業用ドライブの1又は複数のデータブロックにデータを書き込む。例えば、図1に示されるように、アレイコントローラ102は、ドライブアレイ103が作業用ドライブ105のデータブロック107にデータを書き込むようにすることができる。
動作240では、障害のあるSSD、及び作業用ドライブの1又は複数のデータブロックから、障害のあるSSDを再構築する。例えば、図1に示されるように、アレイコントローラ102は、SSD104及び作業用ドライブ105の現在の内容からSSD104を代替SSD111に再構築することができる。
図3は、図2の例示的な動作フロー200の代替的な実施形態を示す。図3は例示的な実施形態を示しており、検出動作210は、少なくとも1つの付加的な動作を含んでいる。付加的な動作は、動作302である。
動作302は、SSDの1又は複数のデータブロックを対象とする失敗した書込みを検出することである。例えば、図1に示されるように、アレイコントローラ102は、SSD104のデータブロック106を対象とする書込み命令をドライブアレイ103がもはや処理することができないことを検出する。
図4は、図2の例示的な動作フロー200の代替的な実施形態を示す。図4は例示的な実施形態を示しており、動作フロー200は、少なくとも1つの付加的な動作を含む。付加的な動作は、動作402及び/又は動作404である。
動作402では、リダイレクトオンライト(redirect-on-write)スナップショット法に従って、作業用ドライブの1又は複数のデータブロックにデータを書き込む。例えば、アレイコントローラ102は、SSD104が同じデータの以前に書き込まれたコピーとは異なる場所に、新たに書き込まれるデータを入れるように制御する。図7Aに示されるように、SSD104に複数のデータセグメントが書き込まれる場合がある。作業用ドライブ105は、消去されており、書き込まれる準備ができているSSDとすることができる。図7Bに示されるように、ルックアップテーブル108Aが、それらのデータブロックから、それらの個々のフラッシュブロック及びページへのマッピングを保持する。
動作210及び動作220に関連して上述したように、アレイコントローラ102は、SSD104のセグメント210及び211のための書込みコマンドを受信する。SSD104の1又は複数のデータブロックの故障が検出された場合には、データ記憶システム100は、リダイレクトオンライトスナップショット法を利用して、SSD104内のデータの完全性を保持する。
図8Aに示されるように、アレイコントローラ102は、セグメント210及び211のための新たなデータを受け取り、そのデータを作業用ドライブ105の予め消去されたエリアに書き込むことができる。SSD104は変わらないままであってもよい(図8Aは、SSD104内のブロック210及び211のためのデータが「古い」データであること示すように変更される)。
作業用ドライブ105への書込みが完了すると、作業用ドライブ105の状態は図8Aに示されるようになる。SSD104全体が、再利用に備えて再生され、消去されるまで、セグメント210及び211の古いコピーはSSD104の中にとどまってもよい。アレイコントローラ102内のルックアップテーブル108Aを更新して、データセグメント210及び211のための新たなアドレスを反映させ、図8Bに示されるように表示する。
動作404では、障害のあるSSD及び作業用SSDのためのデータブロックマッピングを含む、1又は複数のルックアップテーブルを更新する。例えば、図1に示されるように、アレイコントローラ102は、1又は複数のルックアップテーブル(例えば、ルックアップテーブル108A及びルックアップテーブル108B)を含み、それらのルックアップテーブルは、SSD104及び/又は作業用ドライブ105内のメモリブロック要素及びそれらの個々のフラッシュアドレスのマッピングリストを保持する。
SSD104は、書込みコマンドが受信される毎にリダイレクトオンライトを実行することができるので、SSD104はユーザーデータの以前のコピーを保持することができ、そのコピーを用いて、性能を低下させることなく、現在のデータ及び以前のスナップショットデータの両方を再構成することができる。SSD104内のデータの以前のバージョンを指示することができる付加的なルックアップテーブル108Bを追加することによって、データ記憶システム100は、デバイス内に格納されるデータの複数の時点のコピーにアクセスすることができる。
例えば、アレイコントローラ102は、セグメント210及び211の書込み前に、データの或る時点のコピーを格納するコマンドを受信することができる。図9Aに示されるように、アレイコントローラ102は、図9Bに示されるアドレスのためのルックアップテーブルのコピーを、ルックアップテーブル108A内のその時点のコピーのためのアドレスへのポインタとして保持することができる。図9Bに示されるように、ボリュームが更新されるのに応じて、第2のルックアップテーブル108B内に、その時点で見えているデータを保持することができる。アレイコントローラ102は、スナップショットのための空間を有し、かつそのスナップショットが他の動作によって終了されない限り、両方のテーブルのコピーを保持することができる。
図5は、図2の例示的な動作フロー200の代替的な実施形態を示す。図5は例示的な実施形態を示しており、再構築の動作240は、少なくとも1つの付加的な動作を含んでいる。該付加的な動作は、動作502及び/又は動作504である。
動作502では、書込み要求が受信されなかった、障害のあるSSDの1又は複数のデータブロックを代替SSDにコピーする。例えば、図1に示されるように、アレイコントローラ102は、書込み要求によってアドレス指定されなかったSSD104の部分(例えば、変更されていないデータブロック109)が代替SSD111のデータブロック110にコピーされるように制御することができる。
動作504では、作業用ドライブの1又は複数のデータブロックを代替SSDにコピーする。例えば、図1に示されるように、アレイコントローラ102は、SSD104を対象とする書込み動作が失敗するのに応答して書き込まれた作業用ドライブ105の部分(例えば、データブロック107)が、代替SSD111のデータブロック112にコピーされる制御することができる。
図6は、図2の例示的な動作フロー200の代替的な実施形態を示す。図6は例示的な実施形態を示しており、動作フロー200は、少なくとも1つの付加的な動作を含んでいる。該付加的な動作は、動作610である。
動作610では、作業用ドライブの1又は複数のデータブロックを対象とする読出し要求を代替SSDの1又は複数のデータブロックにリダイレクトする。例えば、図1に示されるように、それは、作業用ドライブ105がHDDを含む場合に実行される。SSD技術は、HDD作業用ドライブ105からのデータブロックのコピー中に、HDDよりも速い読出し性能を提供するので、アレイコントローラ102は、代替SSD111に書き込まれたデータの範囲へのポインタを保持することができる。アレイコントローラ102が、HDD作業用ドライブ105から代替SSD111に既にコピーされているデータ(例えば、データブロック112)に対する読出し要求を受信すると、アレイコントローラ102は、その読出し要求の対象を代替SSD111にすることができる。したがって、代替SSD111は、その故障前であれば、HDD作業用ドライブ105によって提供されていたIOストリームの部分を提供することができ、それにより、IOがHDD作業用ドライブ105によって提供された状況と比べて、高性能レベルを維持することができる。
本発明、及び関連する利点の多くがこれまでの説明によって理解されるものと考えられる。また、本発明の範囲及び精神から逸脱することなく、又はその重要な利点の全てを犠牲にすることなく、その構成要素の形、構成及び配列において種々の変更を加えられることは明らかであると考えられる。本明細書において上記で説明された形は、説明のための実施形態にすぎない。添付の特許請求の範囲は、そのような変更を網羅し、包含することを意図している。
これまでの詳細な説明は、ブロック図、フロー図及び/又は例を用いることによって、デバイス及び/又は過程の種々の実施形態を述べている。そのようなブロック図、フロー図及び/又は例が1又は複数の機能及び/又は動作を含む限り、そのようなブロック図、フロー図又は例内の各機能及び/又は動作は、広範のハードウエア、ソフトウエア、ファームウエア又は概ね任意のその組み合わせによって、個々に、かつ/又はまとめて実施することができることは当業者には理解されるであろう。一実施形態では、本明細書において記述される主題のいくつかの部分は、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタルシグナルプロセッサ(DSP)又は他の集積形態によって実施される場合がある。しかしながら、本明細書において開示される実施形態のいくつかの態様が、全体として、又は部分的に、集積回路において、1つ若しくは複数のコンピューター上で実行される1つ若しくは複数のコンピュータープログラムとして(例えば、1つ若しくは複数のコンピューターシステム上で実行される1つ若しくは複数のプログラムとして)、1つ若しくは複数のプロセッサ上で実行される1つ若しくは複数のプログラムとして(例えば、1つ若しくは複数のマイクロプロセッサ上で実行される1つ若しくは複数のプログラムとして)、ファームウエアとして、又は概ね任意のそれらの組み合わせとして同等に実施することができること、及び本開示を踏まえて回路を設計すること、及び/又はソフトウエア及び/又はファームウエアのためのコードを書くことは、当業者の技量の範囲内で十分に行なわれることを当業者は理解するであろう。
さらに、当業者は、本明細書において記述される主題の機構は種々の形でプログラム製品として分配することができること、及び実際に分配を実行するために用いられる特定のタイプの信号搬送媒体にかかわらず、本明細書において記述される主題の例示的な実施形態が適用されることを理解されよう。信号搬送媒体の例は、限定はしないが、フロッピィディスク、ハードディスクドライブ、コンパクトディスク(CD)、デジタルビデオディスク(DVD)、デジタルテープ、コンピューターメモリ等の記録可能なタイプの媒体、並びにデジタル及び/又はアナログ通信媒体(例えば、光ファイバーケーブル、導波路、有線通信リンク、無線通信リンク(例えば、送信機、受信機、送信ロジック、受信ロジック等)等)のような伝送タイプの媒体を含む。
システムの態様のハードウエア、ソフトウエア及び/又はファームウエアによる実施態様の間にほとんど区別がないような段階まで最新技術が進んでいることを当業者は理解されよう。ハードウエア、ソフトウエア及び/又はファームウエアを使用することは一般的に(しかしながら、或る特定の状況では、ハードウエアとソフトウエアとの間の選択が重大な意味を持つ可能性があるという点で、必ずしも一般的ではない)、コスト対効率のトレードオフを表す設計上の選択である。本明細書において記述される過程及び/又はシステム及び/又は他の技術を達成することができる種々の手段(例えば、ハードウエア、ソフトウエア及び/又はファームウエア)が存在すること、並びに好ましい手段は、それらの過程及び/又はシステム及び/又は技術が展開される状況に応じて異なることを当業者は理解されよう。例えば、実施者が、速度及び精度が重要であると判断する場合には、その実施者は主にハードウエア及び/又はファームウエア手段を選択することができる。代替的には、自由度が重要である場合には、その実施者は主にソフトウエアの実施形態を選択することができ、さらに代替的には、実施者は、ハードウエア、ソフトウエア及び/又はファームウエアの或る組み合わせを選択することもできる。それゆえ、本明細書において記述される過程及び/又はデバイス及び/又は他の技術を達成することができるいくつかの取り得る手段が存在するが、それらの手段は、利用されるべき手段が、その手段が展開されることになる状況、及び実施者の具体的な関心事(例えば、速度、自由度又は予測可能性)に応じて選択され、そのうちのいずれも変わる場合があるという点で、いずれも他よりも本質的に優れているものはない。実施形態の光学的な態様が通常、光学指向のハードウエア、ソフトウエア及び/又はファームウエアを利用することを当業者は理解するであろう。

Claims (18)

  1. ソリッドステートドライブ(SSD)データを回復するための方法であって、
    1又は複数のデータブロックを含む障害のあるSSDを検出するステップと、
    前記障害のあるSSDの前記1又は複数のデータブロックへのデータ書込み要求を受信するステップと、
    作業用ドライブの1又は複数のデータブロックに前記データを書き込むステップと、
    前記障害のあるSSD、及び前記作業用ドライブの前記1又は複数のデータブロックから前記障害のあるSSDを再構築するステップと
    を含むことを特徴とする方法。
  2. 請求項1記載の方法において、前記1又は複数のデータブロックを含む障害のあるSSDを検出するステップは、
    前記SSDの1又は複数のデータブロックに向けられた失敗した書込みを検出するステップ
    を含むことを特徴とする方法。
  3. 請求項1記載の方法において、前記作業用ドライブの1又は複数のデータブロックに前記データを書き込むステップは、
    リダイレクトオンライトスナップショット法に従って作業用ドライブの1又は複数のデータブロックに前記データを書き込むステップ
    を含むことを特徴とする方法。
  4. 請求項1記載の方法において、前記作業用ドライブの1又は複数のデータブロックに前記データを書き込むステップは、
    前記障害のあるSSD及び作業用SSDのためのデータブロックマッピングを含む1又は複数のルックアップテーブルを更新するステップ
    を含むことを特徴とする方法。
  5. 請求項1記載の方法において、前記前記障害のあるSSD、及び前記作業用ドライブの前記1又は複数のデータブロックから前記障害のあるSSDを再構築するステップは、
    書込み要求が受信されなかった、前記障害のあるSSDの1又は複数のデータブロックを代替SSDにコピーするステップと、
    前記作業用ドライブの前記1又は複数のデータブロックを前記代替SSDにコピーするステップと
    を含むことを特徴とする方法。
  6. 請求項5記載の方法において、前記作業用ドライブの前記1又は複数のデータブロックを前記代替SSDにコピーするステップは、
    前記作業用ドライブの前記1又は複数のデータブロックを対象とする読出し要求を前記代替SSDの1又は複数のデータブロックにリダイレクト(対象変更)するステップ
    を含むことを特徴とする方法。
  7. ソリッドステートドライブ(SSD)データを回復するためのシステムであって、
    1又は複数のデータブロックを含む障害のあるSSDを検出する手段と、
    前記障害のあるSSDの前記1又は複数のデータブロックへのデータ書込み要求を受信する手段と、
    作業用ドライブの1又は複数のデータブロックに前記データを書き込む手段と、
    前記障害のあるSSD、及び前記作業用ドライブの前記1又は複数のデータブロックから前記障害のあるSSDを再構築する手段と
    を備えることを特徴とするシステム。
  8. 請求項7記載のシステムにおいて、前記1又は複数のデータブロックを含む障害のあるSSDを検出する手段は、
    前記SSDの1又は複数のデータブロックを対象とする失敗した書込みを検出する手段
    を備えることを特徴とするシステム。
  9. 請求項7記載のシステムにおいて、前記作業用ドライブの1又は複数のデータブロックに前記データを書き込む手段は、
    リダイレクトオンライトスナップショット法に従って作業用ドライブの1又は複数のデータブロックに前記データを書き込む手段
    を備えることを特徴とするシステム。
  10. 請求項7記載のシステムにおいて、前記作業用ドライブの1又は複数のデータブロックに前記データを書き込む手段は、
    前記障害のあるSSD及び作業用SSDのためのデータブロックマッピングを含む1又は複数のルックアップテーブルを更新する手段
    を備えることを特徴とするシステム。
  11. 請求項7記載のシステムにおいて、前記障害のあるSSD、及び前記作業用ドライブの前記1又は複数のデータブロックから前記障害のあるSSDを再構築する手段は、
    書込み要求が受信されなかった、前記障害のあるSSDの1又は複数のデータブロックを代替SSDにコピーする手段と、
    前記作業用ドライブの前記1又は複数のデータブロックを前記代替SSDにコピーする手段と
    を備えることを特徴とするシステム。
  12. 請求項11記載のシステムにおいて、前記作業用ドライブの前記1又は複数のデータブロックを前記代替SSDに前記コピーする手段は、
    前記作業用ドライブの前記1又は複数のデータブロックに向けられた読出し要求を前記代替SSDの1又は複数のデータブロックにリダイレクトする手段
    を備えることを特徴とするシステム。
  13. ソリッドステートドライブ(SSD)データを回復するためのシステムであって、
    1又は複数のデータブロックを含む障害のあるSSDを検出する回路と、
    前記障害のあるSSDの前記1又は複数のデータブロックへのデータ書込み要求を受信する回路と、
    作業用ドライブの1又は複数のデータブロックに前記データを書き込む回路と、
    前記障害のあるSSD、及び前記作業用ドライブの前記1又は複数のデータブロックから前記障害のあるSSDを再構築する回路と
    を備えることを特徴とするシステム。
  14. 請求項13記載のシステムにおいて、前記1又は複数のデータブロックを含む障害のあるSSDを検出する回路は、
    前記SSDの1又は複数のデータブロックを対象とする失敗した書込みを検出する回路
    を備えることを特徴とするシステム。
  15. 請求項13記載のシステムにおいて、前記作業用ドライブの1又は複数のデータブロックに前記データを書き込む手段は、
    リダイレクトオンライトスナップショット法に従って作業用ドライブの1又は複数のデータブロックに前記データを書き込む回路
    を備えることを特徴とするシステム。
  16. 請求項13記載のシステムにおいて、前記作業用ドライブの1又は複数のデータブロックに前記データを書き込む回路は、
    前記障害のあるSSD及び作業用SSDのためのデータブロックマッピングを含む1又は複数のルックアップテーブルを更新する回路
    を備えることを特徴とするシステム。
  17. 請求項13記載のシステムにおいて、前記障害のあるSSD、及び前記作業用ドライブの前記1又は複数のデータブロックから前記障害のあるSSDを再構築する回路は、
    書込み要求が受信されなかった、前記障害のあるSSDの1又は複数のデータブロックを代替SSDにコピーする回路と、
    前記作業用ドライブの前記1又は複数のデータブロックを前記代替SSDにコピーする回路と
    を備えることを特徴とするシステム。
  18. 請求項17記載のシステムにおいて、前記作業用ドライブの前記1又は複数のデータブロックを前記代替SSDに前記コピーする回路は、
    前記作業用ドライブの前記1又は複数のデータブロックに向けられた読出し要求を前記代替SSDの1又は複数のデータブロックにリダイレクトする回路
    を備えることを特徴とするシステム。
JP2011536302A 2008-11-18 2009-03-31 ソリッドステートドライブデータを回復するためのシステム及び方法 Ceased JP2012509521A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/313,205 US8041991B2 (en) 2008-11-18 2008-11-18 System and method for recovering solid state drive data
US12/313,205 2008-11-18
PCT/US2009/001986 WO2010059173A1 (en) 2008-11-18 2009-03-31 System and method for recovering solid state drive data

Publications (2)

Publication Number Publication Date
JP2012509521A true JP2012509521A (ja) 2012-04-19
JP2012509521A5 JP2012509521A5 (ja) 2012-06-07

Family

ID=42172910

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011536302A Ceased JP2012509521A (ja) 2008-11-18 2009-03-31 ソリッドステートドライブデータを回復するためのシステム及び方法

Country Status (7)

Country Link
US (1) US8041991B2 (ja)
EP (1) EP2356658A4 (ja)
JP (1) JP2012509521A (ja)
KR (1) KR20110091677A (ja)
CN (1) CN102197438B (ja)
TW (1) TWI442225B (ja)
WO (1) WO2010059173A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013246479A (ja) * 2012-05-23 2013-12-09 Fujitsu Ltd 処理装置,処理方法,処理プログラム及び管理装置
JP2014182503A (ja) * 2013-03-18 2014-09-29 Toshiba Corp 情報処理システム、制御プログラムおよび情報処理装置
JP7543619B2 (ja) 2020-07-13 2024-09-03 三星電子株式会社 エフェメラルストレージに対するデータ復元のためのシステム及び装置

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8230255B2 (en) * 2009-12-15 2012-07-24 International Business Machines Corporation Blocking write acces to memory modules of a solid state drive
US8904006B2 (en) 2010-12-08 2014-12-02 International Business Machines Corporation In-flight block map for a clustered redirect-on-write filesystem
US8396832B2 (en) 2010-12-08 2013-03-12 International Business Machines Corporation Independent fileset generations in a clustered redirect-on-write filesystem
US8626713B2 (en) 2010-12-08 2014-01-07 International Business Machines Corporation Multiple contexts in a redirect on write file system
US8458181B2 (en) 2010-12-08 2013-06-04 International Business Machines Corporation Distributed free block map for a clustered redirect-on-write file system
CN102033793A (zh) * 2010-12-14 2011-04-27 成都市华为赛门铁克科技有限公司 快照方法和固态硬盘
JP5505329B2 (ja) * 2011-02-22 2014-05-28 日本電気株式会社 ディスクアレイ装置及びその制御方法
JP5002719B1 (ja) 2011-03-10 2012-08-15 株式会社東芝 情報処理装置、外部記憶装置、ホスト装置、中継装置、制御プログラム及び情報処理装置の制御方法
KR101659922B1 (ko) * 2012-07-30 2016-09-26 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 솔리드 스테이트 저장 장치를 위한 배드 블록 보상
WO2014057515A1 (en) * 2012-10-10 2014-04-17 Hitachi, Ltd. Storage apparatus comprising snapshot function, and storage control method
US9122587B2 (en) 2013-03-06 2015-09-01 Seagate Technology Llc Self recovery in a solid state drive
US9478271B2 (en) * 2013-03-14 2016-10-25 Seagate Technology Llc Nonvolatile memory data recovery after power failure
JP6055544B2 (ja) 2013-06-03 2016-12-27 株式会社日立製作所 ストレージ装置およびストレージ装置制御方法
US9946616B2 (en) 2014-01-29 2018-04-17 Hitachi, Ltd. Storage apparatus
US9665479B2 (en) 2014-02-11 2017-05-30 Seagate Technology Llc Managing response time
WO2016001962A1 (ja) * 2014-06-30 2016-01-07 株式会社日立製作所 ストレージシステム及び記憶制御方法
US10204003B2 (en) 2014-08-27 2019-02-12 Hitachi, Ltd. Memory device and storage apparatus
US9575853B2 (en) * 2014-12-12 2017-02-21 Intel Corporation Accelerated data recovery in a storage system
JP6489827B2 (ja) * 2014-12-26 2019-03-27 キヤノン株式会社 画像処理装置、画像処理装置の制御方法及びプログラム
US10013171B2 (en) 2015-06-29 2018-07-03 International Business Machines Corporation Reducing stress on RAIDS under rebuild
US10445200B2 (en) 2016-05-02 2019-10-15 Samsung Electronics Co., Ltd. Storage device having various recovery methods and recovery modes
USRE50129E1 (en) 2016-05-02 2024-09-17 Samsung Electronics Co., Ltd. Storage device having various recovery methods and recovery modes
KR102628239B1 (ko) 2016-05-02 2024-01-24 삼성전자주식회사 스토리지 장치, 스토리지 장치의 동작 방법, 그리고 스토리지 장치 및 호스트 장치를 포함하는 컴퓨팅 장치의 동작 방법
KR102106689B1 (ko) * 2018-03-09 2020-05-04 한국과학기술원 사용자 데이터 보호를 제공하는 데이터 가용성 ssd 아키텍처
KR102586741B1 (ko) * 2018-04-23 2023-10-11 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
US10996894B2 (en) * 2019-07-17 2021-05-04 International Business Machines Corporation Application storage segmentation reallocation

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6464047A (en) * 1987-09-04 1989-03-09 Fujitsu Ltd Disk cache control system
US5088081A (en) * 1990-03-28 1992-02-11 Prime Computer, Inc. Method and apparatus for improved disk access
JPH05120153A (ja) * 1991-10-24 1993-05-18 Fujitsu Ltd 交代メモリ制御方式
JPH05150913A (ja) * 1991-11-29 1993-06-18 Hitachi Ltd フラツシユメモリを記憶媒体としたシリコンデイスク
JPH07325674A (ja) * 1994-06-01 1995-12-12 Hitachi Ltd 半導体メモリの交換方法および半導体ディスクサブシステムの制御方法
US20010010085A1 (en) * 1999-03-31 2001-07-26 International Business Machines Corp. Recovering and relocating unreliable disk sectors when encountering disk drive read errors
JP2005531071A (ja) * 2002-06-24 2005-10-13 ネットワーク・アプライアンス・インコーポレイテッド Raidデータの復元および移動でのファイルシステム情報の使用
JP2007028502A (ja) * 2005-07-21 2007-02-01 Hitachi Ltd ストレージ装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3183719B2 (ja) * 1992-08-26 2001-07-09 三菱電機株式会社 アレイ型記録装置
JP3561002B2 (ja) * 1994-05-18 2004-09-02 富士通株式会社 ディスク装置
US6560718B1 (en) * 1999-11-30 2003-05-06 Stmicroelectronics, Inc. Disk drive error recovery and defect management method
US6598174B1 (en) * 2000-04-26 2003-07-22 Dell Products L.P. Method and apparatus for storage unit replacement in non-redundant array
US7149846B2 (en) * 2002-04-17 2006-12-12 Lsi Logic Corporation RAID protected external secondary memory
US7197662B2 (en) * 2002-10-31 2007-03-27 Ring Technology Enterprises, Llc Methods and systems for a storage system
US7373559B2 (en) * 2003-09-11 2008-05-13 Copan Systems, Inc. Method and system for proactive drive replacement for high availability storage systems
JP4426262B2 (ja) * 2003-11-26 2010-03-03 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の障害回避方法
US7490261B2 (en) * 2003-12-18 2009-02-10 Seagate Technology Llc Background media scan for recovery of data errors
US7711897B1 (en) * 2005-06-10 2010-05-04 American Megatrends, Inc. Method, system, apparatus, and computer-readable medium for improving disk array performance
US7516267B2 (en) 2005-11-03 2009-04-07 Intel Corporation Recovering from a non-volatile memory failure
JP2007199953A (ja) * 2006-01-25 2007-08-09 Fujitsu Ltd ディスクアレイ装置およびディスクアレイ制御方法
US8151060B2 (en) * 2006-11-28 2012-04-03 Hitachi, Ltd. Semiconductor memory system having a snapshot function
US20090063895A1 (en) * 2007-09-04 2009-03-05 Kurt Smith Scaleable and maintainable solid state drive

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6464047A (en) * 1987-09-04 1989-03-09 Fujitsu Ltd Disk cache control system
US5088081A (en) * 1990-03-28 1992-02-11 Prime Computer, Inc. Method and apparatus for improved disk access
JPH05120153A (ja) * 1991-10-24 1993-05-18 Fujitsu Ltd 交代メモリ制御方式
JPH05150913A (ja) * 1991-11-29 1993-06-18 Hitachi Ltd フラツシユメモリを記憶媒体としたシリコンデイスク
JPH07325674A (ja) * 1994-06-01 1995-12-12 Hitachi Ltd 半導体メモリの交換方法および半導体ディスクサブシステムの制御方法
US20010010085A1 (en) * 1999-03-31 2001-07-26 International Business Machines Corp. Recovering and relocating unreliable disk sectors when encountering disk drive read errors
JP2005531071A (ja) * 2002-06-24 2005-10-13 ネットワーク・アプライアンス・インコーポレイテッド Raidデータの復元および移動でのファイルシステム情報の使用
JP2007028502A (ja) * 2005-07-21 2007-02-01 Hitachi Ltd ストレージ装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013246479A (ja) * 2012-05-23 2013-12-09 Fujitsu Ltd 処理装置,処理方法,処理プログラム及び管理装置
JP2014182503A (ja) * 2013-03-18 2014-09-29 Toshiba Corp 情報処理システム、制御プログラムおよび情報処理装置
JP7543619B2 (ja) 2020-07-13 2024-09-03 三星電子株式会社 エフェメラルストレージに対するデータ復元のためのシステム及び装置

Also Published As

Publication number Publication date
TW201020760A (en) 2010-06-01
US20100125751A1 (en) 2010-05-20
EP2356658A4 (en) 2012-12-05
WO2010059173A1 (en) 2010-05-27
CN102197438B (zh) 2014-03-05
CN102197438A (zh) 2011-09-21
US8041991B2 (en) 2011-10-18
KR20110091677A (ko) 2011-08-12
EP2356658A1 (en) 2011-08-17
TWI442225B (zh) 2014-06-21

Similar Documents

Publication Publication Date Title
JP2012509521A (ja) ソリッドステートドライブデータを回復するためのシステム及び方法
JP5271424B2 (ja) ダイナミックストレージ階層化によるオンラインデータ配置をボリュームに提供するためのアロケートオンライトのスナップショット機構
JP5456063B2 (ja) アロケートオンライトのスナップショットを用いた、ダイナミックストレージ階層化のための方法及びシステム
US9923562B1 (en) Data storage device state detection on power loss
US8285965B2 (en) Aligning data storage device partition to boundary of physical data sector
US6877011B2 (en) System and method for host based storage virtualization
US7774643B2 (en) Method and apparatus for preventing permanent data loss due to single failure of a fault tolerant array
US20090157756A1 (en) File System For Storing Files In Multiple Different Data Storage Media
JP6064608B2 (ja) ストレージ装置、バックアッププログラム、およびバックアップ方法
JP5843010B2 (ja) ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム
JP2005310159A (ja) スナップショットに分散されたデータを使用するデータ保護
US20200174689A1 (en) Update of raid array parity
JP2008204460A (ja) ディスク・パーティションのほぼ瞬時のバックアップおよび復元
US9323630B2 (en) Enhanced data recovery from data storage devices
JP2015225603A (ja) ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム
US8688938B2 (en) Data copying
JP6957845B2 (ja) ストレージ制御装置及びストレージ装置
JPH1124848A (ja) ディスクアレイの障害領域交代処理方法およびディスクアレイ装置
JP5601053B2 (ja) 制御装置、制御モジュールおよび制御方法
JP5047342B2 (ja) ストレージ装置およびその制御方法
JP2015191407A (ja) ストレージ制御装置、制御プログラム、および制御方法
KR20120110670A (ko) 바이너리 트리 구조의 캐시 컨트롤 레코드 관리 방법
KR20110089972A (ko) 메모리 장치
JP2018028793A (ja) 情報処理プログラム、情報処理システムおよび情報処理方法
JP2006146633A (ja) ディスクアレイ制御装置及び方法並びにディスクアレイシステム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120327

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120327

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130612

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130624

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130802

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20131105

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20131112

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140313

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20140707

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140714

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20140722

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140707

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20141017

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20151124