共通ログファイルシステム


Common_Log_File_System

Common Log File System(CLFS)は、高性能のトランザクションログを構築するためのカーネルモードとユーザーモードの両方のアプリケーションにアクセスできる汎用のログサブシステムです。これはWindowsServer 2003 R2で導入され、後のWindowsオペレーティングシステムに含まれています。CLFSは、データロギングとイベントロギングの両方に使用できます。CLFSは、トランザクションをコミットする前にトランザクション状態の変更を格納するためにTxFおよびTxRによって使用されます。CLFSから作成されたバイナリログファイルは、統合されたWindowsツールでは表示できません。

概要
CLFSの役割は、他のトランザクションログシステムと同様に、アクションに必要な一連のステップを記録して、将来的に正確に再生してトランザクションをセカンダリストレージにコミットするか、必要に応じて元に戻すことができるようにすることです。CLFSは、最初にログレコードをメモリ内バッファにマーシャリングしてから、永続的な永続性のためにセカンダリストレージ(CLFS用語では安定したメディア)のログファイルに書き込みます。データが安定したメディアにフラッシュされるタイミングは組み込みのポリシーによって制御されますが、CLFSクライアントアプリケーションはそれをオーバーライドして強制的にフラッシュすることができます。CLFSを使用すると、カスタマイズ可能なログ形式、定義されたポリシーに従ったログの拡張と切り捨て、および複数のクライアントアプリケーションによる同時使用が可能になります。CLFSは、ファイルシステムのどこにでもログファイルを保存できます。
CLFSは、物理ストレージシステム固有のドライバーがCLFS APIにプラグインするためのデバイスドライバー インターフェイス(DDI)を定義します。CLFSドライバーは、ARIES回復アルゴリズムを実装します。他のアルゴリズムは、カスタムドライバーを使用してサポートできます。
CLFSは、専用ログと多重化ログの両方をサポートします。専用ログにはログレコードの単一ストリームが含まれますが、多重化ログには複数のストリームが含まれ、各ストリームは異なるアプリケーション用です。多重化されたログには複数のストリームがありますが、ログは単一のバッチで順番にストリームにフラッシュされます。CLFSは、事前に(ログが実際に生成される前に)一連のログ・レコードにスペースを割り当てて、ストレージ・スペースの不足が原因で操作が失敗しないようにすることができます。
CLFSストリームのログレコードは、最初にシステムメモリのバッファのログI / Oブロックに配置されます。定期的にブロックは安定したストレージデバイスにフラッシュされます。ストレージデバイスのログには、連続して割り当てられた一連のコンテナが含まれ、各コンテナには複数のログI / Oブロックが含まれます。新しいログレコードが現在のセットに追加されます。各レコードは、32ビットのシーケンス番号が増加するログシーケンス番号(LSN)によって識別されます。LSNおよびその他のメタデータは、レコードヘッダーに格納されます。LSNは、コンテナの識別子、レコードへのオフセット、およびレコードの識別子をエンコードします。この情報は、後でログレコードにアクセスするために使用されます。ただし、コンテナーIDは論理IDであるため、物理コンテナーにマップする必要がマッピングはCLFS自体によって行われます。

参考文献
^ 「共通ログファイルシステムの概要」。MSDN 。
^ 「CLFS安定したストレージ」。MSDN 。

外部リンク
共通ログファイルシステム(Windows SDK)
共通ログファイルシステム(Windows Driver Kit)
Vistaの共通ログファイルシステムによる高速で柔軟なロギング
 title=
「https://en.wikipedia.org/w/index.php?title=Common_Log_File_System&oldid=996285369」
から取得”