0

我正在使用带有 pymongo 的 mongo2.4 的自由文本搜索。我想要的是获得包含一些文本的文档数量。在 mongo shell 中,增加限制是一个很好的转变,但是从 python 中它变得非常慢,因为必须发送所有文档。作为指示,与 mongo shell 相比,pymongo 中的查询要慢约 50 倍。

我使用类似这样的命令:

>>>res=db.command('text','mytable',search='eden',limit=100000)
>>>numfound = res['stats']['nfound']

但正如我所说,由于所有文件都返回,所以它真的很慢。是否有命令指定您不需要文档,只需要统计信息?所有可用选项的列表是什么?

谢谢,科林

4

1 回答 1

0

我找不到此功能的服务器票证 - 所以请将功能请求添加到:jira.mongodb.org,然后您将从核心服务器开发人员那里获得更新和反馈。

您可以在进行文本查询时进行投影,这样您就可以减少通过网络发送的数量 - 但仍会发送一些信息,例如:

db.mytable.runCommand( "text", { search: "eden", project: {_id: 0, b: 1}})
于 2013-04-15T16:13:56.833 回答