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

MongoDBとCouchDB(速度の最適化)

    ソケットとHTTP、fsyncとメモリ内の会話を繰り返すだけです。

    デフォルトでは、MongoDBは書き込み呼び出しで応答を返しません。データをソケットに書き込んで、それがDBにあり、使用可能であると想定するだけです。同時ロードでは、これがバックアップされる可能性があり、Mongoが本当にどれだけ速いかを知る良い方法はありません。 データが利用可能になると書き込みの応答を返すオプションの呼び出しを使用しない限り、です。

    Mongoの挿入パフォーマンスがCouchよりも高速ではないと言っているわけではありません。メモリへの挿入は、ディスクへのfsyncよりもはるかに高速です。ここでの大きな違いは、MongoDBとCouchDBの一貫性と耐久性に関する目標の違いです。しかし、Mongoをテストするために私が見たすべての「パフォーマンス」ツールは、デフォルトの書き込みAPIを使用しているため、ソケットにフラッシュできる速度をテストしている挿入パフォーマンスを実際にテストしているわけではありません。

    データがメモリ内にあるときにRedisとMemcachedが応答を返すのに、Mongoが応答しないことを認識できないため、MongoがRedisやmemcachedよりも高速であることを示すベンチマークをたくさん見てきました。モンゴは間違いなくそうではありません Redisよりも高速です:)



    1. SpringDataMongoリポジトリ::すべてのリポジトリの問題に共通の共有メソッド

    2. Django + Mongo+Dockerがpymongo.errors.ServerSelectionTimeoutErrorを取得しています

    3. DockerコンテナからRedisサーバーに接続できません

    4. PyMongo max_time_ms