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

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

学习是最好的投资!

reply all(1)
某草草

$group has a memory limit. Your data volume exceeds the limit and there is no specification to allow the use of additional disks for operations, so an error is reported.
The $group stage has a limit of 100 megabytes of RAM. By default, if the stage exceeds this limit , $group will produce an error. However, to allow for the handling of large datasets, set the allowDiskUse option to true to enable $group operations to write to temporary files.See db.collection.aggregate() method and the aggregate command for details.

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!