Pymongo明显慢于mongo shell?

时间:2016-02-01 20:58:10

标签: python mongodb shell pymongo

我对mongodb比较新,并且在pymongo中遇到了性能问题。我有一个50 GB(未压缩)20 GB(通过WiredTiger压缩)的集合,大约有3900万个文档。在索引字段上查询它会得到大约125,000个文档和150 MB未压缩的结果。当我在mongo shell中执行以下操作时,大约需要一秒钟。

var result = db.my_collection.find(my_query).toArray()

然而,当我在pymongo做同样的事情时,它需要超过7秒。

db = pymongo.MongoClient()['my_db']
result = list(db['my_collection'].find(my_query)) 

一些额外信息:

  • 我使用的是Ubuntu 14.04,python 2.7.6,pymongo 3.2和mongo 3.2。

  • 我认为我的pymongo配置为使用C,因为我安装了python-dev,pymongo.has_c()和bson.has_c()都显示为True。

  • 一切都在本地运行。

我发现很难相信pymongo比mongo shell慢7倍。我错过了什么?

0 个答案:

没有答案