JP5947327B2 - 複数の格納媒体デバイスについてのファイルシステムバックアップのためのデバイス、格納媒体および方法 - Google Patents

複数の格納媒体デバイスについてのファイルシステムバックアップのためのデバイス、格納媒体および方法 Download PDF

Info

Publication number
JP5947327B2
JP5947327B2 JP2014047624A JP2014047624A JP5947327B2 JP 5947327 B2 JP5947327 B2 JP 5947327B2 JP 2014047624 A JP2014047624 A JP 2014047624A JP 2014047624 A JP2014047624 A JP 2014047624A JP 5947327 B2 JP5947327 B2 JP 5947327B2
Authority
JP
Japan
Prior art keywords
volatile memory
file system
storage medium
data
system information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014047624A
Other languages
English (en)
Other versions
JP2014182818A (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.)
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 JP2014182818A publication Critical patent/JP2014182818A/ja
Application granted granted Critical
Publication of JP5947327B2 publication Critical patent/JP5947327B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

この発明は、複数の格納媒体デバイスについてのファイルシステムバックアップのためのデバイス、格納媒体および方法に関する。
データ格納デバイス(DSD)は、複数のデータ格納媒体を備え得る。データ格納媒体についてのファイルシステム情報が破損されることになった場合またはデータ格納媒体が故障した場合、有効データの利用可能性についての情報は、失われ得る。したがって、データ格納デバイスの性能を向上するためのシステムおよび方法が必要とされている。
一実施形態では、デバイスは、第1のデータ格納媒体、第2のデータ格納媒体、およびコントローラを備え得る。コントローラは、第1のデータ格納媒体についてのファイルシステム情報のコピーをバックアップとして第2のデータ格納媒体に格納するように構成され得る。
別の実施形態では、コンピュータで読み出し可能な格納媒体は、ファイルシステム情報を第1の不揮発性のメモリに格納することと、第1の不揮発性のメモリについてのファイルシステム情報のコピーをバックアップとして第2の不揮発性のメモリに格納することと、第1の不揮発性のメモリ内のファイルシステム情報が有効データを含有するとき、ファイルシステム情報を第1の不揮発性のメモリからキャッシュメモリにロードすることと、第1の不揮発性のメモリ内のファイルシステム情報が有効データを含有しないとき、ファイルシステム情報のコピーを第2の不揮発性のメモリからキャッシュにロードすることと、を含むコンピュータ処理をコンピューティングシステム上で実行するためのコンピュータプログラムを符号化し得る。
更に別の実施形態では、方法は、ファイルシステム情報を第1の不揮発性のメモリに格納することと、第1の不揮発性のメモリについてのファイルシステム情報のコピーをバックアップとして第2の不揮発性のメモリに格納することと、第1の不揮発性のメモリ内のファイルシステム情報が有効データを含有するとき、ファイルシステム情報を第1の不揮発性のメモリからキャッシュメモリにロードすることと、第1の不揮発性のメモリ内のファイルシステム情報が有効データを含有しないとき、ファイルシステム情報のコピーを第2の不揮発性のメモリからキャッシュにロードすることと、を含み得る。
複数の格納媒体デバイスについてのファイルシステムバックアップのシステムの例示的な実施形態の図である。 複数の格納媒体デバイスについてのファイルシステムバックアップのシステムの別の例示的な実施形態の図である。 複数の格納媒体デバイスについてのファイルシステムバックアップを利用するデータ格納デバイスの例示的な実施形態の図である。 複数の格納媒体デバイスについてのファイルシステムバックアップを利用する方法の例示的な実施形態のフローチャートである。 複数の格納媒体デバイスについてのファイルシステムバックアップを利用する方法の別の例示的な実施形態のフローチャートである。
実施形態の以下の詳細な説明において、本明細書の一部を形成し、その明細書において特定の実施形態の例示として示される、添付の図面に対する参照がなされる。他の実施形態が利用され得ることと、構造的変更が本開示の範囲から逸脱することなくなされ得ることとが理解されるべきである。
いくつかのデータ格納デバイスは、複数のメモリを含むことができる。例えば、ハイブリッドハードドライブは、回転ディスク格納媒体に加えて、一定量の不揮発性の固体メモリ(NVSSM)を有し得る。NVSSMは、任意の種類の不揮発性の固体メモリ、例えば、NAND NVSSM、NOR NVSSM、NVRAM、またはそれ自体のファイルシステムを有し得る任意の固体メモリなどであり得る。いくつかの実施形態では、デバイスは、ディスクメモリの代わりにもしくはディスクメモリに加えて、異なる種類のまたは同じ種類の、2つ以上のNVSSMを有し得る。明瞭さのために、本明細書に記載される例や実施形態は、NVSSMおよびディスクメモリを有するデバイスに言及することになるが、NVSSMを含む他の構成は、当業者に明らかであろう。
実施形態例では、ディスク上のデータおよびNVSSM内のデータは、重複LBA(論理ブロックアドレス)空間を占有することができる。そのような実施形態では、特定のLBAにおけるデータについてのホスト要求があるとき、それは、どのメモリが、そのLBAについての最新の有効データを含有するか、およびどのメモリがより高速な応答を提供するか次第で、ディスクからまたはNVSSMから来得る。いくつかの実施形態では、ホストからのデータ書き込みをディスクまたはNVSSMに直接送信させることも可能である。データがNVSSMに直接書き込まれる場合、それは、データのバックアップコピーを提供するために、バックグラウンドにおいてディスクに鏡映を作られ得る。そのようなバックアップは、設定された量の時間後、データ格納デバイスがアイドル状態であるとき、または他の誘因に基づいて、即時に作られ得る。
ファイルシステムは、例えば、メモリ内のどの物理的格納位置が所与のLBAについてのデータを含有するか、どのデータが現在の、有効なものであるか、また、どのデータが古いか無効なものであるかのログを取ることによって、データを編成するためにデータ格納デバイス上で利用されるソフトウェアであり得る。データがNVSSMメモリに直接格納され得、ディスクに鏡映を作られ得るシステムにおいて、不揮発性のファイルシステム(NVFS)は、どのデータがNVSSMにおいて有効(例えば、直近)であるか、また、どのデータがディスクに鏡映を作られているかの記録を維持し得る。本明細書に使用される際、NVFSは、ファイルシステムまたはファイルシステム情報として呼ばれることもある。
ホストデータがNVSSMに直接書き込まれることを可能にするハイブリッドハードディスクドライブ(HDD)例では、有効データだけがNVSSM内にある期間があり得る。この期間の間、NVFSの破損を引き起こす事象があるかNVSSMが不完全になる場合には、ハイブリッドHDDは、有効データが任意の所与のLBAについてのものであることを確実に知っていない可能性がある。有効データはNVSSM内にあることができ、あるいは、その有効データはディスク上にあることができる。これは、読み出し要求の上で不正確なデータをホストに送信し戻すことを結果としてもたらすことができるか、あるいは、ディスク上のデータが最新のバージョンのデータであるかどうかが不確かであるので、データを全く送信しない可能性がある。
ファイルシステムの損失に起因する危険性を最小限にするために、バックアップコピーは、ディスクメモリに格納され得る。ハイブリッドHDD例では、NVSSM内にあるコピーが破壊されるか破損される場合、NVFSが、依然としてディスクから検索され得、再生成され得、回転ディスクは、NVFSのコピーを格納するために使用され得、それによって、無効データをホストに送信することを防止し、あるいは適切にサービスされ得ないホスト要求に応答しない。
図1は、100で一般に指定される、複数の格納媒体デバイスについてのファイルシステムバックアップについてのシステムの実施形態を描写する。システム100は、ホスト102とデータ格納デバイス(DSD)104とを含み得る。ホスト102はまた、ホストシステムまたはホストコンピュータとも呼ばれ得る。ホスト102は、デスクトップコンピュータ、ラップトップコンピュータ、サーバ、タブレットコンピュータ、電話、音楽プレーヤ、別の電子デバイス、またはそれらの任意の組み合わせとすることができる。同様に、DSD104は、上に挙げたデバイスのいずれか、またはデータを格納するか検索するために使用され得る任意の他のデバイスであり得る。ホスト102およびDSD104は、有線もしくは無線接続によって、またはローカルエリアネットワーク(LAN)もしくはワイドエリアネットワーク(WAN)によって接続され得る。いくつかの実施形態では、DSD104は、ホスト102に接続されない独立型デバイスとすることができ、またはホスト102とDSD104の両方は、単一ユニットの一部であってもよい。
DSD104は、1つ以上の不揮発性のメモリを含むことができる。描写された実施形態では、DSD104は、回転ディスクメモリ106およびNVSSMメモリ108を含むハイブリッドHDDである。他の実施形態では、DSD104は、揮発性および不揮発性のメモリを含む、付加的なメモリまたはメモリの類いを含有し得る。いくつかの実施形態では、ディスク上のデータおよびNVSSM内のデータは重複LBA空間を占有する。例えば、0と10,000との間のLBA内に格納されたデータは、NVSSMメモリまたはディスクメモリに位置し得る。NVFSは、どのデータがNVSSM上に格納されるか、また、そのデータがディスク上にバックアップされるかどうかを把握するために、DSD104によって使用され得る。データがNVSSM108に格納されており、ディスク106にバックアップされ得る実施形態では、NVFSは、NVSSM108やディスク106上のデータが、所与のLBAについての最新のバージョンの有効データであるかどうかを決定するために使用され得る。
図2は、200で一般に指定される、複数の格納媒体デバイスについてのファイルシステムバックアップについてのシステムの実施形態を描写する。システム200は、データ格納デバイス202およびホストデバイス204を含み得、それは、図1のDSD104およびホストシステム102に対応し得る。描写された実施形態では、DSD202は、ディスクメモリ206、NVSSMメモリ208、およびRAM210を含むハイブリッドHDDであり得る。いくつかの実施形態では、他の不揮発性のメモリが、ディスク206およびNVSSM208の代わりに使用され得る。RAM210は、DSD202のためのキャッシュメモリとして働き得、DRAMまたはSRAMなどの任意の種類の揮発性のメモリであり得る。
実施形態例では、NVFSは、マッピングテーブル構成要素およびジャーナリングシステム構成要素を含み得る。マッピングテーブルは、どの情報が、NVSSMメモリ内に格納されるか、どの物理的格納位置におけるものか、データが現在の有効データであるかどうか、およびそのデータがディスクメモリにバックアップされるかどうかについての情報を含み得る。ジャーナリングシステムは、マッピングテーブルが最後に更新されてからNVSSMの内容を変更された書き込みコマンド、消去コマンド、または他のコマンドに基づいて、NVSSMメモリ内に格納されたデータへの変更のリストであり得る。ジャーナルは、直近のファイルシステム情報を含有するようにマッピングテーブルを更新するために使用され得る。
図2に描写された実施形態では、主マッピングテーブル212は、NVSSMメモリ208内に格納され得る。主マッピングテーブル212は、例えばDSD202の電源投入などの誘因事象で、NVSSMメモリ208からRAM210にロードされ得る。RAM210内でNVFS214のコピーを保持することは、データ動作の間に情報へのより高速なアクセスを提供することができる。RAM210内のNVFS214はまた、マッピングテーブル216への変更を追跡するためにジャーナル218を含むことができる。データ動作の間、RAM210内のファイルシステム214は、例えば新たに格納されたデータまたは無効になったデータなどの、マッピングテーブル216への変更を示すジャーナル218で更新され得る。ジャーナル218内の情報は、間隔をおいてNVSSM内の主マッピングテーブル212を更新するために使用され得る。いくつかの実施形態では、ジャーナル218は、間隔をおいて、または制御された電源切断事象などの誘因に基づいて、NVSSM208に格納され得、NVSSM内のマッピングテーブル212は、より長い間隔をおいて1つ以上のジャーナルからの情報で更新され得る。
予期しない電力損失がある場合には、RAM210内の最新の差異ジャーナル218が失われ得る。次の電源投入の際、主マッピングテーブル218は、RAM210にロードされ得、差異ジャーナル218は、NVSSM208の内容を検索することによって再現され得る。例えば、NVSSMメモリ208に格納されたデータは、次の有効データ位置を指し示すメタデータを含み得る。失われたジャーナルエントリは、記録されていないデータ変更のすべてを発見するためにポインタをたどることによって、回復され得る。しかしながら、NVSSM208内の主マッピングテーブル212が失われる場合、NVSSMメモリを分析することによってそれを再現することは困難であるか不可能であり得る。
NVSSMメモリ208内のマッピングテーブル212の損失の場合に、格納された有効データを把握するために、NVファイルシステムバックアップ220がディスクメモリ206に保存され得る。例えば、主マッピングテーブル212は、例えば電源投入事象において、NVSSM208からRAM210にコピーされた後、それはまた、ディスク206にコピーされ得る。加えて、マッピングテーブル216のコピーは、NVSSM208内の主マッピングテーブル212がジャーナル218で更新される度に、ディスク206にコピーされ得る。ジャーナル218を使用するマッピングテーブル212もしくは216への更新が誘因とされる時は常に、ディスク220上のマッピングテーブルは、同様に更新され得る。いくつかの実施形態では、ジャーナル218は、マッピングテーブル216全体がコピーされるか更新されるよりも頻繁にNVSSM208およびディスク206にコピーされ得る。例えば、制御された電源切断がある時は常に、ジャーナル218、もしくは更新されたマッピングテーブル216は、RAM210からコピーされ得、ディスク206に書き込まれ得る。
ディスク206上にNVFS220のバックアップを作ることは、いくつかの手法でシステム200の信頼性を向上することができる。NVSSM208内の主マッピングテーブル212を破損させる場合、それは、ディスク206からバックアップ220を検索することによって、再現され得る。これは、正確な情報の信頼性の増加を伴って、NVSSM206をスキャンすることによってマッピングテーブルへの最近の変更を再現するのに必要な時間を節約することができる。NVFSのバックアップ220が無いと、主マッピングテーブル212は、破損もしくはNVSSMの故障に起因してすべて失われ得る。
加えて、NVSSM208が完全に動作不可能になる場合には、DSD202は、ホスト204からの将来の読み出し要求にどのように応答するかを決定するために、ディスク206上のファイルシステム220のバックアップを使用することができる。ファイルシステム220のバックアップが、所与のLBAについてのディスク206上のデータが有効データであることを示す場合には、DSD202は、有効データで応答することができる。所与のLBAについて、ファイルシステム220のバックアップが、有効データが現在不完全なNVSSM208内にあったこと、対応するディスクLBA内のデータが無効データであること、あるいはLBAについてのバックアップがディスク206になされなかったことを示す場合には、DSD202は、訂正不可能なデータ誤りでホスト204に応答することができる。これは、DSD202が間違ったデータをホスト204に報告することを防止させることができる。
図3は、300で一般に指定され、複数の格納媒体デバイスについてのファイルシステムバックアップを利用するシステムの別の例示的な実施形態の図である。特に、図3は、ディスクドライブデータ格納デバイス(DSD)300の機能的ブロック図を提供する。DSD300は、図1に示されるデバイス104または図2に示されるDSD202などのデータ格納デバイスであり得る。データ格納デバイス300は、DSD300がホスト302から物理的に取り外されることを可能にするコネクタ(図示しない)を含み得る、ハードウェアまたはファームウェアをベースとしたホストインターフェース回路304経由で、ホストデバイス302(例えば、図1に示されるホストシステム102もしくは図2に示される204など)と通信することができる。バッファ312は、読み出しや書き込み動作の間にユーザデータを一時的に格納することができ、また、複数の保留のアクセス動作が実行中に一時的に格納され得るコマンドキュー(CQ)313を含むことができる。DRAMバッファ312は、図2からのRAMキャッシュ210に対応し得る。フラッシュメモリなどの不揮発性の固体メモリ303は、付加的なキャッシュまたはバッファメモリのために、あるいはDSD300について付加的なアドレス指定可能なデータ格納を提供するために含まれ得る。DSD300は、関連付けられたメモリ308およびプロセッサ310を有するプログラム可能なコントローラ306を含むことができる。コントローラ306または関連付けられたプロセッサ310は、ファイルシステムバックアップ、例えば、本明細書に開示されたハイブリッドドライブ上のNVFSバックアップなど、および以下に開示される、図4や図5に描写される方法のステップを実装するように、DSD300を制御するよう構成され得る。
更に、図3は、DSD300が、書き込み動作の間にデータを符号化し、また、読み出し動作の間に(複数の)ディスク309から検索されたユーザデータを再構築することができる、読み出し/書き込み(R/W)チャネル317を含むことができることを示す。プリアンプ/ドライバ回路(プリアンプ)318は、書き込み電流を(複数の)ヘッド319に印加することができ、リードバック信号の事前の増幅を提供する。サーボ制御回路320は、(複数の)ディスク309の上に(複数の)ヘッド319を配置するようにコイル324に適切な電流を供給するためにサーボデータを使用し得る。コントローラ306は、コマンドキュー313におけるさまざまな保留コマンドの実行の間に、(複数の)ディスク309上の所望の位置に(複数の)ヘッド319を動かすように、プロセッサ322と通信することができる。
NVFSマッピングテーブルは、NVSSM303内に格納され得、DSD300の動作の間にDRAMバッファ312にロードされ得る。DRAMバッファ312は、NVSSM303に格納されたデータの変更に対応するマッピングテーブルへの変更ジャーナルを維持し得、ジャーナル内にログを取られた変更に基づいて、NVSSM303内のマッピングテーブルを定期的に更新し得る。例えば、NVSSM303内のマッピングテーブルは、設定された時間間隔で、NVSSM303への一定の数の書き込みコマンドの後に、DSD300がアイドル状態であるとき、ジャーナルが満杯になるとき、または他の誘因に基づいて、更新され得る。
加えて、NVFSマッピングテーブルおよびジャーナルは、NVSSM303もしくはDRAMバッファ312からディスク309にバックアップとしてコピーされ得る。バックアップマッピングテーブルは、ディスク309にコピーされ得るか、NVSSM303内のマッピングテーブルが更新される時は常にジャーナルに基づいて、あるいは、例えば時間、データ書き込みなどの他の誘因に基づいて、更新され得る。いくつかの実施形態では、ジャーナルのコピーもしくは複数のコピーは、マッピングテーブルに加えてまたはマッピングテーブルの代わりに、ディスク309に格納され得る。例えば、ジャーナルのコピーは、DSD300の制御された電源切断の際にディスク309に格納され得る。
NVSSM303内の主マッピングテーブルが破損されることになるか読み出し不可能になる事象において、ディスク309上のマッピングテーブルのコピーは、マッピングテーブルをNVSSM303に復元するために、またNVSSM303およびディスク309に格納されたデータの状況を決定するために、使用され得る。NVSSM303が動作不可能になるという事象において、ディスク309上のマッピングテーブルのバックアップは、ホスト読み出し要求にどのように応答するかを決定するために使用され得る。
次に図4を見てみると、複数の格納媒体デバイスについてのファイルシステムバックアップを利用する方法の例示的な実施形態のフローチャートが示され、400で一般に指定される。描写された方法は、システム、例えば、図1、図2、および図3に描写されたシステムなどにおいて使用され得る。方法400は、402で、不揮発性の(NV)マッピングテーブルをNVSSMからRAMにロードすることを含むことができる。主マッピングテーブル内に反映されていない変更のジャーナルはまた、NVSSMからRAMにロードされ得る。この動作は、例えば、データ格納デバイスが電源を投入されたとき、あるいはコムリセット(comreset)信号がホストから受信されたとき、呼び出され得る。
NVSSMへのデータ動作の間、NVマッピングテーブルへの変更のジャーナルは、404で、マッピングテーブルのコピーに加えてRAM内に保持され得る。NVSSM内に格納されたマッピングテーブルは、ジャーナルからの変更で更新され得、マッピングテーブルのコピーは、406で、ディスクメモリに格納され得る。いくつかの実施形態では、マッピングテーブルのコピーは、マッピングテーブルがRAMにロードされるときか、あるいは直後に、ディスクに格納され得る。NVSSMおよびディスク内のマッピングテーブルは、例えば、設定された期間後、指定された数のデータ書き込み後、ジャーナルが満杯になるとき、あるいはデータ格納デバイスがアイドル状態であるときなどの1つ以上の誘因に基づいて、ジャーナル内の情報で更新され得る。いくつかの実施形態では、更新されたマッピングテーブルまたはジャーナルのコピー全体が、間隔をおいてディスクに保存され、他の実施形態では、ディスクに格納されたマッピングテーブルのコピーは、間隔をおいてジャーナル情報で更新される。
方法400は、408で、制御された電源切断事象について監視することを含み得る。制御された電源切断が検出されない場合、方法は、404で、変更ジャーナルを保持し続け得る。制御された電源切断が検出される場合、方法400は、410で、ジャーナルのコピーをRAMからディスクに格納することを含み得る。これは、単に、ジャーナルのコピーをディスクに格納すること、またはディスク上に格納されたNVマッピングテーブルを更新することを含み得る。いくつかの実施形態では、RAM内のマッピングテーブルは、ジャーナルで更新され得、更新されたマッピングテーブルは、ディスクに格納され得る。ジャーナルは、制御された電源切断事象でも同様にNVSSM内に格納された主マッピングテーブルを更新するために使用され得、あるいはジャーナル自体が、NVSSMに格納され得る。
次に図5を見てみると、複数の格納媒体デバイスについてのファイルシステムバックアップを利用する方法の別の例示的な実施形態のフローチャートが示され、500で一般に指定される。方法は、502で、電源投入事象を含み得る。これは、複数の不揮発性のメモリを含むデータ格納デバイス(DSD)に電力を印加することを含み得る。一実施形態では、DSDは、NVSSMおよび回転ディスクメモリを含むハイブリッドDSDを備え得る。
方法500は、504で、NVSSM内に格納されたNVFSのマッピングテーブルが読み出し可能であるかどうかを決定することを含み得る。いくつかの実施形態では、504の決定は、NVSSM内に格納されたNVファイルシステムが使用されるべきであるかどうかのものであり得、例えば、それがメモリの故障に起因してアクセスされ得ない場合、データが破損した場合、データが古くなった場合、データが無効である場合、あるいはNVFSを信頼不可能、使用不可能、または不正確にさせる他の要因の場合、それは使用されるべきではない。マッピングテーブルが適切に読み出し可能である場合、方法500は、506で、マッピングテーブルをNVSSMからRAMメモリにロードすることと、514で、通常のDSD動作に続くこととを含み得る。
504で、マッピングテーブルが読み出し可能ではない場合、方法500は、508で、マッピングテーブルのコピーをディスクメモリからRAMにロードすることを含み得る。決定は、510で、NVSSMが適切に動作しているかどうかについてなされ得る。これは、データがNVSSMから格納され得るかまたは検索され得るかどうかを決定するための診断、あるいは他の診断手順を行うことを含み得る。NVSSMが適切に動作可能である場合、512で、NVSSM内の読み出し不可能なマッピングテーブルは、ディスクからロードされたバックアップマッピングテーブルと交換され得る。DSDは、514で、通常動作を再開し得る。
NVSSMが、510で、適切に動作していない場合、方法500は、516で、所与のLBAについてのホストデバイスからの読み出し要求を受信することを含み得る。いくつかの実施形態では、所与のLBAについてのデータは、NVSSMに直接格納されている可能性があり、データの鏡映を作られたバックアップは、いくつかの時点でディスクに格納されている可能性がある。LBAがNVSSMを指し示す場合、NVマッピングテーブルは、所与のLBAについてのデータの有効な現在のコピーがディスクに格納されているかどうかを示し得る。所与のLBAについての読み出し要求が受信されるならば、DSDは、それが適切に動作している場合にNVSSMからデータを検索することができ得、あるいは、それがデータの現在のコピーを含有する場合にディスクからデータを検索することができ得る。
516で、NVSSMに割り当てられた所与のLBAについての読み出し要求を受信した後、方法500は、NVSSMは適切に動作していないと決定されているので、518で、LBAについてのデータの有効コピーがディスク上に格納されるかどうかを決定することを含み得る。所与のLBAについての現在の有効データがディスク上に格納されない場合、方法500は、520で、訂正不可能なデータ誤りで読み出し要求に応答することを含み得る。いくつかの実施形態では、これは、完全なデータ損失の代わりに古いバージョンのデータの回復を可能にし得るので、そのようなデータがディスク上に格納される場合、ユーザは、LBAについての非現在のデータを検索する選択肢を与えられ得る。
518で、所与のLBAについての有効データが、バックアップマッピングテーブルに従ってディスク上に格納される場合、方法500は、522で、ディスク上に格納されたLBAについてのデータで読み出し要求に応答することを含み得る。
さまざまな実施形態によれば、本明細書に記載された方法は、コンピュータプロセッサまたはコントローラ上で動く1つ以上のソフトウェアプログラムとして実装され得る。別の実施形態によれば、本明細書に記載された方法は、ディスクドライブを使用しているパーソナルコンピュータなどのコンピューティングデバイス上で動く1つ以上のソフトウェアプログラムとして実装され得る。限定されるものではないが、特定用途向け集積回路、プログラム可能な論理アレイ、および他のハードウェアデバイスを含む専用ハードウェアの実装は、本明細書に記載された方法を実装するように同様に構築され得る。更に、本明細書に記載された方法は、実行されるときにプロセッサに方法を行わせる命令を含むコンピュータで読み出し可能な媒体として実装され得る。
本明細書に記載された実施形態の実例は、さまざまな実施形態の構造の一般的な理解を与えることを意図される。実例は、本明細書に記載された構造もしくは方法を利用する装置およびシステムの要素や特徴の全ての完全な記載として供されることを意図されない。多くの他の実施形態は、開示を検討すれば、当業者に明らかであろう。他の実施形態は、構造的および論理的置換や変更が開示の範囲から逸脱することなくなされ得るように、利用され得、開示から導かれ得る。その上、特定の実施形態が本明細書に例示され記載されたが、同じまたは類似目的を達成するように設計された任意の後続の配置が、示された特定の実施形態に置換され得ることが理解されるべきである。
この開示は、さまざまな実施形態の任意のおよび全ての後続の適応または変形を包含することが意図される。上記実施形態の組み合わせ、および本明細書に特に記載されていない他の実施形態は、説明を再検討すれば、当業者に明らかになるであろう。更に、実例は、単に代表するものであり、縮尺に合わせて描かれていない可能性がある。実例の範囲内の一定部分は、誇張され得る一方で、他の部分は縮小され得る。したがって、開示および図面は、限定的なものではなくて、例示的なものであるとして、みなされるべきである。

Claims (15)

  1. 第1のデータ格納媒体と、
    第2のデータ格納媒体と、
    コントローラであって、
    前記第1のデータ格納媒体についてのファイルシステム情報のコピーをバックアップとして前記第2のデータ格納媒体に格納するように構成された、コントローラとを備え
    前記ファイルシステム情報が、どのデータが前記第1のデータ格納媒体または前記第2のデータ格納媒体内に格納されるか、また、前記データが現在の有効データであるかどうかについての情報を含むマッピングテーブルを含むことを更に備え、
    前記ファイルシステム情報が、前記マッピングテーブルへの変更を追跡するためのジャーナルシステムを含むことと、
    キャッシュメモリと、
    前記コントローラであって、
    前記マッピングテーブルを前記第1のデータ格納媒体から前記キャッシュメモリにロードするように、
    前記キャッシュメモリ内に前記ジャーナルシステムを維持するように、ならびに
    前記ジャーナルシステムからの前記変更で前記第1のデータ格納媒体内の前記マッピングテーブルを更新するように、および前記マッピングテーブルのコピーを前記第2のデータ格納媒体に格納するように、更に構成された、前記コントローラと、を更に備える、デバイス。
  2. 揮発性の固体メモリを含む第3のデータ格納媒体と、
    前記コントローラであって、
    前記第1のデータ格納媒体内の前記ファイルシステム情報が使用されるべきであるかどうかを決定するように、および
    前記第1のデータ格納媒体内の前記ファイルシステム情報が使用されるべきではないとき、前記ファイルシステム情報の前記コピーを前記第2のデータ格納媒体から前記第3のデータ格納媒体にロードするように、更に構成された、前記コントローラとを更に備える、請求項1に記載のデバイス。
  3. 前記コントローラであって、
    前記第1のデータ格納媒体内の前記ファイルシステム情報が使用されるべきではないとき、
    前記第1のデータ格納媒体が適切に動作しているかどうかを決定するように、および
    前記第1のデータ格納媒体が適切に動作しているとき、
    前記第1のデータ格納媒体内の前記ファイルシステム情報を前記第2のデータ格納媒体からの前記ファイルシステム情報の前記コピーと交換するように、更に構成された、前記コントローラを更に備える、請求項2に記載のデバイス。
  4. 前記コントローラであって、
    前記第1のデータ格納媒体に割り当てられた特定の論理ブロックアドレス(LBA)からデータをロードするために読み出し要求を受信するように、
    前記第1のデータ格納媒体が適切に動作していないとき、
    前記ファイルシステム情報の前記コピーに基づいて、前記特定のLBAについての有効データが、前記第2のデータ格納媒体上に格納されるかどうかを決定するように、
    前記特定のLBAについての有効データが前記第2のデータ格納媒体上に格納されるとき、前記第2のデータ格納媒体からのデータで前記読み出し要求に応答するように、および
    前記特定のLBAについての有効データが前記第2のデータ格納媒体上に格納されないとき、訂正不可能なデータ誤りで前記読み出し要求に応答するように、更に構成された、前記コントローラを更に備える、請求項3に記載のデバイス。
  5. 前記コントローラであって、
    電源切断が検出されるときに、前記ジャーナルシステムを前記キャッシュメモリから前記第2のデータ格納媒体にコピーするように更に構成された、前記コントローラを更に備える、請求項に記載のデバイス。
  6. 前記第1のデータ格納媒体は、不揮発性の固体メモリを含むことを更に備える、請求項1〜のいずれか1項に記載のデバイス。
  7. 前記第2のデータ格納媒体は、ディスクメモリを含むことを更に備える、請求項1〜のいずれか1項に記載のデバイス。
  8. コンピュータ処理であって、
    ファイルシステム情報を第1の不揮発性のメモリに格納することと、
    前記第1の不揮発性のメモリについてのファイルシステム情報のコピーをバックアップとして第2の不揮発性のメモリに格納することと、
    前記第1の不揮発性のメモリ内の前記ファイルシステム情報が有効データを含有するとき、前記ファイルシステム情報を前記第1の不揮発性のメモリからキャッシュメモリにロードすることと、
    前記第1の不揮発性のメモリ内の前記ファイルシステム情報が有効データを含有しないとき、前記ファイルシステム情報の前記コピーを前記第2の不揮発性のメモリから前記キャッシュにロードすることとを含む、コンピュータ処理をコンピューティングシステム上で実行するためのコンピュータプログラムを符号化し、
    前記処理は、前記ファイルシステム情報が、
    どのデータが前記第1の不揮発性のメモリまたは前記第2の不揮発性のメモリ内に格納されるか、また、前記データが現在の有効データであるかどうかについての情報を含むマッピングテーブルと、
    前記マッピングテーブルへの変更を追跡するためのジャーナルシステムとを更に含み、
    前記処理は、
    前記マッピングテーブルを前記第1の不揮発性のメモリからキャッシュメモリにロードすることと、
    前記キャッシュメモリ内に前記ジャーナルシステムを維持することと、
    前記ジャーナルシステムからの前記変更で、前記第1の不揮発性のメモリ内の前記マッピングテーブルを更新することと、
    前記マッピングテーブルのコピーを前記第2の不揮発性のメモリに格納することを更に含む、コンピュータで読み出し可能な格納媒体。
  9. 前記処理は、
    前記第1の不揮発性のメモリ内の前記ファイルシステム情報が有効データを含有しないとき、前記第1の不揮発性のメモリが適切に動作しているかどうかを決定することと、
    前記第1の不揮発性のメモリが適切に動作しているとき、前記第1の不揮発性のメモリ内の前記ファイルシステム情報を前記第2の不揮発性のメモリからの前記ファイルシステム情報の前記コピーと交換することとを更に含む、請求項に記載のコンピュータで読み出し可能な格納媒体。
  10. 前記処理は、
    前記第1の不揮発性のメモリに割り当てられた特定の論理ブロックアドレス(LBA)からデータをロードするために読み出し要求を受信することと、
    前記第1の不揮発性のメモリが適切に動作していないとき、
    前記ファイルシステム情報の前記コピーに基づいて、前記特定のLBAについての有効データが前記第2の不揮発性のメモリ上に格納されるかどうかを決定することと、
    前記特定のLBAについての有効データが前記第2の不揮発性のメモリ上に格納されるとき、前記第2の不揮発性のメモリからのデータで前記読み出し要求に応答することと、
    前記特定のLBAについての有効データが前記第2の不揮発性のメモリ上に格納されないとき、訂正不可能なデータ誤りで前記読み出し要求に応答することとを更に含む、請求項に記載のコンピュータで読み出し可能な格納媒体。
  11. 前記処理は、
    電源切断が検出されるとき、前記ジャーナルシステムを前記キャッシュメモリから前記第2の不揮発性のメモリにコピーすることを更に含む、請求項に記載のコンピュータで読み出し可能な格納媒体。
  12. ファイルシステム情報を第1の不揮発性のメモリに格納することと、
    前記第1の不揮発性のメモリについてのファイルシステム情報のコピーをバックアップとして第2の不揮発性のメモリに格納することと、
    前記第1の不揮発性のメモリ内の前記ファイルシステム情報が有効データを含有するとき、前記ファイルシステム情報を前記第1の不揮発性のメモリからキャッシュメモリにロードすることと、
    前記第1の不揮発性のメモリ内の前記ファイルシステム情報が有効データを含有しないとき、前記ファイルシステム情報の前記コピーを前記第2の不揮発性のメモリから前記キャッシュにロードすることとを含み、
    前記ファイルシステム情報のマッピングテーブルを前記第1の不揮発性のメモリからキャッシュメモリにロードすることと、
    前記キャッシュメモリ内の前記ファイルシステム情報のジャーナルシステムであって、前記マッピングテーブルへの変更を追跡するために使用されるジャーナルシステムを維持することと、
    前記ジャーナルシステムからの前記変更で前記第1の不揮発性のメモリ内の前記マッピングテーブルを更新することと、
    前記マッピングテーブルのコピーを前記第2の不揮発性のメモリに格納することとを更に含む、方法。
  13. 前記第1の不揮発性のメモリ内の前記ファイルシステム情報が有効データを含有しないとき、前記第1の不揮発性のメモリが適切に動作しているかどうかを決定することと、
    前記第1の不揮発性のメモリが適切に動作していることを決定されるとき、前記第2の不揮発性のメモリからの前記ファイルシステム情報の前記コピーと前記第1の不揮発性のメモリ内の前記ファイルシステム情報を交換することとを更に含む、請求項12に記載の方法。
  14. 前記第1の不揮発性のメモリに割り当てられた特定の論理ブロックアドレス(LBA)からデータをロードするために読み出し要求を受信することと、
    前記第1の不揮発性のメモリが適切に動作していないとき、
    前記ファイルシステム情報の前記コピーに基づいて、前記特定のLBAについての有効データが前記第2の不揮発性のメモリ上に格納されるかどうかを決定することと、
    前記特定のLBAについての有効データが前記第2の不揮発性のメモリ上に格納されるとき、前記第2の不揮発性のメモリからのデータで前記読み出し要求に応答することと、
    前記特定のLBAについての有効データが前記第2の不揮発性のメモリ上に格納されないとき、訂正不可能なデータ誤りで前記読み出し要求に応答することとを更に含む、請求項13に記載の方法。
  15. 電源切断が検出されるとき、前記ジャーナルシステムを前記キャッシュメモリから前記第2の不揮発性のメモリにコピーすることを更に含む、請求項12に記載の方法。
JP2014047624A 2013-03-15 2014-03-11 複数の格納媒体デバイスについてのファイルシステムバックアップのためのデバイス、格納媒体および方法 Expired - Fee Related JP5947327B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/832,165 US20150378642A1 (en) 2013-03-15 2013-03-15 File system back-up for multiple storage medium device
US13/832,165 2013-03-15

Publications (2)

Publication Number Publication Date
JP2014182818A JP2014182818A (ja) 2014-09-29
JP5947327B2 true JP5947327B2 (ja) 2016-07-06

Family

ID=51502947

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014047624A Expired - Fee Related JP5947327B2 (ja) 2013-03-15 2014-03-11 複数の格納媒体デバイスについてのファイルシステムバックアップのためのデバイス、格納媒体および方法

Country Status (3)

Country Link
US (1) US20150378642A1 (ja)
JP (1) JP5947327B2 (ja)
CN (1) CN104050056A (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150339065A1 (en) * 2014-05-20 2015-11-26 Munif M. Farhan Enhanced data reliability using solid-state memory-enabled storage devices
US9817588B2 (en) * 2015-04-10 2017-11-14 Macronix International Co., Ltd. Memory device and operating method of same
CN105159800B (zh) * 2015-09-10 2018-11-16 华为技术有限公司 数据恢复方法、数据备份方法及相关设备、系统
US20170220252A1 (en) * 2016-01-29 2017-08-03 Faraday&Future Inc. Flash emulated eeprom wrapper
US10073644B2 (en) * 2016-03-21 2018-09-11 Toshiba Memory Corporation Electronic apparatus including memory modules that can operate in either memory mode or storage mode
US10176102B2 (en) * 2016-03-30 2019-01-08 Infinio Systems, Inc. Optimized read cache for persistent cache on solid state devices
JP6675944B2 (ja) * 2016-07-12 2020-04-08 富士通株式会社 ファイル管理システム、ファイル管理装置およびファイル管理プログラム
KR20180064588A (ko) * 2016-12-05 2018-06-15 에스케이하이닉스 주식회사 메모리 제어 장치 및 방법
US10318417B2 (en) * 2017-03-31 2019-06-11 Intel Corporation Persistent caching of memory-side cache content
US10719446B2 (en) * 2017-08-31 2020-07-21 Oracle International Corporation Directly mapped buffer cache on non-volatile memory
US20190155507A1 (en) * 2017-11-21 2019-05-23 Silicon Motion Inc. Method for performing system backup in a memory device, associated memory device and controller thereof, and associated electronic device
US10936046B2 (en) * 2018-06-11 2021-03-02 Silicon Motion, Inc. Method for performing power saving control in a memory device, associated memory device and memory controller thereof, and associated electronic device
KR20210085499A (ko) * 2019-12-30 2021-07-08 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
TWI791966B (zh) * 2020-03-27 2023-02-11 瑞昱半導體股份有限公司 記憶體控制器與資料處理方法
CN113553008A (zh) * 2021-07-20 2021-10-26 深圳忆联信息系统有限公司 映射表更新方法、装置、计算机设备及存储介质
CN114327292B (zh) * 2021-12-31 2024-02-02 上海移为通信技术股份有限公司 文件管理方法、系统、电子设备和存储介质
US11899534B2 (en) * 2022-01-14 2024-02-13 Dell Products L.P. Techniques for providing direct host-based access to backup data using a proxy file system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1331063C (zh) * 2003-06-10 2007-08-08 联想(北京)有限公司 基于数据卷快照的在线数据备份方法
US8074035B1 (en) * 2003-07-22 2011-12-06 Acronis, Inc. System and method for using multivolume snapshots for online data backup
US7818608B2 (en) * 2005-02-18 2010-10-19 Microsoft Corporation System and method for using a file system to automatically backup a file as a generational file
JP4053067B2 (ja) * 2006-09-11 2008-02-27 株式会社日立製作所 ハイブリッドストレージ、および、それを用いた情報処理装置
JP2008140459A (ja) * 2006-11-30 2008-06-19 Toshiba Corp ハイブリッドディスク記憶装置及び同装置に適用されるディスクライト方法
US7921258B1 (en) * 2006-12-14 2011-04-05 Microsoft Corporation Nonvolatile disk cache for data security
WO2009102425A1 (en) * 2008-02-12 2009-08-20 Netapp, Inc. Hybrid media storage system architecture
US9075733B1 (en) * 2010-05-20 2015-07-07 Seagate Technology Llc Selective storage of address mapping metadata in a system having multiple memories
JP2012078939A (ja) * 2010-09-30 2012-04-19 Toshiba Corp 情報処理装置およびキャッシュ制御方法
US9177607B2 (en) * 2012-05-16 2015-11-03 Seagate Technology Llc Logging disk recovery operations in a non-volatile solid-state memory cache

Also Published As

Publication number Publication date
JP2014182818A (ja) 2014-09-29
US20150378642A1 (en) 2015-12-31
CN104050056A (zh) 2014-09-17

Similar Documents

Publication Publication Date Title
JP5947327B2 (ja) 複数の格納媒体デバイスについてのファイルシステムバックアップのためのデバイス、格納媒体および方法
US20210373779A1 (en) Information processing apparatus, method for controlling information processing apparatus, nontransitory recording medium storing control tool, host device, nontransitory recording medium storing performance evaluation tool, and performance evaluation method for external memory device
US9923562B1 (en) Data storage device state detection on power loss
US10776153B2 (en) Information processing device and system capable of preventing loss of user data
US8862808B2 (en) Control apparatus and control method
US8762661B2 (en) System and method of managing metadata
US9003103B2 (en) Nonvolatile media dirty region tracking
US10048863B1 (en) Open block refresh management
US8812901B2 (en) Methods and apparatus for marking writes on a write-protected failed device to avoid reading stale data in a RAID storage system
US9652164B2 (en) Solid-state mass storage device and method for processing forced unit access write commands
CN111752487B (zh) 一种数据恢复方法、装置及固态硬盘
KR101870521B1 (ko) 스토리지 저널링을 개선하는 방법 및 시스템
JP6064608B2 (ja) ストレージ装置、バックアッププログラム、およびバックアップ方法
US9858002B1 (en) Open block stability scanning
KR20130120529A (ko) 정보 처리 장치, 외부 기억 장치, 호스트 장치, 중계 장치, 컴퓨터 판독 가능한 기록 매체, 및 정보 처리 장치의 제어 방법
CN106133677B (zh) 主机和次级存储装置之间的通信
US20160026408A1 (en) Storage device metadata synchronization
US8938641B2 (en) Method and apparatus for synchronizing storage volumes
CN116414616A (zh) 一种固态硬盘ssd故障恢复方法、ssd及系统
US8688938B2 (en) Data copying
US20220374310A1 (en) Write request completion notification in response to partial hardening of write data
JP4947062B2 (ja) 記憶装置、記録復旧方法、記録復旧プログラム
TWI769193B (zh) 記憶體系統的操作方法
WO2021082011A1 (zh) 应用于磁盘阵列系统的数据重构方法、装置及计算设备
US20180052749A1 (en) Information processing system and information processing method

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140729

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140729

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150526

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20150825

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150925

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160405

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20160506

R155 Notification before disposition of declining of application

Free format text: JAPANESE INTERMEDIATE CODE: R155

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160602

R150 Certificate of patent or registration of utility model

Ref document number: 5947327

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees