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

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

学习是最好的投资!

répondre à tous(1)
某草草

$group a une limite de mémoire. Votre volume de données dépasse la limite et il n'y a aucune spécification pour autoriser l'utilisation de disques supplémentaires pour les opérations, donc une erreur est signalée
L'étape $group a une limite de 100 mégaoctets de mémoire. RAM Par défaut, si l'étape dépasse cette limite, $group produira une erreur. Cependant, pour permettre la gestion d'ensembles de données volumineux, définissez l'option allowDiskUse sur true pour permettre aux opérations $group d'écrire dans des fichiers temporaires.Voir db. méthode collection.aggregate() et la commande Aggregate pour plus de détails.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal