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

インデックスを追加した後でもmongodbgroupbyが遅い

    作成したクエリからわかるように、2.0でのこのタイプの集計では、Map/Reduceを実行する必要があります。 MongoDBのMap/Reduceには、SO 以前 でカバーされていたパフォーマンスペナルティがいくつかあります。 -基本的に、クラスター全体で並列化できない限り、Spidermonkeyを介してシングルスレッドのJavaScriptを実行することになります-迅速な提案ではありません。インデックスは選択的ではないため、実際には役に立ちません。インデックス全体と、場合によってはドキュメントをスキャンするだけです。

    2.2の差し迫ったリリース(これを書いている時点で現在rc1にあります)では、いくつかのオプションがあります。 集約フレームワーク 2.2で導入された(ネイティブであり、JSベースのMap / Reduceではありません)には、グループ演算子 これは、MongoDBでのこの種の操作を高速化するために特別に作成されました。

    2.2を試して、グループ化のパフォーマンスが向上するかどうかを確認することをお勧めします。次のようになると思います(注:テストされていません):

    db.alarm.aggregate(
        { $group : {
            _id : "$serverName",
            count : { $sum : 1 }
        }}
    );
    


    1. django-nonrelは管理者からリストフィールドを除外します

    2. MongoDBの個別のクエリをどのように説明しますか?

    3. マングースで動作しないIDによる更新

    4. スプリングサーバーはjedisクライアントを使用してredisに接続できません