Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PyMongo的MongoDB排序溢出_Mongodb_Sorting_Pymongo - Fatal编程技术网

使用PyMongo的MongoDB排序溢出

使用PyMongo的MongoDB排序溢出,mongodb,sorting,pymongo,Mongodb,Sorting,Pymongo,我有一个集合“doc”,其中包含一个名为“topic”的字段。它被初始化为-1,当我得到主题时,我用相应的主题(例如体育)更新字段。当我在PyMongo中进行查询时db[“doc”]。查找({“topic”:-1})。排序(“time”,PyMongo.DESCENDING)。批处理大小(批处理大小) 我明白了 数据库错误:getMore执行器错误:33554846字节的溢出排序阶段缓冲数据使用量超过33554432字节的内部限制 但是,当我在mongo shell上运行此查询时: db.doc

我有一个集合“doc”,其中包含一个名为“topic”的字段。它被初始化为-1,当我得到主题时,我用相应的主题(例如体育)更新字段。当我在PyMongo中进行查询时
db[“doc”]。查找({“topic”:-1})。排序(“time”,PyMongo.DESCENDING)。批处理大小(批处理大小)
我明白了

数据库错误:getMore执行器错误:33554846字节的溢出排序阶段缓冲数据使用量超过33554432字节的内部限制

但是,当我在mongo shell上运行此查询时:
db.doc.find({“topic”:-1}).sort({“time”:-1}).batchSize(10000)
,它可以正常工作。我有单索引-{time:-1},{topic:1}和复合索引-{topic:1,time:-1}(复合索引)。这种行为有什么原因吗?

db[“doc”]。查找({“topic”:-1})。排序(“time”,pymongo.DESCENDING)。批大小(batch\u size)这里的批大小是多少?很奇怪。你可以试着只选择10,并确保你得到的结果时间下降。