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

集計クエリと$groupクエリを使用するときのメモリオーバーフローエラー

    いくつかのアイデア:

    最初の$projectは必要ありません クエリのステージ。また、{ "$toDate": "$originaltimestamp" }を含めることができます $group内 ステージの_id 、以下のように:

    "_id": { 
        "$dateToString": { 
            "format": "%Y-%m-%d", "date": { "$toDate": "$originaltimestamp" } 
        } 
    }
    

    $push: "$$ROOT"について -$$ROOTの代わりに 、最も必要な(または重要な)フィールドのみをキャプチャします。これは、メモリ使用量を減らすためです。例:

    "data": { 
        $push: { 
            "subscriber_id": "$subscriber_id",
            "type": "$type",
            // other required fields...
        } 
    }
    

    最後に、ある時点で一連の日付のクエリを制限することを検討できます。これには、さまざまな日付範囲に対してクエリを複数回実行する必要がありますが、全体的にはうまくいくと思います。たとえば、monthに一致する月 分野。そして、このmonth パフォーマンスのためにインデックスを付けることができます。これには、$matchを含める必要があります クエリの最初の段階(最初の段階)、例:

    { $match: { month: "202001" } }
    

    そして、これは2020年1月のデータをクエリします。




    1. リアルタイム統計:MySQL(/ Drizzle)またはMongoDB?

    2. MongoDBの配列から値を削除する3つの方法

    3. mongooseを使用して生のmongoDBコマンドを実行する方法は?

    4. 既知のフィールドセットを除くすべてのフィールドの設定を解除するにはどうすればよいですか?