JP2009282752A - ストレージデバイス及びファイルシステムの記録方法 - Google Patents

ストレージデバイス及びファイルシステムの記録方法 Download PDF

Info

Publication number
JP2009282752A
JP2009282752A JP2008134129A JP2008134129A JP2009282752A JP 2009282752 A JP2009282752 A JP 2009282752A JP 2008134129 A JP2008134129 A JP 2008134129A JP 2008134129 A JP2008134129 A JP 2008134129A JP 2009282752 A JP2009282752 A JP 2009282752A
Authority
JP
Japan
Prior art keywords
data
file
file system
storage device
transaction
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
Application number
JP2008134129A
Other languages
English (en)
Other versions
JP5386111B2 (ja
Inventor
Hermant
ヘルマント
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.)
Hitachi Systems and Services Ltd
Original Assignee
Hitachi Systems and Services Ltd
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 Hitachi Systems and Services Ltd filed Critical Hitachi Systems and Services Ltd
Priority to JP2008134129A priority Critical patent/JP5386111B2/ja
Publication of JP2009282752A publication Critical patent/JP2009282752A/ja
Application granted granted Critical
Publication of JP5386111B2 publication Critical patent/JP5386111B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】効率よくトランザクションベースでファイルシステムのメタデータ及びアプリケーションの管理データを書き込む方法、そして電源断が発生した場合にトランザクション単位で自動的に修復を行うことができるストレージデバイスを提供する。
【解決手段】一時的な記録領域とメインの記録領域を有し、電源断からデータを修復する機能を有するストレージデバイスであって、ホストから書き込まれたデータを前記一時的な記録領域に格納する手段1と、前記ホストからコミット要求を受けると、前記一時的な記録領域にあるデータを前記メインの記録領域に書き込む手段2と、前記コミット要求を受ける前に電源断が発生した場合に電源投入時に前記一時的な記録領域にあるデータを破棄し、前記コミット要求を受けてから電源断が発生した場合に電源投入時に前記一時的な記録領域にあるデータをメインの記録領域に書き込む手段3とを備え、トランザクションベースでデータを修復する。
【選択図】図2

Description

本発明は、ストレージデバイス及びファイルシステムの記録方法に係り、特に、アプリケーション、ファイルシステム及びストレージデバイスが全て整合性のある状態で、電源断やシステムクラッシュから障害回復を行うことが可能となる方法に関する。
電源断やシステムクラッシュに対するファイルシステムの信頼性を確保するために、トランザクション単位で更新されたメタデータをまずジャーナルログに記録してから、目的のメタデータを上書きする手段が取られている。このジャーナル機能を持ったファイルシステムは、一般的にジャーナルファイルシステムと呼ぶ。ジャーナルログを記録することによって、電源断やシステムクラッシュが発生した場合、ジャーナルログによる高速な修復が可能となる。
しかし、一方では、ジャーナルログの記録による性能劣化が発生するという欠点がある。この性能劣化を最小限に抑えるために、更新されたメタデータブロック全体ではなく、アプリケーションからのファイル操作種別と操作対象のファイル、すなわち更新内容をジャーナルログに記録する方法が知られている。(下記、特許文献1参照)
また、例えば、DVD−RAM(Digital Versatile Disc-Random Access Memory)やBD−RE(Blu-ray Disc,Rewritable)といった光ディスクにAV(Audio Visual)データをリアルタイムに記録する装置では、書き込み性能を維持するために、ジャーナルログを別の高速な不揮発のフラッシュメモリに記録する手段が取られている。
近年では、安価で大容量のストレージデバイス、そして比較的高価で小容量の高速なストレージデバイスが数多く開発されている。前記大容量のストレージデバイスの例として、フロッピディスク、ハードディスク、光ディスクそしてテープがある。
前記高速なストレージデバイスの例として、RAM(Random Access Memory)、ROM(Read Only Memory)、PROM(Programmable Read Only Memory)、EPROM(Erasable Programable Read Only Memory)、そしてフラッシュメモリがある。
例えば、ハードディスクの内部や光ディスクを記録するドライブ装置には、高速なRAMタイプのメモリがバッファキャッシュとして使用され、読み込み/書き込み性能を向上させる働きをする。
また、標準規格のATA−8で規格化されているハイブリッド型ハードディスクでは、RAMタイプのメモリと同様に不揮発のフラッシュメモリがバッファキャッシュとして使用される。
不揮発のフラッシュメモリはNV−Cache(non-volatile cache)と呼ばれ、ハードディスク上のどの範囲のブロックアドレスをこのNV−Cacheにマッピングするかは専用のATAコマンドで指定可能である。
NV−Cacheを用いることによって、電源断が発生してもデータロストが発生しない。さらに、OSを起動するための情報が記録される領域をNV−Cacheにマッピングすることによって、OSの起動が高速になると言ったメリットがある。
前述したように、比較的高速で小容量のメモリと大容量のストレージデバイスを組み合わせて、それぞれの特徴を生かせることによって、信頼性や性能の向上が期待できる。
以下にいくつかの既知の方法を列挙する。
(1)性能と容量の異なる二つの不揮発のメディアを用いて、この二つのメディアが連続したひとつのアドレス空間を構成するハイブリッド型のストレージシステム。(下記、特許文献2、特許文献3参照)
(2)不揮発のメモリを使ったライトキャッシュを備えるディスクストレージであって、電源断が発生してもライトキャッシュにあるデータがロストしない。また、電源投入時、ライトキャッシュにある未書き込みデータを読み込みディスクに書き込む。(下記、特許文献4参照)
(3)通常の揮発メモリをライトキャッシュに使用し、電源断を検出したときにスピンドルモータにて生成されたEMF(Electro Motive Force)からの電源を用いて、ライトキャッシュにあるデータを不揮発メモリに書く。また、電源投入時、不揮発メモリにあるデータを読み込みディスクに書き込む。(下記、特許文献5参照)
(4)ディスクストレージのバッファキャッシュとして、不揮発のMRAM(Magnetoresistive Random Access Memory)を使用することによって、電源断が発生してもデータがロストしない。(下記、特許文献6参照)
(5)比較的高速で小容量の不揮発メディアと大容量の不揮発メディアを組み合わせたストレージシステムであって、前記高速で小容量の不揮発メディアが使用不可の場合、大容量のメディアのみで運用する。(下記、特許文献7参照)
(6)それぞれ少なくともひとつ以上の揮発メモリと不揮発メモリを備えるディスク制御装置であって、不揮発メモリは揮発メモリにあるライトキャッシュデータをバックアップするために使用する。(下記、特許文献8参照)
なお、本願発明に関連する先行技術文献としては以下のものがある。
特開2004−78461号公報 米国特許第7,308,531号明細書 米国特許第6,785,767号明細書 米国特許第6,516,426号明細書 米国特許第6,295,577号明細書 米国特許第6,798,599号明細書 米国特許第7,302、534号明細書 米国特許第5,586,291号明細書
前述したように、電源断やシステムクラッシュに対応するための方法として、ファイルシステムはジャーナルログを記録する。このジャーナルログの記録による性能劣化を最小限にするために、ジャーナルログをより高速な不揮発のメモリに記録する方法では、不揮発メモリ及びそれを制御するハードウェアやソフトエアが必要になり、システムが高価になるという欠点がある。
また、メタデータの更新内容をジャーナルログに記録する方法では、修復処理がファイルシステムのフォーマットやファイルシステムがサポートするファイル操作に依存するため、処理が複雑という問題点がある。
同様にストレージデバイスは、電源断に対応するために不揮発のメモリを用いてデータの修復を行っている。しかし、ストレージデバイスで行っている修復処理はあくまでもホストから書き込まれた全てのデータを修復するものである。そのデータは、中途半端なファイルシステムのメタデータあるいは中途半端なアプリケーションの管理データの場合があり、逆に修復しない方が良いケースもある。
本発明は、前記従来技術の問題点を解決するためになされたものであり、本発明の目的は、効率よくトランザクションベースでファイルシステムのメタデータ及びアプリケーションの管理データを書き込む方法、そして電源断が発生した場合にトランザクション単位で自動的に修復を行うことができるストレージデバイスを提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面によって明らかにする。
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記の通りである。
前述の目的を達成するために、本発明においては、比較的高速で小容量の不揮発ストレージメディアと大容量のストレージメディアを組み合わせ、大容量のストレージメディアはメインのデータ記録領域として、高速なストレージメディアは一時的な記録領域として使用する。大容量のストレージメディアの一部のブロック(セクタ)アドレス空間は一時的な記録領域にマッピングし、マッピングするブロックアドレス空間を設定するコマンドを用意し、前記コマンドによってマッピングされたブロックアドレス空間に書き込まれたデータは一時的な記録領域に先ず格納する。一時的な記録領域に書き込んだデータをコミットするためのコマンドを用意し、前記コミットコマンドを受けると、一時的な記録領域に格納されたデータをメインのデータ記録領域に書き込み、前記コミットコマンドを受ける前に電源断が発生する場合、電源投入時に一時的な記録領域に格納されたデータを破棄し(ロールバック)、前記コミットコマンドを受け取ってから電源断が発生する場合、電源投入時に一時的な記録領域に格納されたデータを前記メインのデータ記録領域に書き込み(ロールフオーワード)、トランザクションベースでデータの修復を自動的に行うことを特徴とするストレージデバイスである。
前記トランザクションベースでデータ修復機能を備えたストレージデバイスを用いたファイルシステムでは、ファイルシステムのメタデータ及び特定のファイルデータの格納位置を一時的な記録領域にマッピングされたブロックアドレス空間から割り当て、前記特定のファイルはファイルの属性、ファイルのサイズまたはファイルの名称を用いて判定する。前記特定のファイルデータをコミットするためのインタフェースを用意し、例えば、アプリケーションが「ファイル1」にデータを追記してから、「ファイル2」のデータを更新するという一連のファイル操作を行った後、前記ファイルシステムのコミットインタフェースを用いてコミット要求を発行し、前記ファイルシステムは前記コミット要求を受けると、まだ書き込んでいないメタデータ及び前記ファイル1及びファイル2のデータがあれば、全部前記ストレージデバイスに書き込んでからコミットコマンドを発行する。
例えば、アプリケーションが「ファイル1」にデータを追記してから、「ファイル2」のデータを更新中に電源断が発生する場合、アプリケーションがコミット要求を発行していないため、電源投入時に本発明のストレージデバイスが自動的にロールバック処理を行い、アプリケーションのファイルデータおよびファイルシステムのメタデータが元の処理前の状態に戻る。
また、アプリケーションがコミット要求を発行し、ファイルシステムが更新されたメタデータ及びファイルデータを書き込んで、前記ストレージデバイスにコミットコマンドを発行してから電源断が発生する場合、電源投入時に本発明のストレージデバイスが自動的にロールフォーワード処理を行い、アプリケーションがファイル操作を行った後の状態にする。
AVデータを記録再生する装置において、例えば、ファイルシステムのフォーマットとしてUDF(Universal Disc Format)を用いた場合、AVデータをリアルタイム属性のファイルのメインデータストリームに記録する。
前記UDFはNTFS(New Technology File System)と同様に複数のデータストリーム(multiple data stream)をサポートしており、ひとつのファイルには、通常のアプリケーションから見えるメインデータストリームと複数の名前付きストリーム(named stream)を記録することが可能である。
前記名前付きストリームには、例えば、アイコン情報、AVファイルであればプレイバック情報(playback info)やサムネール情報(thumbnail info)を記録することが可能である。
AVデータは容量が大きいため、通常、ライトキャッシュを用いず直接ストレージメディアに書き込む(Direct I/0)ことが多い。本発明のデータ記録方法でも、AVデータはトランザクションベースの修復対象にしない方が望ましい。
前記UDFファイルシステムを用いた場合は、前記リアルタイム属性を用いて、AVデータを他のファイルデータと区別することが可能である。
前記AVデータ記録再生する装置のような場合、ストレージデバイスには大容量のAVデータを書き込み、ファイルシステムのメタデータ及びAVアプリケーションの管理データが比較的小容量になるため、前述したような本発明のストレージデバイス及び記録方法で十分に運用が可能である。
しかしながら、例えば、データベースシステムやファイルサーバなどでは、テンポラリファイルなどを除いて基本的に全てのファイルデータをトランザクションベースの修復対象にしなければならない。この場合には、以下のようなストレージデバイス及び記録方法が望ましい。
前記一時的な記録領域を前記メインのデータ記録領域にマッピングするのではなく、トランザクションデータ用のライトコマンドを別途用意し、前記コマンドで書き込まれたデータを全て一時的な記録領域に書き込み、ホストからコミットコマンドを受けると前記一時的な記録領域に格納されたデータを「コミット済み」状態と登録してから、前記データを前記メインのデータ記録領域に書き込み、前記コミットコマンドを受ける前に電源断が発生する場合、電源投入時に前記一時的な記録領域に格納されたデータを破棄し(ロールバック)、前記コミットコマンドを受け取ってから電源断が発生する場合、電源投入時に前記一時的な記録領域に格納されたデータを前記メインのデータ記録領域に書き込み(ロールフォーワード)、トランザクションベースでデータの修復を自動的に行う。
また、前述の特許文献5に記載されているような技術を応用し、一時的な記録領域として、通常の揮発メモリを使用し、電源断を検出したときに、トランザクションデータ用のライトコマンドで書き込まれたデータで、なおかつ、既にコミットされたものを不揮発のメモリにバックアップし、電源投入時に前記不揮発メモリにバックアップされたデータをメインのデータ記録領域に書き込み(ロールフォーワード)、トランザクションベースでデータの修復を自動的に行う。
なお、ファイルシステムは、前記トランザクションデータ用のライトコマンドを用いてメタデータ及び特定のファイルデータを書き込み、アプリケーションからのコミット要求を受けると、まだ書き込んでいないメタデータ及びファイルデータがあれば、全部前記ストレージデバイスに書き込んでからコミットコマンドを発行する。また、例えばテンポラリファイルのデータの書き込みでは、通常の非トランザクションデータ用のライトコマンドを用いても構わない。
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。
本発明によれば、非常に単純で簡単な方法で、アプリケーション、ファイルシステムとストレージデバイスが連携し、効率よくトランザクションベースでファイルシステムのメタデータ及びアプリケーションの管理データを書き込むことができ、電源断が発生した場合にストレージデバイスがトランザクションベースで自動的に修復を行うことが可能となる。
以下、図面を参照して本発明の実施例を詳細に説明する。
なお、実施例を説明するための全図において、同一機能を有するものは同一符号を付け、その繰り返しの説明は省略する。
[実施例1]
先ず、図1は、AVデータ記録再生装置またはパーソナルコンピュータのソフトウェア/ハードウェアの概略図である。
図1において、101はAVデータ記録再生装置またはパーソナルコンピュータ、102はアプリケーション、103はファイルシステムドライバ、104はデバイスドライバ、105はストレージデバイスである。
アプリケーション102の具体例としては、例えば、AVデータを扱うアプリケーションまたはデータベースファイルを管理するデータベースアプリケーションがある。
ファイルシステムドライバ103は、ファイルシステムのフォーマット(例えば、UDF)に基づき、ファイル/ディレクトリを管理するソフトウェアモジュールであり、これにより前記アプリケーション102がファイル/ディレクトリの作成、ファイルデータの読み書き、ディレクトリの閲覧などを行うことが可能となる。
デバイスドライバ104は、ストレージデバイス105を認識し、アプリケーション102やファイルシステムドライバ103にストレージデバイス105ヘのブロック(セクタ)データの読み書き、そしてデバイス情報の取得やフラッシュキャッシュなど特定のコマンドを発行するインタフェースを提供している。
図2は、本発明の実施例1のAVデータ記録再生装置におけるトランザクションベースストレージデバイス及びその記録方法を説明する図である。
図2において、201はファイルシステムのボリュームレイアウト、202はファイルシステムのメタデータ領域、203はAVアプリケーションの管理データ領域、204はAVデータ領域を示す。
また、205は本実施例のストレージデバイス、206は不揮発のメディアを使用した一時的な記録領域、207は管理情報領域、208はマッピング領域、209は予備領域、210は揮発のメディア(メモリ)を使用したバッファキャッシュ、211は不揮発のメディアを使用したメインデータ記録領域を示す。
本実施例では、ファイルシステムのメタデータ及びAVアプリケーションの管理データをトランザクションデータとして扱い、これらのデータは一時的な記録領域206にマッビングされるアドレス空間に格納される。なお、アドレス空間のマッピング方法として、メインデータ記録領域の先頭から一定サイズの領域を予めマッピングする固定式マッピング方法と、専用のコマンドでマッビングする領域を指定する可変式マッピング方法がある。どちらの方式の場合でも、本実施例のストレージデバイス205は、どのアドレス空間が一時的な記録領域にマッピングされるかを取得するコマンドを用意することが望ましい。
前記コマンドを用いて、ファイルシステムドライバ103がトランザクション対象の領域を知ることができ、ファイルシステムのメタデータ及びAVアプリケーションの管理データを前記トランザクション対象の領域に記録することが可能となる。
なお、本実施例、あるいは、後述する実施例2において、トランザクション対象あるいはトランザクション非対象の領域にファイルデータを書き込むか否かは、当該ファイルが記録される親ディレクトリ、または、当該ファイル自身のファイル属性、または、当該ファイル自身の名称の一部あるいは全部、あるいは、当該ファイルのサイズを用いて判断する。また、なお、図2においては、例として、トランザクション対象の領域がセクタ番号0からAまでの領域となっている。
一時的な記録領域206は、不揮発のメディアを使用しており、実際にメインデータ記録領域211の特定のアドレス空間のマッピング領域208以外に、前記不揮発メディアの寿命や欠陥セクタを考慮し、交替処理用の予備領域209を設けることが望ましい。なお、管理情報領域207には、一時的な記録領域206のアドレス空間対メインデータ記録領域211のアドレス空間のマッピングテーブル、各アドレスに記録されているデータの状態(更新なし/更新あり/コミット済み)、交替セクタ情報を記録する。
次に、図3から図5を用いて、本実施例1におけるストレージデバイス205の書き込み処理、コミット処理及び修復処理を説明する。
図3は、本実施例におけるストレージデバイス205のデータ書き込み処理を示すフローチャートである。
本実施例において、トランザクションデータであるファイルシステムのメタデータ及びAVアプリケーションの管理データ、そして非トランザクションデータであるAVデータは、全て同じインタフェースを用いて書き込むことが可能である。
ストレージデバイス205は、書き込み対象のアドレスが一時的な記録領域206にマッピングされているかを確認する(ステップ301)。
書き込み対象のアドレスが一時的な記録領域206にマッピングされていない場合は、通常のバッファキャッシュ210にデータを書き込む(ステップ302)。
書き込み対象のアドレスが一時的な記録領域206にマッピングされている場合、書き込み対象アドレスを「更新あり」状態と管理情報領域207に登録し(ステップ303)、マッピング領域208にデータを書き込む(ステップ304)。
図4は、本実施例におけるストレージデバイス205のコミット処理を示すフローチャートである。
先ず、「更新あり」のデータが一時的な記録領域206に存在するかを確認する(ステップ401)。ステップ401において、「更新あり」のデータが存在しない場合は、コミット処理を終了する。
ステップ401において、「更新あり」のデータが存在する場合は、前記データを「コミット済み」状態と管理情報領域207に登録し(ステップ402)、前記更新されたデータを読み込み、メインデータ記録領域211に書き込む(ステップ403)。
最後に、前記データを「更新なし」状態と管理情報領域207に登録する(ステップ404)。
前記コミット処理は、アプリケーション102またはファイルシステムドライバ103からコミット要求を受けるときに実行される。
ファイルシステムドライバ103は、ひとつのトランザクションごとにメタデータを更新してからコミット要求を発行するか、複数のトランザクション分のメタデータを更新してからコミット要求を発行することが可能である。
なお、AVアプリケーションの管理データの書き込みが伴う場合は、アプリケーション102からのコミット要求を受けてから、コミット処理を行うことで、ファイルシステムのメタデータとAVアプリケーションの管理データが整合性のある状態で修復が可能となる。
図5は、本実施例におけるストレージデバイス205の修復処理を示すフローチャートである。
修復処理は、ストレージデバイス205の電源投入時に実行される。先ず、管理情報領域207を読み込み(ステップ501)、管理情報領域を基に、未書き込みデータがあるかを判定する(ステップ502)。ステップ502において、未書き込みデータがない(即ち、全データが「更新なし」という状態にある)場合は、修復処理を終了し、通常の電源投入時の処理に移る。
ステップ502において、未書き込みデータがある場合は、前記未書き込みデータがコミットされたかどうかを判定する(ステップ503)。
ステップ503において、前記未書き込みデータがコミット済みの場合は、前記コミット済みデータをメインデータ記録領域211に書き込むロールフォワード処理を行い(ステップ505)、前記データを「更新なし」状態と管理情報領域207に登録することで、前記データの状態を「コミット済み」から「更新なし」状態に変更する(ステップ507)。
ステップ503において、前記データがコミットされていない(「更新あり」状態)場合は、メインデータ記録領域211にある更新前データを読み込み一時的な記録領域206にある更新後データに上書きするロールバック処理を行い(ステップ504)、前記データを「更新なし」状態と管理情報領域207に登録することで、前記データの状態を「更新あり」から「更新なし」状態に変更する(ステップ506)。
前述したように、前記一時的な記録領域206にマッピングされたデータが「更新なし」、「更新あり」および「コミット済み」の状態にあるかを管理することで、アプリケーション102あるいはファイルシステムドライバ103が意図するポイント(状態)にロールバックあるいはロールフォワード処理を行うことが可能となる。
なお、前記書き込み処理で行う「更新あり」状態に変更するステップ303、前記コミット処理で行う「更新あり」から「コミット済み」状態に変更するステップ402と「コミット済み」から「更新なし」状態に変更するステップ404、そして前記修復処理で行う「更新あり」から「更新なし」状態に変更するステップ506と、「コミット済み」から「更新なし」状態に変更するステップ507は、中途半端な状態が許されない。
そのためには、管理情報領域207に各々の状態を登録する処理ではリングバッファ方式を用いて、直前の状態を表すデータを上書きせず、次の領域に新しい状態を表すデータを格納するとともに、チェックサムを用いて変更処理が完全に完了したかどうかを判断する。
[実施例2]
図6は、本発明の実施例2であるデータベースシステムにおけるトランザクションベスストレージデバイス及びその記録方法を示す図である。
図6において、601はファイルシステムのボリュームレイアウト、602はファイルシステムのメタデータ、603はデータベースファイルのデータ、604はファイルシステムのメタデータ、605はテンポラリファイルのデータ、606はその他データを示す。 また、607は本実施例のストレージデバイス、608は揮発のメディアを使用した一時的な記録領域、609は管理情報領域、610はバッファキャッシュ領域、611は不揮発のメディアを使用したバックアップメディア、612は管理情報、613はバックアップ領域、614は不揮発のメディアを使用したメインデータ記録領域を示す。
本実施例2では、ファイルシステムのメタデータに加え、全データベースファイルのデータをトランザクションデータとして扱うことが望ましい。なお、テンポラリファイルなどのデータは非トランザクションデータとして扱っても構わない。
データベースファイルのデータが大量で頻繁に更新されるため、データベースシステムに適した本実施例では、一時的な記録領域608として寿命がより長く、性能の良い揮発メディアを使用した方が望ましい。すなわち、通常のバッファキャッシュをトランザクションデータの一時的な記録領域と兼用する。
その代わり、メインデータ記録領域614のメディアより消費電力の少ない不揮発のメディアを用いたバックアップメディア611を用意し、電源断を検出する際に、コミットされたトランザクションデータを前記バックアップメディア611にバックアップする。
なお、トランザクションデータあるいは非トランザクションデータかを区別するためには、前記ストレージデバイス607が専用のトランザクションデータ用書き込みコマンドを用意する。
同様に、ファイルシステムドライバ103も専用のトランザクションデータ用書き込みインタフェースをアプリケーション102に提供する。
次に、図7から図10を用いて、本実施例におけるストレージデバイス607の書き込み処理、コミット処理、バックアッブ処理及び修復処理を説明する。
図7は、本実施例におけるストレージデバイス607のデータ書き込み処理を示すフローチャートである。
ストレージデバイス607は、最初にバッファキャッシュ610に空きがあるかを確認し(ステップ701)、ステップ701において、バッファキャッシュ610に空きがない場合は、バッファキャッシュ610にある未書き込みデータをメインデータ記録領域614に吐き出す遅延書き込み処理を行う(ステップ702)。
前記遅延書き込み処理は、バッファキャッシュを備えるストレージデバイスにおいて一般的に使用されるものである。なお、前記遅延書き込み処理で吐き出すデータは非トランザクションデータのみとする。
ステップ701において、バッファキャッシュ610に空きがある場合は、バッファキャッシュ610にデータを書き込み(ステップ703)、前記データがトランザクションデータかを判定する(ステップ704)。
ステップ704での判定結果が、前記データが非トランザクションデータの場合は、管理情報領域609に前記データが未書き込みの非トランザクションデータであると記録する(ステップ705)。
ステップ704での判定結果が、前記データがトランザクションデータの場合は、管理情報領域609に前記データが未書き込みのトランザクションデータであると記録する(ステップ706)。
図8は、本実施例におけるストレージデバイス607のコミット処理を示すフローチャートである。
ストレージデバイス607は、最初に未書き込みのトランザクションデータがあるかを判定し(ステップ801)、ステップ801において、未書き込みのトランザクションデータが存在しない場合は、コミット処理を終了する。
ステップ801において、未書き込みのトランザクションデータが存在する場合は、管理情報領域609に「コミット済み」状態を記録し(ステップ802)、コミットされた前記トランザクションデータをメインデータ記録領域614に書き込む(ステップ803)。
最後に管理情報領域609に「更新なし」状態を記録する(ステップ804)。なお、非トランザクションデータは、このコミット処理でトランザクションデータと一緒にメインデータ記録領域614に吐き出しても良い。
図9は、本実施例におけるストレージデバイス607のバックアップ処理示すフローチャートである。
ストレージデバイス607は、電源断を検出する際に、例えば、前述の特許文献5に記載されている方法を用いて、必要なデータのバックアッブ処理を行うための電源を供給する。
前記バックアップ処理では、最初に未書き込みのトランザクションデータがコミットされたかどうかを判定し(ステップ901)、ステップ901において、コミットされていない場合は、バックアップ処理を終了する。
ステップ901において、コミットされている場合は、該当するデータをバックアップメディア611のバックアップ領域613に書き込み(ステップ902)、前記バックアッブしたデータの情報(セクタ番号、セクタ数)をバックアップメディア611の管理情報612に書き込む(ステップ903)。
図10は、本実施例におけるストレージデバイス607の修復処理を示すフローチャートである。
修復処理は前記ストレージデバイスの電源投入時に実行される。先ず、管理情報612を読み込み(ステップ1001)、前記管理情報を基に、バックアッブデータがあるかを判定する(ステップ1002)。
ステップ1002において、バックアップデータが存在しない場合は、修復処理を終了し、通常の電源投入時の処理に移る。
ステップ1002において、バックアップデータが存在する場合は、前記バックアップデータを読み込み、メインデータ記録領域614に書き込むロールフォワード処理を行い(ステップ1003)、管理情報612をクリアする(ステップ1004)。
前述したように、一時的な記録領域608に格納されたトランザクションデータがコミットされた状態の場合、電源断を検出するときに、トランザクションデータをバックアップメディア611にバックアップすることで、電源投入時の修復処理でロールフォワード処理を行うことが可能となる。なお、前記一時的な記録領域608は揮発のメディアを用いるため、次の電源投入時には全データが無効となり、コミットされていないデータのロールバック処理を行う必要がない。
図11は、本実施例1または実施例2における、アプリケーション及びファイルシステムドライバがストレージデバイスと連携し、トランザクションベースで処理する例を示す処理シーケンスである。
図11において、1101はアプリケーション、1102はファイルシステムドライバ、1103はトランザクションベースストレージデバイスを示す。また、図11において、アプリケーションが2つのファイルである「ファイル1」と「ファイル2」を開き、「ファイル1」にデータを追記書き込み、「ファイル2」のデータを一部上書きする一連の処理をひとつのトランザクションである例を示す。
以下に、順番にアプリケーション1101の各ステップについて説明する。
先ず、アプリケーション1101は、「ファイル1」を開く(ステップ1104)。これに対して、ファイルシステムドライバ1102は、「ファイル1」を検索し、メモリ上で管理オブジェクトを作成する(ステップ1105)。
ファイルシステムドライバ1102は、通常オープンされた各々のファイル/ディレクトリに対して、ファイル/ディレクトリのメタデータなどを格納するための管理オプジェクトを作成する。例えば、OSがWindowsの場合ではファイルオブジェクト、OSがLinuxの場合ではinodeという管理オプジェクトを作成する。
次に、アプリケーション1101は、「ファイル2」を開く(ステップ1106)。これに対して、ファイルシステムドライバ1102は、「ファイル2」を検索し、メモリ上で管理オブジェクトを作成する(ステップ1107)。
次に、アプリケーション1101が、「ファイル1」にデータを追記書き込む(ステップ1108)。これに対して、ファイルシステムドライバ1102が、追加データ用領域を確保し、ファイルシステムのメタデータを更新する(ステップ1109)。
ファイルシステムメタデータは、例えば、各ブロックの使用状態を表すスペースビットアップ、「ファイル1」のデータの位置を表すエクステントテーブル、「ファイル1」のサイズ情報、「ファイル1」の更新日時情報を指す。そして、ファイルシステムドライバ1102が前記追加データを前記エクステントテーブルの位置情報に基づいて、ストレージデバイス1103に書き込む(ステップ1110)。
次に、アプリケーション1101が「ファイル2」のデータを一部上書きする(ステップ1111)。これに対して、ファイルシステムドライバ1102が、データを「ファイル2」のエクステントテーブルの位置情報に基づいて、ストレージデバイス1103に書き込み(ステップ1112)、「ファイル2」のメタデータ(更新日時情報)を更新する(ステップ1113)。
次に、ひとつのトランザクションのデータ更新が全て完了したため、アプリケーション1101がファイルシステムドライバ1102にコミット要求を発行する(ステップ1114)。これに対して、ファイルシステムドライバ1102が、未書き込みのメタデータ及びファイルデータをストレージデバイス1103に書き込み(ステップ1115)、コミット要求をストレージデバイス1103に発行する(ステップ1116)。
ファイルシステムドライバ1102は、性能向上を目的に、頻繁に更新されるデータを一時的にライトキャッシュに格納することが望ましい。そのため、アプリケーション1101からコミット要求を受けるときに、未書き込みのメタデータ及びファイルデータが存在する場合がある。
図11に示すアプリケーション1101、ファイルシステムドライバ1102及びストレージデバイス1103の連携処理は、前述の実施例1と実施例2の両方の場合に適用できる。
実施例1の場合は、全てのデータを同じインタフェース/コマンドで書き込む。それに対して、実施例2の場合は、アプリケーション1101がトランザクションデータを専用のインタフェースで書き込み、またファイルシステムドライバ1102が書き込み時に使用したインタフェースによって各ファイルデータがトランザクションデータかどうかを管理し、専用のコマンドでストレージデバイス1103にトランザクションデータを書き込む。なお、実施例2において、全てのデータをトランザクションデータとし、全てのデータを同じインタフェース/コマンドで書き込むことが可能である。
以上、本発明者によってなされた発明を、前記実施例に基づき具体的に説明したが、本
発明は、前記実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
AVデータ記録再生装置またはパーソナルコンピュータの概略図である。 本発明の実施例1のAVデータ用ストレージデバイス及びその記録方法を示す概略図である。 本発明の実施例1のAVデータ用ストレージデバイスにおけるデータの書き込み処理の流れの一例を示すフローチャートである。 本発明の実施例1のAVデータ用ストレーンデバイスにおけるコミット処理の流れの一例を示すフローチャートである。 本発明の実施例1のAVデータ用ストレージデバイスにおけるデータの修復処理の流れの一例を示すフローチャートである。 本発明の実施例2のデータベース用ストレージデバイス及びその記録方法を示す概略図である。 本発明の実施例2のデータベース用ストレージデバイスにおけるデータの書き込み処理の流れの一例を示すフローチャートである。 本発明の実施例2のデータベース用ストレージデバイスにおけるコミット処理の流れの一例を示すフローチャートである。 本発明の実施例2のデータベース用ストレーンデバイスにおけるバックアップ処理の流れの一例を示すフローチャートである。 本発明の実施例2のデータベース用ストレージデバイスにおける修復処理の流れの一例を示すフローチャートである。 アプリケーション、ファイルシステムドライバ及ゲストレーンデバイスの連携処理の流れの一例を示す処理シーケンスである。
符号の説明
101 AVデータ記録再生装置またはパーソナルコンピュータ
102,1101 アプリケーション
103,1102 ファイルシステムドライバ
104 デバイスドライバ
105 ストレージデバイス
201,601 ファイルシステムのボリュームレイアウト
202,602,604 ファイルシステムのメタデータ領域
203 AVアプリケーションの管理データ領域
204 AVデータ領域
205,607,1103 ストレージデバイス
206 不揮発のメディアを使用した一時的な記録領域
207 管理情報領域
208 マッピング領域
209 予備領域
210 揮発のメディア(メモリ)を使用したバッファキャッシュ
211 不揮発のメディアを使用したメインデータ記録領域
603 データベースファイルのデータ
605 テンポラリファイルのデータ
606 その他データ
608 揮発のメディアを使用した一時的な記録領域
609 管理情報領域
610 バッファキャッシュ領域
611 不揮発のメディアを使用したバックアップメディア
612 管理情報
613 バックアップ領域
614 不揮発のメディアを使用したメインデータ記録領域

Claims (17)

  1. 一時的な記録領域とメインの記録領域を有し、電源断からデータを修復する機能を有するストレージデバイスであって、
    ホストから書き込まれたデータを前記一時的な記録領域に格納する手段1と、
    前記ホストからコミット要求を受けると、前記一時的な記録領域にあるデータを前記メインの記録領域に書き込む手段2と、
    前記コミット要求を受ける前に電源断が発生した場合に電源投入時に前記一時的な記録領域にあるデータを破棄し、前記コミット要求を受けてから電源断が発生した場合に電源投入時に前記一時的な記録領域にあるデータをメインの記録領域に書き込む手段3とを備え、トランザクションベースでデータを修復することを特徴とするストレージデバイス。
  2. 前記一時的な記録領域として、比較的高速で小容量の不揮発メモリを用いることを特徴とする請求項1に記載のストレージデバイス。
  3. 前記一時的な記録領域と前記メインの記録領域は、同じ不揮発のストレージメディアに割り当てることを特徴とする請求項1に記載のストレージデバイス。
  4. 前記一時的な記録領域として、フラッシュメモリを用い、
    前記メインの記録領域として、ハードディスクを用いることを特徴とする請求項1に記載のストレージデバイス。
  5. 通常のライトキャッシュ用の揮発メディアと、
    バックアップ用の不揮発メディアとを備え、
    前記一時的な記録領域として、前記ライトキャッシュ用の揮発メディアを使用し、
    前記手段3は、電源断を検出する際に、前記コミットされたデータを前記不揮発のメディアにバックアップし、電源投入時に前記不揮発メディアにあるバックアップデータを前記メインの記録領域に書き込むことを特徴とする請求項1に記載のストレージデバイス。
  6. 前記一時的な記録領域をメインデータ領域の先頭のアドレス空間にマッピングして、先頭アドレスから一時的な記録領域のサイズまでのアドレス空間をトランザクション対象領域とし、
    前記トランザクション対象領域のデータのみを修復することを特徴とする請求項1ないし請求項5のいずれか1項に記載のストレージデバイス。
  7. トランザクション対象領域のセクタ/ブロックアドレス空間は、前記ホストから指定でき、
    前記指定されたトランザクション対象領域のデータのみを修復することを特徴とする請求項1ないし請求項5のいずれか1項に記載のストレージデバイス。
  8. 非トランザクションデータ用のライトコマンドと、トランザクションデータ用のライトコマンドを両方用意し、
    前記トランザクションデータ用のライトコマンドで書き込まれたデータをトランザクション対象とし、電源断発生時にトランザクションベースでデータの修復を行うことを特徴とする請求項1ないし請求項5のいずれか1項に記載のストレージデバイス。
  9. 請求項6または請求項7に記載のストレージデバイスを用いるファイルシステムの記録方法であって、
    前記ファイルシステムのメタデータをトランザクション対象の領域に配置し、トランザクション単位でメタデータを前記ストレージデバイスに書き込んでからコミットコマンドを発行することを特徴とするファイルシステムの記録方法。
  10. 請求項6または請求項7に記載のストレージデバイスを用いるファイルシステムの記録方法であって、
    前記ファイルシステムのメタデータ及び特定のファイルデータをトランザクション対象の領域に配置し、アプリケーションからのコミット要求を受けると、前記ストレージデバイスにコミットコマンドを発行し、ファイルシステムのメタデータとアプリケーションのファイルデータをトランザクション単位で更新することを特徴とするファイルシステムの記録方法。
  11. 請求項8に記載のストレージデバイスを用いるファイルシステムの記録方法であって、
    トランザクションデータ用のライトコマンドを用いてファイルシステムのメタデータを書き込み、トランザクション単位で前記メタデータを前記ストレージデバイスに書き込んでからコミットコマンドを発行することを特徴とするファイルシステムの記録方法。
  12. 請求項8に記載のストレージデバイスを用いるファイルシステムの記録方法であって、 トランザクションデータ用のライトコマンドを用いてファイルシステムのメタデータ及び特定のファイルデータを書き込み、アプリケーションからのコミット要求を受けると、前記ストレージデバイスにコミットコマンドを発行し、ファイルシステムのメタデータとアプリケーションのファイルデータをトランザクションベースで更新することを特徴とするファイルシステムの記録方法。
  13. トランザクション対象あるいはトランザクション非対象の領域にファイルデータを書き込むかを判定するために、当該ファイルが記録される親ディレクトリ、あるいは当該ファイル自身のファイル属性を用いることを特徴とする請求項10または請求項12に記載のファイルシステムの記録方法。
  14. トランザクション対象あるいはトランザクション非対象の領域にファイルデータを書き込むかを判定するために、当該ファイルが記録される親ディレクトリ、あるいは当該ファイル自身の名称の一部あるいは全部を用いることを特徴とする請求項10または請求項12に記載のファイルシステムの記録方法。
  15. トランザクション対象あるいはトランザクション非対象の領域にファイルデータを書き込むかを判定するために、当該ファイルのサイズを用いることを特徴とする請求項10または請求項12に記載のファイルシステムの記録方法。
  16. ファイルシステムフォーマットとしてUDFを用いて、属性がリアルタイムのファイルのメインデータストリームをトランザクション非対象の領域に書き込み、それ以外のファイルデータ及びファイルシステムのメタデータをトランザクション対象の領域に書き込むことを特徴とする請求項10に記載のファイルシステムの記録方法。
  17. ファイルシステムフォーマットとしてUDFを用いて、属性がリアルタイムのファイルのメインデータストリームを書き込む際に、非トランザクションデータ用のライトコマンドを用い、それ以外のファイルデータ及びファイルシステムのメタデータを書き込む際に、トランザクションデータ用のライトコマンドを用いることを特徴とする請求項12に記載のファイルシステムの記録方法。
JP2008134129A 2008-05-22 2008-05-22 ファイルシステムの記録方法 Expired - Fee Related JP5386111B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008134129A JP5386111B2 (ja) 2008-05-22 2008-05-22 ファイルシステムの記録方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008134129A JP5386111B2 (ja) 2008-05-22 2008-05-22 ファイルシステムの記録方法

Publications (2)

Publication Number Publication Date
JP2009282752A true JP2009282752A (ja) 2009-12-03
JP5386111B2 JP5386111B2 (ja) 2014-01-15

Family

ID=41453143

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008134129A Expired - Fee Related JP5386111B2 (ja) 2008-05-22 2008-05-22 ファイルシステムの記録方法

Country Status (1)

Country Link
JP (1) JP5386111B2 (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120104302A (ko) * 2009-12-11 2012-09-20 마이크로소프트 코포레이션 순서 의존성 없는 일관성
JP2012185686A (ja) * 2011-03-07 2012-09-27 Nec Corp ファイルシステム
KR20130106258A (ko) * 2012-03-19 2013-09-27 삼성전자주식회사 이동식 저장 장치 및 이를 포함하는 시스템
US8984233B2 (en) 2010-06-17 2015-03-17 Microsoft Corporation Error detection for files
WO2016038722A1 (ja) * 2014-09-11 2016-03-17 株式会社日立製作所 ストレージシステム及びデータ書込み方法
KR20170007583A (ko) * 2015-07-08 2017-01-19 삼성전자주식회사 컴퓨팅 시스템 및 그것의 쓰기 방법
US9563487B2 (en) 2011-08-11 2017-02-07 Microsoft Technology Licensing, Llc. Runtime system
JP2018504692A (ja) * 2014-12-24 2018-02-15 華為技術有限公司Huawei Technologies Co.,Ltd. トランザクション処理方法及び装置、並びにコンピュータシステム
US10635504B2 (en) 2014-10-16 2020-04-28 Microsoft Technology Licensing, Llc API versioning independent of product releases
US10642685B2 (en) 2014-03-20 2020-05-05 Kioxia Corporation Cache memory and processor system
WO2022114899A1 (ko) * 2020-11-27 2022-06-02 한국과학기술원 다중파일 트랜잭션을 위한 커밋 블럭 구조 및 장치
US11531580B2 (en) 2018-12-04 2022-12-20 Canon Kabushiki Kaisha Electronic apparatus equipped with HDD, control method therefor, and storage medium

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06332777A (ja) * 1993-05-18 1994-12-02 Hitachi Ltd トランザクション処理方式
JPH08221326A (ja) * 1995-02-20 1996-08-30 Hitachi Ltd 記憶制御装置及びその制御方法
JPH0916453A (ja) * 1995-06-23 1997-01-17 Internatl Business Mach Corp <Ibm> 同期システム及び同期方法
JP2005108345A (ja) * 2003-09-30 2005-04-21 Sanyo Electric Co Ltd レコーダおよびプログラム
JP2005149643A (ja) * 2003-11-18 2005-06-09 Sony Corp 情報処理装置および方法、並びにプログラム
JP2005209119A (ja) * 2004-01-26 2005-08-04 Sony Corp データ記憶装置及び方法、並びに記録再生システム
JP2005284643A (ja) * 2004-03-29 2005-10-13 Canon Inc ディスクアレイ制御装置、ディスクアレイ制御装置の制御方法、及び制御プログラム
JP2007193883A (ja) * 2006-01-18 2007-08-02 Sony Corp データ記録装置及び方法、及びデータ再生装置及び方法、並びにデータ記録再生装置及び方法
JP2008004090A (ja) * 2006-06-21 2008-01-10 Hitachi Ltd トランザクションモニタリング能力を有するストレージシステム
WO2008026497A1 (fr) * 2006-08-28 2008-03-06 Nec Corporation Dispositif de commande de matrice de disques, procédé de commande de matrice de disques et programme de commande de matrice de disques

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06332777A (ja) * 1993-05-18 1994-12-02 Hitachi Ltd トランザクション処理方式
JPH08221326A (ja) * 1995-02-20 1996-08-30 Hitachi Ltd 記憶制御装置及びその制御方法
JPH0916453A (ja) * 1995-06-23 1997-01-17 Internatl Business Mach Corp <Ibm> 同期システム及び同期方法
JP2005108345A (ja) * 2003-09-30 2005-04-21 Sanyo Electric Co Ltd レコーダおよびプログラム
JP2005149643A (ja) * 2003-11-18 2005-06-09 Sony Corp 情報処理装置および方法、並びにプログラム
JP2005209119A (ja) * 2004-01-26 2005-08-04 Sony Corp データ記憶装置及び方法、並びに記録再生システム
JP2005284643A (ja) * 2004-03-29 2005-10-13 Canon Inc ディスクアレイ制御装置、ディスクアレイ制御装置の制御方法、及び制御プログラム
JP2007193883A (ja) * 2006-01-18 2007-08-02 Sony Corp データ記録装置及び方法、及びデータ再生装置及び方法、並びにデータ記録再生装置及び方法
JP2008004090A (ja) * 2006-06-21 2008-01-10 Hitachi Ltd トランザクションモニタリング能力を有するストレージシステム
WO2008026497A1 (fr) * 2006-08-28 2008-03-06 Nec Corporation Dispositif de commande de matrice de disques, procédé de commande de matrice de disques et programme de commande de matrice de disques

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101690824B1 (ko) 2009-12-11 2017-01-09 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 순서 의존성 없는 일관성
JP2013513862A (ja) * 2009-12-11 2013-04-22 マイクロソフト コーポレーション 順序の依存関係を持たない整合性
KR20120104302A (ko) * 2009-12-11 2012-09-20 마이크로소프트 코포레이션 순서 의존성 없는 일관성
US8996829B2 (en) 2009-12-11 2015-03-31 Microsoft Technology Licensing, Llc Consistency without ordering dependency
US9430160B2 (en) 2009-12-11 2016-08-30 Microsoft Technology Licensing, Llc Consistency without ordering dependency
US8984233B2 (en) 2010-06-17 2015-03-17 Microsoft Corporation Error detection for files
US9448869B2 (en) 2010-06-17 2016-09-20 Microsoft Technology Licensing, Llc Error detection for files
JP2012185686A (ja) * 2011-03-07 2012-09-27 Nec Corp ファイルシステム
US9563487B2 (en) 2011-08-11 2017-02-07 Microsoft Technology Licensing, Llc. Runtime system
KR101984495B1 (ko) * 2012-03-19 2019-05-31 삼성전자 주식회사 이동식 저장 장치 및 이를 포함하는 시스템
KR20130106258A (ko) * 2012-03-19 2013-09-27 삼성전자주식회사 이동식 저장 장치 및 이를 포함하는 시스템
US10642685B2 (en) 2014-03-20 2020-05-05 Kioxia Corporation Cache memory and processor system
WO2016038722A1 (ja) * 2014-09-11 2016-03-17 株式会社日立製作所 ストレージシステム及びデータ書込み方法
US9952805B2 (en) 2014-09-11 2018-04-24 Hitachi, Ltd. Storage system and data write method using a logical volume to either store data successfully onto a first memory or send a failure response to a server computer if the storage attempt fails
US10635504B2 (en) 2014-10-16 2020-04-28 Microsoft Technology Licensing, Llc API versioning independent of product releases
JP2018504692A (ja) * 2014-12-24 2018-02-15 華為技術有限公司Huawei Technologies Co.,Ltd. トランザクション処理方法及び装置、並びにコンピュータシステム
KR101910759B1 (ko) 2014-12-24 2018-12-19 후아웨이 테크놀러지 컴퍼니 리미티드 트랜잭션 처리 방법, 장치 및 컴퓨터 시스템
US10467044B2 (en) 2014-12-24 2019-11-05 Huawei Technologies Co., Ltd. Transaction processing method and apparatus, and computer system
KR20170007583A (ko) * 2015-07-08 2017-01-19 삼성전자주식회사 컴퓨팅 시스템 및 그것의 쓰기 방법
KR102473206B1 (ko) 2015-07-08 2022-12-02 삼성전자주식회사 컴퓨팅 시스템 및 그것의 쓰기 방법
US11531580B2 (en) 2018-12-04 2022-12-20 Canon Kabushiki Kaisha Electronic apparatus equipped with HDD, control method therefor, and storage medium
WO2022114899A1 (ko) * 2020-11-27 2022-06-02 한국과학기술원 다중파일 트랜잭션을 위한 커밋 블럭 구조 및 장치

Also Published As

Publication number Publication date
JP5386111B2 (ja) 2014-01-15

Similar Documents

Publication Publication Date Title
JP5386111B2 (ja) ファイルシステムの記録方法
JP6708929B2 (ja) ストレージ制御装置、ストレージシステムおよびストレージ制御プログラム
US7640412B2 (en) Techniques for improving the reliability of file systems
KR101247006B1 (ko) 데이터 보안을 위한 비휘발성 디스크 캐시
US7107486B2 (en) Restore method for backup
EP1739535B1 (en) File system storing transaction records in flash-like media
TWI540432B (zh) Method and apparatus for collapsing virtual disk mirrors
US9864529B1 (en) Host compatibility for host managed storage media
US20070043924A1 (en) Method for controlling memory card and method for controlling nonvolatile semiconductor memory
US9996557B2 (en) Database storage system based on optical disk and method using the system
KR100317691B1 (ko) 로그 구조화 목표 저장장치를 사전에 구성하여 볼륨을 효율적으로 복사하는 방법 및 장치
KR101369813B1 (ko) 광 디스크 저장 시스템에 저장된 미디어에의 액세스, 압축 및 추적
JP2009520279A (ja) 永久記憶装置
US10114576B2 (en) Storage device metadata synchronization
US8019953B2 (en) Method for providing atomicity for host write input/outputs (I/Os) in a continuous data protection (CDP)-enabled volume using intent log
CN104156175B (zh) 一种虚拟磁盘容量平滑拓展方法
US9235352B2 (en) Datastore for non-overwriting storage devices
US20140089263A1 (en) File recording apparatus, file system management method, and changer drive
US7865472B1 (en) Methods and systems for restoring file systems
JP2007128448A (ja) ファイルシステム及びファイル情報処理方法
JP4741976B2 (ja) ディスクアレイ装置およびデータ管理方法
JP2006323462A (ja) ファイルコピー装置およびファイルコピー方法
KR100775141B1 (ko) 저널링이 적용된 fat 파일 시스템의 구현 방법
US20080140729A1 (en) Method for Changing Operation on a Storage Medium from a Current File System to a New or Updated File System
JP2014059760A (ja) ストレージ装置、ストレージ装置の制御方法、及びストレージ装置の制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110309

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20110309

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20121206

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20121214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130322

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130625

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130905

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20130912

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: 20131001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131007

R150 Certificate of patent or registration of utility model

Ref document number: 5386111

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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