1

特定のアクションをアトミックに実行したいアプリケーションがあります。ただし、これらのアクションはリモート ストレージで発生しており、接続が切断されたり、アクションが失敗したりする可能性があります。

ACID プロパティを強制する方法に関する文献はたくさんあります (先行書き込みログ、ARIES など)。しかし、これらの一般的な実装はありますか?

基本的に私が探しているのは、いくつかのライブラリ/API/などです。ここで、ログ用に安定したストレージ (ローカル ハードディスクなど) を提供し、特定のアクションを (不安定なリモート ストレージで) 実行し、この架空のヘルパー コードで ACID ブックキーピングの大部分を処理することができます。

明らかに、特定のものをロールバックする独自のカスタムコードを提供する必要がありますが、ログの実行、ログのスキャンなどの高レベルを一般化して、いくつかのライブラリにラップできるようです。

そのようなものは存在しますか?

4

1 に答える 1

1

C# では、System.IO.Log名前空間にログ関連のヘルパーがあります。これは探しているものに近いかもしれませんが、単独での分離には直接役立ちません。LogRecordSequence を使用すると、その下にかなり洗練されたログ実装が得られます。

さらに、 sqliteはこれらすべてを行い、パブリック ドメインにあります。ストレージエンジンなどは多少分離可能だと思いますが、自分でバラバラにする必要があるでしょう。

于 2010-08-28T12:33:00.500 に答える