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

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 단계의 메모리 제한은 100MB입니다. RAM 기본적으로 단계가 이 제한을 초과하면 $group에서 오류가 발생합니다. 그러나 대규모 데이터 세트를 처리하려면 $group 작업이 임시 파일에 쓸 수 있도록 허용하기 위해 AllowDiskUse 옵션을 설정합니다. db를 참조하세요. 자세한 내용은 collection.aggregate() 메소드 및 집계 명령을 참조하세요.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿