sql >> データベース >  >> NoSQL >> MongoDB

Mongoose.jsトランザクション

    複数のドキュメントタイプ(別々のコレクション)にまたがるトランザクションが本当に必要な場合、これを実現する手段は、実行するアクションを格納する単一のテーブルを使用することです。

    db.actions.insert(
    { actions: [{collection: 'players', _id: 'p1', update: {$set : {name : 'bob'} } },
                {collection: 'stories', _id: 's1', update: {$set : {location: 'library'} } }], completed: false }, callback);
    

    この挿入はアトミックであり、すべて一度に実行されます。次に、「actions」コレクション内のコマンドを実行して、コマンドを完了としてマークするか、コマンドを完了するときに削除して、すべて完了したときに元のコールバックを呼び出すことができます。これは、アクション処理ループがデータベースを更新する唯一のものである場合にのみ機能します。もちろん、マングースの使用をやめる必要がありますが、そうするのが早ければ早いほど、とにかく良くなります。



    1. redisストア128ビット番号

    2. 文中の単語を接頭辞で一致させる正規表現

    3. Node.jsはmongoskinで約束します

    4. MongoDB:ドキュメントが埋め込まれた効率的なスキーマ設計