1

3 つのドキュメントがあり、それらをトランザクションで更新したいというユースケースがあります。つまり、いずれかが失敗した場合、他のドキュメントもデータベースで更新されるべきではありません。オプションを探していましたが、JavaSDK で見つかりませんでした。この操作をトランザクションで実行できる方法はありますか。同時実行を処理するために CAS 値を使用しています。この操作を同時に処理する方法を教えてください。

Couchbase バージョン: 4.0 Java SDK: 2.1.6

どんな助けでも大歓迎です。

4

3 に答える 3

5

Couchbase は NoSQL データベースであり、従来の RDBMS の ACID プロパティとパフォーマンスおよびスケーラビリティの間にトレードオフがあります。

カウチベースが強制できる唯一の原子性は、単一のドキュメントのレベルです。

Couchbase を使用してトランザクション システムを実装する方法については、Web の周りに書かれている可能性がありますが、それは明らかに、設計上、すぐに使用できるものではありません。これは非常に複雑な試みであり、私はお勧めしません。

最初にドキュメントを別の方法でモデル化して、単一のドキュメントでミューテーションが発生するようにします (その後 CAS を使用できます)。

于 2016-02-02T14:01:29.803 に答える