3

たとえば、私のデータは {'abc':'def'} で、単一のキー値があります。

これ欲しい:

do something...//data has been changed to {'abc':'defghi'} or {'abc':'['def','ghi']'}

そして、私はnodejsでこのコードを使用しました:

                var tmp2 = {'userid:location:2013-01-02 15':['092030', '12122.11260E']};

            collection.insert(tmp2, {safe:true}, function (err, result) {
                var i = 0;
                var a = +new Date();
                while(i<300000){
                    tmp2['userid:location:2013-01-02 15'].push(i);
        collection.save(tmp2, function () { })      
                    i+=1;
                }
                var b = +new Date();
                console.log(b-a)
            });

保存 API は同じキーの値を置き換えることができるので、プッシュを使用して、既存のキーの値にデータを追加できます。

しかし、いくつかの問題があります:

  1. プッシュ操作のパフォーマンスが悪い。シングル セーブは 15000/s で実行できるが、プッシュを使用すると 1500/s になる。
  2. 2 つのクライアントがあり、どちらもデータを追加したい場合、後者は前のデータをカバーし、追加しません。この問題を解決するにはどうすればよいですか?API はありますか?</li>
4

1 に答える 1