mongodb - Exceeded memory limit for $group
PHPz
PHPz 2017-05-02 09:21:28
0
1
1079

Exceeded memory limit for $group, but didn't allow external sort. Pass allowDiskUse:true to opt in

query_data_total = coll.aggregate([
    {"$match": {"order_date": {"$gte": start_date, "$lte": end_date},
                }},
    {"$group": {"_id": "$order_date",
                "gmv": {"$sum": "$price"}, "ticket_num": {"$sum": 1}, "order_num": {"$addToSet": "$order_id"}}
     }
])

使用aggregate聚合查询  但查询几天的数据的时候没有问题  当天数多了之后就报错 用的是pymongo
PHPz
PHPz

学习是最好的投资!

全員に返信(1)
某草草

$group にはメモリ制限があります。データ量が制限を超えており、操作に追加のディスクを使用できる仕様がないため、エラーが報告されます。
$group ステージには 100 メガバイトの RAM の制限があります。デフォルトでは、ステージがこの制限を超えると、$group はエラーを生成します。ただし、大規模なデータセットを処理できるようにするには、allowDiskUse オプションを true に設定して、$group 操作が一時ファイルに書き込むことができるようにします。db.collection.aggregate を参照してください。詳細については、() メソッドと集計コマンドを参照してください。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート