2016-12-08 9 views
0

私は、オンライン検索盗み、誰でもWrite-AheadでNO-FORCEを使用する理由を説明できますか?

FORCEまたはNO-FORCE次のようにFORCEが定義されているとおり:トランザクションのコミット前に、トランザクションのすべての更新をディスクに強制されるべきでは?

以外にも、私はそのすべてのログレコードが

そして、安定したストレージに書き込まれるまで、トランザクションがコミットとはみなされません

と言われたことはどのようにWAL FORCEのアプローチは異なっています?私はどちらの場合も、トランザクションをコミットすると、変更がディスクにフラッシュされなければならないと感じています....

答えて

1

WALを使用すると、ログに順次書き込むことができます。データベース全体のページに対する更新は、ログエントリに非同期で書き込むことができます。

強制アプローチでは、コミット操作と同期してバッファプール内のすべてのダーティページをディスクにフラッシュする必要があります。これははるかに高価な操作であり、スループットが制限されます。

基本的なトレードオフ:WALでのクラッシュ後の回復時間が長く、強制的に低いスループットです。

関連する問題